You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Christopher Go <ch...@msmedia.com> on 2000/07/26 18:50:56 UTC

vs. <% out.println(bean.getID()) %>

Hello,

Been trying to figure this out for a week now.  Running Apache/Tomcat on Solaris.
This app is primarily being developed using a servlet serving out JSP pages based on a command parameter passed into the servlet.  The servlet then creates the bean (or beans) then returns them to the JSP page.

Ideally, I would like to use <jsp:getProperty id="beanName" property="beanID"> on single beans OR an array (or vector) of beans that is returned by the servlet using the request.setAttribute method.  This method works on single beans (meaning if there is only one bean being returned).  This method (<jsp:getProperty), however, does not work when I try to loop through an array of beans.  As a temporary workaround, I am using 
<% out.println(beanName.getBeanID()) %>
to achieve the same effect and it works.  In the same loop, I try to use the <jsp:getProperty> tag but it keeps initiating a "blank" bean.  If I change the <jsp:getProperty> tag to try to grab a non-existent property, it bombs so I know that it is working properly but it loads up a "blank" bean (meaning the getBeanID, etc. is blank or whatever is in the constructor).  

My code looks like this:
============================
<jsp:useBean id="bug" class="com.msmedia.extranet.BugBean" />

<ul>
<%
    int count = 0;
    BeanName[] newBeans = (BeanName[])request.getAttribute("list");  
    for (int i = 0; i < newBeans .length; i ++) {
    newBean = newBeans[i];
%>
    <li><jsp:getProperty id="newBean" property="beanID"> | <% out.println(newBean.getBeanID()); %>
<%
    }
%>
</ul>
============================

The <jsp:getProperty> returns me a zero (0) -> this is what the constructor does (creates a bean with BeanID = 0) BUT, in the same loop, using the same method within the bean, the <% out.print %> returns me the proper data I want, which is the beanID.  Again, the <jsp:getProperty> tag works on single beans on the same application/context/server but it does not work on arrays or vectors.

============================

Any ideas on why this is happening?

Thanks,
Chris



_________________________________________________
Christopher Go <ch...@msmedia.com> 
Vice President, Operations
Mindshare Media Corporation <http://www.msmedia.com>
Work: 949.717.6464  |  Mobile:  714.915.3857