I've recently discovered an interesting discrepancy between JRun and iPlanet
regarding the use of the jsp:setProperty tag, and I was wondering if those
who have used other JSP engines could comment on how this works in their
experience.

I have a bean, DataCenter, with a method called "setIncludedPages" (note the
use of standard Java naming convention).

At the top of my JSP, I have the appropriate jsp:useBean tag for that bean,
and then a setProperty tag like this:

<jsp:setProperty name="dataCenter" property="includedpages"/>

Inside of a form whose action references the same JSP, I have something like
this:

<input type="checkbox" name="includedpages" value="1">

Note that both the property name and the input tag name are all lowercase,
which is the convention that I normally follow.

Under JRun, this works fine. On the recursive call to the JSP, it correctly
matches the parameter "includedpages" to the property "includedpages", and
then correctly makes the call to the method "setIncludedPages", even though
the capitalizations don't match.

Under iPlanet, however, that same JSP gets an exception from Jasper that
says "Can't find method for includedpages".

If I now edit the JSP and change the two tags in question like so
(capitalizing the "P"):

<jsp:setProperty name="dataCenter" property="includedPages"/>
 . . .
<input type="checkbox" name="includedPages" value="1">

It works under iPlanet (and, of course, continues to work under JRun). One
might think that iPlanet (or Jasper? I'm not really sure where the
responsibility for doing the name comparisons lies) is just doing a
case-sensitive compare, but it's not that simple. Notice that the property
and the input tag still have a lowercase "i", but the method name has an
uppercase "I".

I looked through the JSP spec, and didn't find anything that addresses this
fine point of how the various names should be compared, and/or who has the
responsibility for doing the compare.

So, has anyone else seen this weirdness? Anyone know anything definitive
about whether the JRun way or the iPlanet way is supposed to be correct?

--Jim Preston

===========================================================================
To unsubscribe: mailto [EMAIL PROTECTED] with body: "signoff JSP-INTEREST".
Some relevant FAQs on JSP/Servlets can be found at:

 http://java.sun.com/products/jsp/faq.html
 http://www.esperanto.org.nz/jsp/jspfaq.html
 http://www.jguru.com/jguru/faq/faqpage.jsp?name=JSP
 http://www.jguru.com/jguru/faq/faqpage.jsp?name=Servlets

Reply via email to