• Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

usebean without class attribute

 
himani jangid
Greenhorn
Posts: 18
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
i have a confusion in using usebean tag without class attribute,
as the example given in head first servlets <jsp:useBean id="person" type="foo.Person" scope="Page"/>

n it says that if the person bean must already exists then only it will work.

1. so my question is this that is it possibility that we can make this work because if we bean is already declared in page scope(then it must be declared in the same page ), n then if we use this line in same page it will give an exception of having duplicate bean.

2. n if we declare it in request scope then also in using it on different jsp page it gives exception "java.lang.InstantiationException:bean not found in the scope"

3. but if i declare it in session scope then it is working fine on the next jsp page.

so please solve my above mentioned questions
 
himani jangid
Greenhorn
Posts: 18
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
sorry, i got the answer of 2 and 3... i was doing some silly mistake but still not sure about question 1
 
Stefan Evans
Bartender
Pie
Posts: 1669
10
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Basically when you use the type attribute, and not the class attribute, it can never create the instance for you. The instance must exist at the time of evaluating the jsp:useBean tag.
The only way to make <jsp:useBean id="person" type="foo.Person" scope="Page"/> work is to have scriptlet code on the same page setting that value into the pageContext attribute before the jsp:useBean statement is executed.






 
Bear Bibeault
Author and ninkuma
Marshal
Pie
Posts: 64618
86
IntelliJ IDE Java jQuery Mac Mac OS X
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Or to have properly created the scoped variable in the page controller servlet. But in that case, the useBean is needless and useless if the page uses JSTL and EL.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic