Hi all,
I'm trying to create a new restlet and when I'm sending requests according to
it's URL pattern I receive a NullPointerException.
My restlets-contrib.xml looks something like this:
<?xml version="1.0"?>
<component name="comp_name">
<extension
target="org.nuxeo.ecm.platform.ui.web.restAPI.service.PluggableRestletService"
point="restlets">
<restletPlugin name="restletName"
class="RestletClass"
enabled="true" useSeam="true" useConversation="true">
<urlPatterns>
<urlPattern>
/{pattern}/restletName
</urlPattern>
</urlPatterns>
</restletPlugin>
</extension>
</component>
And the stack trace I get is:
java.lang.NullPointerException
null
org.jboss.seam.servlet.ServletSessionImpl.getAttribute(ServletSessionImpl.java:32)
org.jboss.seam.contexts.WebSessionContext.get(WebSessionContext.java:48)
org.jboss.seam.contexts.Contexts.lookupInStatefulContexts(Contexts.java:180)
org.jboss.seam.Component.getInstance(Component.java:1624)
org.nuxeo.ecm.platform.ui.web.util.SeamComponentCallHelper.getSeamComponentByName(SeamComponentCallHelper.java:60)
org.nuxeo.ecm.platform.ui.web.util.SeamComponentCallHelper.getSeamComponentByRef(SeamComponentCallHelper.java:77)
org.nuxeo.ecm.platform.ui.web.restAPI.SeamRestletFilter.doHandle(SeamRestletFilter.java:116)
org.restlet.Filter.handle(Filter.java:134)
org.restlet.Filter.doHandle(Filter.java:105)
org.restlet.Filter.handle(Filter.java:134)
org.restlet.Router.handle(Router.java:444)
com.noelios.restlet.ext.servlet.ServletConverter.service(ServletConverter.java:129)
org.nuxeo.ecm.platform.ui.web.restAPI.RestletServlet.service(RestletServlet.java:123)
javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
org.nuxeo.ecm.platform.ui.web.rest.FancyURLFilter.doFilter(FancyURLFilter.java:115)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
org.nuxeo.ecm.platform.ui.web.auth.NuxeoAuthenticationFilter.doFilter(NuxeoAuthenticationFilter.java:414)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
org.nuxeo.ecm.platform.ui.web.shield.NuxeoExceptionFilter.doFilter(NuxeoExceptionFilter.java:104)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
org.jboss.seam.servlet.SeamExceptionFilter.doFilter(SeamExceptionFilter.java:46)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
java.lang.Thread.run(Thread.java:595)
Does anyone have any idea?
Also in Nuxeo book is states that conversationnal restlets must be called with
a convesationId as parameter. The client I'm using to feed the restlet is a
standard java application. Do you have any idea how can I get a valid
conversation id and attach it to my requests?
Thanks in advance
--
Mihai-Alexandru DURBACA
Business & Decision
_______________________________________________
ECM mailing list
[email protected]
http://lists.nuxeo.com/mailman/listinfo/ecm