Hi guys,
I'm seeing a weird error in my site since upgrading to c2.0.2: my sessions
aren't working. For example:
<map:match pattern="list.html">
<map:act type="session-validator">
<map:parameter name="descriptor" value="context:///descriptors/user-login.xml"/>
<map:parameter name="validate" value="email"/>
<map:aggregate element="page">
<snip/>
</map:aggregate>
<map:transform src="stylesheets/page/page2html.xsl"/>
<map:serialize type="html"/>
</map:act>
<map:redirect-to uri="/login.html"/>
</map:match>
... does not seem to work, even though in the request I have:
REQUEST SESSION ID: B440D61213A0602456F2225255A93103
SESSION ATTRIBUTES:
PARAM: 'email' VALUE: '[EMAIL PROTECTED]'
PARAM: 'realname' VALUE: 'Andrew Savory'
Looking at sitemap log:
DEBUG (2002-03-27) 10:54.33:882 [sitemap.action.session-validator](/list.html)
Ajp13Processor[8009][0]/AbstractComplementaryConfigurableAction: Using cached
configuration for context:///descriptors/user-login.xml
DEBUG (2002-03-27) 10:54.33:884 [sitemap.action.session-validator](/list.html)
Ajp13Processor[8009][0]/SessionValidatorAction: Validating parameters as specified via
'validate' parameter
DEBUG (2002-03-27) 10:54.33:884 [sitemap.action.session-validator](/list.html)
Ajp13Processor[8009][0]/AbstractValidatorAction: Validating parameter: email
DEBUG (2002-03-27) 10:54.33:885 [sitemap.action.session-validator](/list.html)
Ajp13Processor[8009][0]/SessionValidatorAction: exception:
java.lang.NullPointerException
at
org.apache.cocoon.acting.AbstractValidatorAction.getDefault(AbstractValidatorAction.java:576)
at
org.apache.cocoon.acting.AbstractValidatorAction.validateString(AbstractValidatorAction.java:222)
at
org.apache.cocoon.acting.AbstractValidatorAction.validateParameter(AbstractValidatorAction.java:202)
at
org.apache.cocoon.acting.SessionValidatorAction.act(SessionValidatorAction.java:169)
at org.apache.cocoon.www.sitemap_xmap.matchN10557(sitemap_xmap.java:5843)
at org.apache.cocoon.www.sitemap_xmap.process(sitemap_xmap.java:2297)
at org.apache.cocoon.www.sitemap_xmap.process(sitemap_xmap.java:1871)
at org.apache.cocoon.sitemap.Handler.process(Handler.java:222)
at org.apache.cocoon.sitemap.Manager.invoke(Manager.java:179)
at org.apache.cocoon.sitemap.SitemapManager.process(SitemapManager.java:154)
at org.apache.cocoon.Cocoon.process(Cocoon.java:575)
at org.apache.cocoon.servlet.CocoonServlet.service(CocoonServlet.java:998)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:243)
at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:201)
at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2344)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:170)
at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:163)
at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.ajp.tomcat4.Ajp13Processor.process(Ajp13Processor.java:371)
at org.apache.ajp.tomcat4.Ajp13Processor.run(Ajp13Processor.java:424)
at java.lang.Thread.run(Thread.java:484)
So looks like it doesn't like validating email:
<root>
<parameter name="email" type="string" min-len="7" nullable="no"
matches-regex="^[\d\w][\d\w\-_\.]*@([\d\w\-_]+\.)+\w\w\w?$"/>
<parameter name="password" type="string" min-len="5" nullable="no"/>
<constraint-set name="user-login">
<validate name="email"/>
<validate name="password"/>
</constraint-set>
</root>
This worked fine in c2.0.1. Any ideas what's going wrong?
Andrew.
--
Andrew Savory Email: [EMAIL PROTECTED]
Managing Director Tel: +44 (0)20 8553 6622
Luminas Internet Applications Fax: +44 (0)870 28 47489
This is not an official statement or order. Web: www.luminas.co.uk
---------------------------------------------------------------------
Please check that your question has not already been answered in the
FAQ before posting. <http://xml.apache.org/cocoon/faqs.html>
To unsubscribe, e-mail: <[EMAIL PROTECTED]>
For additional commands, e-mail: <[EMAIL PROTECTED]>