You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by To...@aol.com on 2003/06/12 15:49:10 UTC
NewBie Q: can't find bean
Hi to Everyone,
I am trying to use the <logic:iterator></logic:iterator> tag in my JSP to
iterate a vector object which is supposed to be delivered by a bean, called
Books, and I do repeatedly get the following exception :
[
org.apache.jasper.JasperException: Cannot find bean Books in any scope
at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:248)
at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:260)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
------------
------------
root cause
javax.servlet.ServletException: Cannot find bean Books in any scope
at
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:530)
at org.apache.jsp.tfp_techbooks_jsp._jspService(Books_jsp.java:407)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:137)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:204)
at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
-----------
-------
]
Here is a snippet from my Action class, BookAction :
----------
if (action == null) {
return (mapping.findForward("techbooks"));
}
newVector = new Vector(newConnClass.getISBN());
this.setISBN(newVector);
request.setAttribute("Books", newVector);
return (mapping.findForward("techbooks"));
}
struts-config.xml:
------
------
<action-mappings>
<action path="/Books.jsp"
type="com.myBook.BookAction"
scope="request"
input="/Books.jsp">
<forward name="techbooks" path="/Books.jsp"/>
</action>
</action-mappings>
Books.jsp:
-----
-----
<table width="420" border="1" cellpadding="0" cellspacing="0" valign="top">
<tr><logic:iterate id="myIsbn" name="Books">
<td>
<bean:write name="myIsbn" property="EnglishISBN" />
</td>
</logic:iterate>
</tr>
</table>
-----
----
Where could I be going wrong ?
Any help/suggestions will be much appreciated.
Bob
RE: NewBie Q: can't find bean
Posted by Marc BEGUIGNEAU <ma...@yahoo.fr>.
Hi,
I haved problem with Vector, a better way could be
using ArrayList.
To iterate a list (displaying a search result for
example), I make an ArrayList of bean, that I take in
the request scope. Then in my JSP page, I use the
<logic:iterate... tag for displaying my result.
So let's have a look to a cut of my code:
The bean Film:
<code>
public class Film {
protected int id_film;
protected String titre;
public String getTitre() {
return this.titre;
}
public void setTitre(String titre) {
this.titre = titre;
}
public int getId_film() {
return this.id_film;
}
public void setId_film(int id_film) {
this.id_film = id_film;
}
}
</code>
As you see, it's a simple JavaBean wich is an image of
the table in my db.
In my action class:
<code>
ArrayList listfilm = new ArrayList();
Film film = null;
.... (what you have to do to obtain a ResultSet)
while(searchResult.next()) {
film = new Film();
film.setId_film(searchResult.getInt("ID_FILM"));
film.setTitre(searchResult.getString("TITRE"));
listfilm.add(film);
}
...
request.setAttribute("listingfilm", listfilm);
</code>
I have cut a part of a code, but what you have seen is
the necessary to have an ArrayList ( of bean in the
request scope.
In my JSP page:
<code>
<table border=0>
<logic:iterate id="film" name="listingfilm"
scope="request">
<tr>
<td align="center">
<bean:write name="film" property="id_film"
filter="true" /> </a>
<td>
<bean:write name="film" property="titre"
filter="true" />
</td>
</tr>
</logic:iterate>
</table>
</code>
It's another solotion without Vector, but it's work
fine!
As you want...
Regards
Marc
--- Mike Jasnowski <mj...@bea.com> a écrit : > Are
you looking in the correct scope with the
> iterate tag?
>
> -----Original Message-----
> From: TopBid987654321@aol.com
> [mailto:TopBid987654321@aol.com]
> Sent: Thursday, June 12, 2003 9:49 AM
> To: struts-user@jakarta.apache.org
> Subject: NewBie Q: <logic:iterator></logic:iterator>
> can't find bean
>
>
> Hi to Everyone,
>
> I am trying to use the
> <logic:iterator></logic:iterator> tag in my JSP to
> iterate a vector object which is supposed to be
> delivered by a bean, called
> Books, and I do repeatedly get the following
> exception :
> [
> org.apache.jasper.JasperException: Cannot find bean
> Books in any scope
> at
>
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:2
> 48)
> at
>
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
> at
>
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
> at
>
javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> at
>
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
> FilterChain.java:247)
> at
>
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
> ain.java:193)
> at
>
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
> va:260)
> at
>
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> eNext(StandardPipeline.java:643)
> at
>
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
> ------------
> ------------
>
> root cause
>
> javax.servlet.ServletException: Cannot find bean
> Books in any scope
> at
>
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImp
> l.java:530)
> at
>
org.apache.jsp.tfp_techbooks_jsp._jspService(Books_jsp.java:407)
> at
>
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:137)
> at
>
javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> at
>
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:2
> 04)
> at
>
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
> -----------
> -------
>
> ]
>
> Here is a snippet from my Action class, BookAction :
> ----------
>
> if (action == null) {
> return
> (mapping.findForward("techbooks"));
> }
>
>
> newVector = new
> Vector(newConnClass.getISBN());
> this.setISBN(newVector);
>
> request.setAttribute("Books", newVector);
>
>
> return (mapping.findForward("techbooks"));
> }
>
> struts-config.xml:
>
> ------
> ------
> <action-mappings>
>
> <action path="/Books.jsp"
> type="com.myBook.BookAction"
> scope="request"
> input="/Books.jsp">
> <forward name="techbooks"
> path="/Books.jsp"/>
> </action>
>
>
> </action-mappings>
>
> Books.jsp:
> -----
> -----
> <table width="420" border="1" cellpadding="0"
> cellspacing="0" valign="top">
> <tr><logic:iterate id="myIsbn" name="Books">
> <td>
> <bean:write name="myIsbn"
> property="EnglishISBN" />
> </td>
> </logic:iterate>
> </tr>
> </table>
> -----
> ----
>
> Where could I be going wrong ?
>
> Any help/suggestions will be much appreciated.
>
> Bob
>
>
>
---------------------------------------------------------------------
> To unsubscribe, e-mail:
> struts-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail:
> struts-user-help@jakarta.apache.org
>
___________________________________________________________
Do You Yahoo!? -- Une adresse @yahoo.fr gratuite et en français !
Yahoo! Mail : http://fr.mail.yahoo.com
---------------------------------------------------------------------
To unsubscribe, e-mail: struts-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: struts-user-help@jakarta.apache.org
RE: NewBie Q: can't find bean
Posted by Mike Jasnowski <mj...@bea.com>.
Are you looking in the correct scope with the iterate tag?
-----Original Message-----
From: TopBid987654321@aol.com [mailto:TopBid987654321@aol.com]
Sent: Thursday, June 12, 2003 9:49 AM
To: struts-user@jakarta.apache.org
Subject: NewBie Q: <logic:iterator></logic:iterator> can't find bean
Hi to Everyone,
I am trying to use the <logic:iterator></logic:iterator> tag in my JSP to
iterate a vector object which is supposed to be delivered by a bean, called
Books, and I do repeatedly get the following exception :
[
org.apache.jasper.JasperException: Cannot find bean Books in any scope
at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:2
48)
at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
FilterChain.java:247)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
ain.java:193)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
va:260)
at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:643)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
------------
------------
root cause
javax.servlet.ServletException: Cannot find bean Books in any scope
at
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImp
l.java:530)
at org.apache.jsp.tfp_techbooks_jsp._jspService(Books_jsp.java:407)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:137)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:2
04)
at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
-----------
-------
]
Here is a snippet from my Action class, BookAction :
----------
if (action == null) {
return (mapping.findForward("techbooks"));
}
newVector = new Vector(newConnClass.getISBN());
this.setISBN(newVector);
request.setAttribute("Books", newVector);
return (mapping.findForward("techbooks"));
}
struts-config.xml:
------
------
<action-mappings>
<action path="/Books.jsp"
type="com.myBook.BookAction"
scope="request"
input="/Books.jsp">
<forward name="techbooks" path="/Books.jsp"/>
</action>
</action-mappings>
Books.jsp:
-----
-----
<table width="420" border="1" cellpadding="0" cellspacing="0" valign="top">
<tr><logic:iterate id="myIsbn" name="Books">
<td>
<bean:write name="myIsbn" property="EnglishISBN" />
</td>
</logic:iterate>
</tr>
</table>
-----
----
Where could I be going wrong ?
Any help/suggestions will be much appreciated.
Bob
---------------------------------------------------------------------
To unsubscribe, e-mail: struts-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: struts-user-help@jakarta.apache.org