Jeroen, Thanks; that's a sensible patch. I've fixed the behavior in the current archive.
Shawn On Thu, 20 Dec 2001, Vianen, Jeroen van wrote: > Hi, > > I tried to use the EA3 release of the JSTL standard tag library in Resin > 2.0.4. > > My JSP more or less looks like this: > > <%@ taglib uri="http://java.sun.com/jstl/ea/core" prefix="c" %> > <%@ taglib uri="http://java.sun.com/jstl/ea/xml" prefix="x" %> > > <c:import url="http://localhost/path/to/file.xml" var="xml"/> > <x:parse source="$xml" var="doc" /> > <x:forEach select="$doc/tic_stream/tic_bericht"> > <x:expr select="Weg" /> > ... and some more XPath expressions > </x:forEach> > > > I was unable to get this to work due to the following exception: > > TypeError: Cannot convert null to an object. > at org.mozilla.javascript.NativeGlobal.constructError(Unknown > Source) > at org.mozilla.javascript.NativeGlobal.constructError(Unknown > Source) > at org.mozilla.javascript.NativeGlobal.typeError0(Unknown Source) > at org.mozilla.javascript.ScriptRuntime.toObject(Unknown Source) > at org.mozilla.javascript.Context.toObject(Unknown Source) > at > org.apache.taglibs.standard.lang.javascript.JavascriptExpressionEvaluator.pu > tAttributesInScope(JavascriptExpressionEvaluator.java:159) > at > org.apache.taglibs.standard.lang.javascript.JavascriptExpressionEvaluator.ev > aluate(JavascriptExpressionEvaluator.java:104) > at > org.apache.taglibs.standard.lang.support.ExpressionEvaluatorManager.evaluate > (ExpressionEvaluatorManager.java:200) > at > org.apache.taglibs.standard.tag.el.core.ExpressionUtil.evalNotNull(Expressio > nUtil.java:85) > at > org.apache.taglibs.standard.tag.el.core.ImportTag.evaluateExpressions(Import > Tag.java:150) > at > org.apache.taglibs.standard.tag.el.core.ImportTag.doStartTag(ImportTag.java: > 101) > at _traffic2__jsp._jspService(/pda/traffic2.jsp:19) > at com.caucho.jsp.JavaPage.service(JavaPage.java:74) > at com.caucho.jsp.Page.subservice(Page.java:485) > at > com.caucho.server.http.FilterChainPage.doFilter(FilterChainPage.java:176) > at com.caucho.server.http.Invocation.service(Invocation.java:278) > at > com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:129) > at > com.caucho.server.http.ServletServer.serviceTop(ServletServer.java:847) > at > com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:213) > at > com.caucho.server.http.HttpRequest.handleConnection(HttpRequest.java:158) > at com.caucho.server.TcpConnection.run(TcpConnection.java:140) > at java.lang.Thread.run(Thread.java:484) > > > It turned out that a null pointer was stored somewhere in the JavaScript > scope for the (null) attribute "caucho.authenticator", which is a built-in > Resin attribute. > > Below is a patch for > .../standard/src/org/apache/taglibs/standard/lang/javascript/JavascriptExpre > ssionEvaluator.java that fixed this bug for me. I don't know whether this is > the correct fix, but at least I was able to have my JSP working as I > expected. > > > --- JavascriptExpressionEvaluator.java.orig Thu Dec 20 15:48:57 2001 > +++ JavascriptExpressionEvaluator.java Thu Dec 20 15:57:09 2001 > @@ -156,7 +156,9 @@ > while (attributes !=null && attributes.hasMoreElements()) { > attribute = (String)attributes.nextElement(); > value = pageContext.getAttribute(attribute, scope); > - rhinoScope.put(attribute, rhinoScope, > rhinoContext.toObject(value, rhinoScope)); > + if (value != null) { > + rhinoScope.put(attribute, rhinoScope, > rhinoContext.toObject(value, rhinoScope)); > + } > } > } > > @@ -174,7 +176,9 @@ > while (attributes !=null && attributes.hasMoreElements()) { > attribute = (String)attributes.nextElement(); > value = (pageContext.getRequest()).getParameter(attribute); > - rhinoScope.put(attribute, rhinoScope, > rhinoContext.toObject(value, rhinoScope)); > + if (value != null) { > + rhinoScope.put(attribute, rhinoScope, > rhinoContext.toObject(value, rhinoScope)); > + } > } > } > } > > > Please review, > > > Jeroen > > -- > To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> > For additional commands, e-mail: <mailto:[EMAIL PROTECTED]> > -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
