Bug 17321

Summary: NPE from <x:out> with invalid select value
Product: Taglibs Reporter: Hans Bergsten <hans>
Component: Standard TaglibAssignee: Tomcat Developers Mailing List <dev>
Status: RESOLVED FIXED    
Severity: normal    
Priority: P3    
Version: unspecified   
Target Milestone: ---   
Hardware: All   
OS: All   

Description Hans Bergsten 2003-02-23 20:05:46 UTC
The <x:out> action in 1.0.3 (and previous versions) throws an NPE if you give it
an invalid "select" attribute value, e.g.

  <x:out select="foo" />

java.lang.NullPointerException
	at org.jaxen.dom.DocumentNavigator$1.getFirstNode(DocumentNavigator.java:175)
	at org.jaxen.dom.DocumentNavigator$NodeIterator.(DocumentNavigator.java:823)
	at org.jaxen.dom.DocumentNavigator$1.(DocumentNavigator.java:172)
	at org.jaxen.dom.DocumentNavigator.getChildAxisIterator(DocumentNavigator.java:172)
	at org.jaxen.expr.iter.IterableChildAxis.iterator(IterableChildAxis.java:82)
	at org.jaxen.expr.DefaultStep.axisIterator(DefaultStep.java:139)
	at org.jaxen.expr.DefaultLocationPath.evaluate(DefaultLocationPath.java:188)
	at org.jaxen.expr.DefaultXPathExpr.asList(DefaultXPathExpr.java:107)
	at org.jaxen.BaseXPath.selectNodesForContext(BaseXPath.java:716)
	at org.jaxen.BaseXPath.selectSingleNodeForContext(BaseXPath.java:739)
	at org.jaxen.BaseXPath.stringValueOf(BaseXPath.java:281)
	at org.apache.taglibs.standard.tag.common.xml.XPathUtil.valueOf(XPathUtil.java:239)
	at
org.apache.taglibs.standard.tag.common.xml.ExprSupport.doStartTag(ExprSupport.java:102)
	at org.apache.taglibs.standard.tag.el.xml.ExprTag.doStartTag(ExprTag.java:103)
[...]
Comment 1 Pierre Delisle 2003-02-26 22:07:56 UTC
This requires some clarification to the spec to clearly state
the default context node associated with XPath expressions.

The expert group has approved this clarification and this will
be fixed in JSTL's upcoming maintenance release.
Comment 2 Pierre Delisle 2003-08-04 18:36:11 UTC
Fixed in 1.1.