You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by MK Tan <mk...@gmail.com> on 2007/09/07 09:46:22 UTC
Re: Struts 2 - incompatibility between JSTL xml taglibs and Struts 2 ?????
look like struts taglibs cause the NPE. unknown property name?
On 9/7/07, Riccardo Mollame <rm...@yahoo.it> wrote:
>
> Could any one explain why this piece of code works
> fine:
>
> <%@ taglib prefix="c"
> uri="http://java.sun.com/jsp/jstl/core"%>
> <%@ taglib prefix="x"
> uri="http://java.sun.com/jsp/jstl/xml"%>
> <%@ taglib prefix="s" uri="/struts-tags"%>
> <c:import url="/WEB-INF/classes/PageList.xml"
> var="pagelist" scope="application" />
> <x:parse var="document" doc="${pagelist}"/>
> <html>
> <head>
> </head>
> <body>
> <br>
> <h1><x:out
> select="$document/pages/page[@code='P001']/title"/></h1>
> </body>
> </html>
>
> while this one:
>
> <%@ taglib prefix="c"
> uri="http://java.sun.com/jsp/jstl/core"%>
> <%@ taglib prefix="x"
> uri="http://java.sun.com/jsp/jstl/xml"%>
> <%@ taglib prefix="s" uri="/struts-tags"%>
> <c:import url="/WEB-INF/classes/PageList.xml"
> var="pagelist" scope="application" />
> <x:parse var="document" doc="${pagelist}"/>
> <html>
> <head>
> </head>
> <body>
> <br>
> <center>
> <!-- BEGIN of new code -->
> <s:form action="userauth">
> <s:textfield label="User Name" key="username"/>
> <s:password label="Password" key="password"/>
> <s:submit/>
> </s:form>
> <!-- END of new code -->
> </center>
> </body>
> </html>
>
> gives the following error:
>
> XXXX-web-main: Servlet error
> java.lang.NullPointerException
> at
> org.apache.struts2.views.jsp.TagUtils.getStack(TagUtils.java:58)
>
> at
> org.apache.struts2.views.jsp.StrutsBodyTagSupport.getStack(
> StrutsBodyTagSupport.java:52)
>
> at
> org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(
> ComponentTagSupport.java:49)
>
> at _jsps._Login._jspService(_Login.java:103)
> at com.orionserver[Oracle Containers for J2EE 10g
> (10.1.3.3.0)
> ].http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
>
> at
> oracle.jsp.runtimev2.JspPageTable.compileAndServe(JspPageTable.java:724)
>
> at
> oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:414)
>
> at
> oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:594)
>
> at
> oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:518)
>
> at
> javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
>
> at com.evermind[Oracle Containers for J2EE 10g
> (10.1.3.3.0)
> ].server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java
> :65)
> at
> org.apache.struts2.dispatcher.FilterDispatcher.doFilter(
> FilterDispatcher.java:413)
>
> at com.evermind[Oracle Containers for J2EE 10g
> (10.1.3.3.0)
> ].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher
> .java:623)
> at com.evermind[Oracle Containers for J2EE 10g
> (10.1.3.3.0)
>
> ].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher
> .java:370)
> at com.evermind[Oracle Containers for J2EE 10g
> (10.1.3.3.0)
> ].server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler
> .java:871)
> at com.evermind[Oracle Containers for J2EE 10g
> (10.1.3.3.0)
> ].server.http.HttpRequestHandler.processRequest(HttpRequestHandler
> .java:453)
> at com.evermind[Oracle Containers for J2EE 10g
> (10.1.3.3.0)
> ].server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler
> .java:221)
> at com.evermind[Oracle Containers for J2EE 10g
> (10.1.3.3.0)
> ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:122)
>
> at com.evermind[Oracle Containers for J2EE 10g
> (10.1.3.3.0)
> ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:111)
>
> at
> oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(
> ServerSocketReadHandler.java:260)
>
> at
> oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(
> ServerSocketAcceptHandler.java:239)
>
> at
> oracle.oc4j.network.ServerSocketAcceptHandler.access$700(
> ServerSocketAcceptHandler.java:34)
>
> at
> oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(
> ServerSocketAcceptHandler.java:880)
>
> at com.evermind[Oracle Containers for J2EE 10g
> (10.1.3.3.0)
>
> ].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor
> .java:303)
> at java.lang.Thread.run(Thread.java:595)
>
>
> I'm stuck. It has no explanation to me.
> Any help deeply appreciated.
> Thanks in advance.
>
> Ric
>
>
> ___________________________________
> L'email della prossima generazione? Puoi averla con la nuova Yahoo! Mail:
> http://it.docs.yahoo.com/nowyoucan.html
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
>
Re: Struts 2 - incompatibility between JSTL xml taglibs and Struts 2 ?????
Posted by Don Brown <do...@gmail.com>.
The Struts 2 tags can only go on pages where the request has passed
through a Struts 2 filter. That error indicates the Dispatcher
instance isn't on the correct ThreadLocal variable, and it should have
been placed there by the Struts ServletFilter.
Don
On 9/7/07, Riccardo Mollame <rm...@yahoo.it> wrote:
> Yes, struts taglibs are the problem.
> But if I make the opposite, i.e. excluding the x:tags,
> the code works as well, so I assume that Struts stuff
> is properly configured...
> I don't know what to think...
>
> Ric
>
> --- MK Tan <mk...@gmail.com> ha scritto:
>
> > look like struts taglibs cause the NPE. unknown
> > property name?
> >
> >
> > On 9/7/07, Riccardo Mollame <rm...@yahoo.it>
> > wrote:
> > >
> > > Could any one explain why this piece of code works
> > > fine:
> > >
> > > <%@ taglib prefix="c"
> > > uri="http://java.sun.com/jsp/jstl/core"%>
> > > <%@ taglib prefix="x"
> > > uri="http://java.sun.com/jsp/jstl/xml"%>
> > > <%@ taglib prefix="s" uri="/struts-tags"%>
> > > <c:import url="/WEB-INF/classes/PageList.xml"
> > > var="pagelist" scope="application" />
> > > <x:parse var="document" doc="${pagelist}"/>
> > > <html>
> > > <head>
> > > </head>
> > > <body>
> > > <br>
> > > <h1><x:out
> > >
> >
> select="$document/pages/page[@code='P001']/title"/></h1>
> > > </body>
> > > </html>
> > >
> > > while this one:
> > >
> > > <%@ taglib prefix="c"
> > > uri="http://java.sun.com/jsp/jstl/core"%>
> > > <%@ taglib prefix="x"
> > > uri="http://java.sun.com/jsp/jstl/xml"%>
> > > <%@ taglib prefix="s" uri="/struts-tags"%>
> > > <c:import url="/WEB-INF/classes/PageList.xml"
> > > var="pagelist" scope="application" />
> > > <x:parse var="document" doc="${pagelist}"/>
> > > <html>
> > > <head>
> > > </head>
> > > <body>
> > > <br>
> > > <center>
> > > <!-- BEGIN of new code -->
> > > <s:form action="userauth">
> > > <s:textfield label="User Name"
> > key="username"/>
> > > <s:password label="Password"
> > key="password"/>
> > > <s:submit/>
> > > </s:form>
> > > <!-- END of new code -->
> > > </center>
> > > </body>
> > > </html>
> > >
> > > gives the following error:
> > >
> > > XXXX-web-main: Servlet error
> > > java.lang.NullPointerException
> > > at
> > >
> >
> org.apache.struts2.views.jsp.TagUtils.getStack(TagUtils.java:58)
> > >
> > > at
> > >
> >
> org.apache.struts2.views.jsp.StrutsBodyTagSupport.getStack(
> > > StrutsBodyTagSupport.java:52)
> > >
> > > at
> > >
> >
> org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(
> > > ComponentTagSupport.java:49)
> > >
> > > at _jsps._Login._jspService(_Login.java:103)
> > > at com.orionserver[Oracle Containers for J2EE
> > 10g
> > > (10.1.3.3.0)
> > >
> >
> ].http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
> > >
> > > at
> > >
> >
> oracle.jsp.runtimev2.JspPageTable.compileAndServe(JspPageTable.java:724)
> > >
> > > at
> > >
> >
> oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:414)
> > >
> > > at
> > >
> >
> oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:594)
> > >
> > > at
> > >
> >
> oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:518)
> > >
> > > at
> > >
> >
> javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
> > >
> > > at com.evermind[Oracle Containers for J2EE 10g
> > > (10.1.3.3.0)
> > >
> >
> ].server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java
> > > :65)
> > > at
> > >
> >
> org.apache.struts2.dispatcher.FilterDispatcher.doFilter(
> > > FilterDispatcher.java:413)
> > >
> > > at com.evermind[Oracle Containers for J2EE 10g
> > > (10.1.3.3.0)
> > >
> >
> ].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher
> > > .java:623)
> > > at com.evermind[Oracle Containers for J2EE 10g
> > > (10.1.3.3.0)
> > >
> > >
> >
> ].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher
> > > .java:370)
> > > at com.evermind[Oracle Containers for J2EE 10g
> > > (10.1.3.3.0)
> > >
> >
> ].server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler
> > > .java:871)
> > > at com.evermind[Oracle Containers for J2EE 10g
> > > (10.1.3.3.0)
> > >
> >
> ].server.http.HttpRequestHandler.processRequest(HttpRequestHandler
> > > .java:453)
> > > at com.evermind[Oracle Containers for J2EE 10g
> > > (10.1.3.3.0)
> > >
> >
> ].server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler
> > > .java:221)
> > > at com.evermind[Oracle Containers for J2EE 10g
> > > (10.1.3.3.0)
> > >
> >
> ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:122)
> > >
> > > at com.evermind[Oracle Containers for J2EE 10g
> > > (10.1.3.3.0)
> > >
> >
> ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:111)
> > >
> > > at
> > >
> >
> oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(
> > > ServerSocketReadHandler.java:260)
> > >
> > > at
> > >
> >
> oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(
> > > ServerSocketAcceptHandler.java:239)
> > >
> > > at
> > >
> >
> oracle.oc4j.network.ServerSocketAcceptHandler.access$700(
> > > ServerSocketAcceptHandler.java:34)
> > >
> > > at
> > >
> >
> oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(
> > > ServerSocketAcceptHandler.java:880)
> > >
> > > at com.evermind[Oracle Containers for J2EE 10g
> > > (10.1.3.3.0)
> > >
> > >
> >
> ].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor
> > > .java:303)
> > > at java.lang.Thread.run(Thread.java:595)
> > >
> > >
> > > I'm stuck. It has no explanation to me.
> > > Any help deeply appreciated.
> > > Thanks in advance.
> > >
> > > Ric
> > >
> > >
> > > ___________________________________
> > > L'email della prossima generazione? Puoi averla
> > con la nuova Yahoo! Mail:
> > > http://it.docs.yahoo.com/nowyoucan.html
> > >
> > >
> >
> ---------------------------------------------------------------------
> > > To unsubscribe, e-mail:
> > user-unsubscribe@struts.apache.org
> > > For additional commands, e-mail:
> > user-help@struts.apache.org
> > >
> > >
> >
>
>
>
> ___________________________________
> L'email della prossima generazione? Puoi averla con la nuova Yahoo! Mail: http://it.docs.yahoo.com/nowyoucan.html
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: Struts 2 - incompatibility between JSTL xml taglibs and Struts 2 ?????
Posted by Riccardo Mollame <rm...@yahoo.it>.
Yes, struts taglibs are the problem.
But if I make the opposite, i.e. excluding the x:tags,
the code works as well, so I assume that Struts stuff
is properly configured...
I don't know what to think...
Ric
--- MK Tan <mk...@gmail.com> ha scritto:
> look like struts taglibs cause the NPE. unknown
> property name?
>
>
> On 9/7/07, Riccardo Mollame <rm...@yahoo.it>
> wrote:
> >
> > Could any one explain why this piece of code works
> > fine:
> >
> > <%@ taglib prefix="c"
> > uri="http://java.sun.com/jsp/jstl/core"%>
> > <%@ taglib prefix="x"
> > uri="http://java.sun.com/jsp/jstl/xml"%>
> > <%@ taglib prefix="s" uri="/struts-tags"%>
> > <c:import url="/WEB-INF/classes/PageList.xml"
> > var="pagelist" scope="application" />
> > <x:parse var="document" doc="${pagelist}"/>
> > <html>
> > <head>
> > </head>
> > <body>
> > <br>
> > <h1><x:out
> >
>
select="$document/pages/page[@code='P001']/title"/></h1>
> > </body>
> > </html>
> >
> > while this one:
> >
> > <%@ taglib prefix="c"
> > uri="http://java.sun.com/jsp/jstl/core"%>
> > <%@ taglib prefix="x"
> > uri="http://java.sun.com/jsp/jstl/xml"%>
> > <%@ taglib prefix="s" uri="/struts-tags"%>
> > <c:import url="/WEB-INF/classes/PageList.xml"
> > var="pagelist" scope="application" />
> > <x:parse var="document" doc="${pagelist}"/>
> > <html>
> > <head>
> > </head>
> > <body>
> > <br>
> > <center>
> > <!-- BEGIN of new code -->
> > <s:form action="userauth">
> > <s:textfield label="User Name"
> key="username"/>
> > <s:password label="Password"
> key="password"/>
> > <s:submit/>
> > </s:form>
> > <!-- END of new code -->
> > </center>
> > </body>
> > </html>
> >
> > gives the following error:
> >
> > XXXX-web-main: Servlet error
> > java.lang.NullPointerException
> > at
> >
>
org.apache.struts2.views.jsp.TagUtils.getStack(TagUtils.java:58)
> >
> > at
> >
>
org.apache.struts2.views.jsp.StrutsBodyTagSupport.getStack(
> > StrutsBodyTagSupport.java:52)
> >
> > at
> >
>
org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(
> > ComponentTagSupport.java:49)
> >
> > at _jsps._Login._jspService(_Login.java:103)
> > at com.orionserver[Oracle Containers for J2EE
> 10g
> > (10.1.3.3.0)
> >
>
].http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
> >
> > at
> >
>
oracle.jsp.runtimev2.JspPageTable.compileAndServe(JspPageTable.java:724)
> >
> > at
> >
>
oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:414)
> >
> > at
> >
>
oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:594)
> >
> > at
> >
>
oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:518)
> >
> > at
> >
>
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
> >
> > at com.evermind[Oracle Containers for J2EE 10g
> > (10.1.3.3.0)
> >
>
].server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java
> > :65)
> > at
> >
>
org.apache.struts2.dispatcher.FilterDispatcher.doFilter(
> > FilterDispatcher.java:413)
> >
> > at com.evermind[Oracle Containers for J2EE 10g
> > (10.1.3.3.0)
> >
>
].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher
> > .java:623)
> > at com.evermind[Oracle Containers for J2EE 10g
> > (10.1.3.3.0)
> >
> >
>
].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher
> > .java:370)
> > at com.evermind[Oracle Containers for J2EE 10g
> > (10.1.3.3.0)
> >
>
].server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler
> > .java:871)
> > at com.evermind[Oracle Containers for J2EE 10g
> > (10.1.3.3.0)
> >
>
].server.http.HttpRequestHandler.processRequest(HttpRequestHandler
> > .java:453)
> > at com.evermind[Oracle Containers for J2EE 10g
> > (10.1.3.3.0)
> >
>
].server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler
> > .java:221)
> > at com.evermind[Oracle Containers for J2EE 10g
> > (10.1.3.3.0)
> >
>
].server.http.HttpRequestHandler.run(HttpRequestHandler.java:122)
> >
> > at com.evermind[Oracle Containers for J2EE 10g
> > (10.1.3.3.0)
> >
>
].server.http.HttpRequestHandler.run(HttpRequestHandler.java:111)
> >
> > at
> >
>
oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(
> > ServerSocketReadHandler.java:260)
> >
> > at
> >
>
oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(
> > ServerSocketAcceptHandler.java:239)
> >
> > at
> >
>
oracle.oc4j.network.ServerSocketAcceptHandler.access$700(
> > ServerSocketAcceptHandler.java:34)
> >
> > at
> >
>
oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(
> > ServerSocketAcceptHandler.java:880)
> >
> > at com.evermind[Oracle Containers for J2EE 10g
> > (10.1.3.3.0)
> >
> >
>
].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor
> > .java:303)
> > at java.lang.Thread.run(Thread.java:595)
> >
> >
> > I'm stuck. It has no explanation to me.
> > Any help deeply appreciated.
> > Thanks in advance.
> >
> > Ric
> >
> >
> > ___________________________________
> > L'email della prossima generazione? Puoi averla
> con la nuova Yahoo! Mail:
> > http://it.docs.yahoo.com/nowyoucan.html
> >
> >
>
---------------------------------------------------------------------
> > To unsubscribe, e-mail:
> user-unsubscribe@struts.apache.org
> > For additional commands, e-mail:
> user-help@struts.apache.org
> >
> >
>
___________________________________
L'email della prossima generazione? Puoi averla con la nuova Yahoo! Mail: http://it.docs.yahoo.com/nowyoucan.html
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org