[
http://jira.codehaus.org/browse/XFIRE-448?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_94853
]
Daniel Tremblay commented on XFIRE-448:
---------------------------------------
See also issue 958, with patch.
> NPE while writing out an EnumType
> ---------------------------------
>
> Key: XFIRE-448
> URL: http://jira.codehaus.org/browse/XFIRE-448
> Project: XFire
> Issue Type: Bug
> Components: Aegis Module
> Affects Versions: 1.1
> Environment: Spring framework 1.2.6
> Reporter: Igor Stroh
> Assignee: Christoph Sturm
>
> An enum is exported using the default ObjectServiceFactory
> (xfire.serviceFactory bean) in a spring environment,
> here's the enum itself:
> {{
> public enum MailFlag {
> ANSWERED,
> DRAFT,
> RECENT,
> IMPORTANT,
> SEEN;
> }
> }}
> the generated WSDL looks like this:
> {{
> [...]
> <xsd:simpleType name="MailFlag">
> <xsd:restriction base="xsd:string">
> <xsd:enumeration value="ANSWERED" />
> <xsd:enumeration value="DRAFT" />
> <xsd:enumeration value="RECENT" />
> <xsd:enumeration value="IMPORTANT" />
> <xsd:enumeration value="SEEN" />
> </xsd:restriction>
> </xsd:simpleType>
> [...]
> }}
> Now when an object is created where such a MailFlag is used as property, I
> get a NPE:
> {{
> 2006-06-12 17:53:48,595 DEBUG [org.codehaus.xfire.transport.DefaultEndpoint]
> - Fault occurred!
> org.codehaus.xfire.fault.XFireFault: Couldn't send message.
> org.codehaus.xfire.XFireException: Couldn't send message.
> at
> org.codehaus.xfire.transport.http.HttpChannel.send(HttpChannel.java:71)
> at
> org.codehaus.xfire.handler.OutMessageSender.invoke(OutMessageSender.java:25)
> at
> org.codehaus.xfire.handler.HandlerPipeline.invoke(HandlerPipeline.java:97)
> at
> org.codehaus.xfire.service.binding.ServiceInvocationHandler.sendMessage(ServiceInvocationHandler.java:117)
> at
> org.codehaus.xfire.service.binding.ServiceInvocationHandler.invoke(ServiceInvocationHandler.java:70)
> at
> org.codehaus.xfire.handler.HandlerPipeline.invoke(HandlerPipeline.java:97)
> at
> org.codehaus.xfire.transport.DefaultEndpoint.onReceive(DefaultEndpoint.java:57)
> at
> org.codehaus.xfire.transport.AbstractChannel.receive(AbstractChannel.java:38)
> at
> org.codehaus.xfire.transport.http.XFireServletController.invoke(XFireServletController.java:240)
> at
> org.codehaus.xfire.transport.http.XFireServletController.doService(XFireServletController.java:109)
> at
> org.codehaus.xfire.spring.remoting.XFireServletControllerAdapter.handleRequest(XFireServletControllerAdapter.java:52)
> at
> org.codehaus.xfire.spring.remoting.XFireExporter.handleRequest(XFireExporter.java:44)
> at
> org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:44)
> at
> org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:684)
> at
> org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:625)
> at
> org.springframework.web.servlet.FrameworkServlet.serviceWrapper(FrameworkServlet.java:386)
> at
> org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:355)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
> at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
> at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
> at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
> at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
> at
> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:667)
> at
> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
> at
> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
> at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
> at java.lang.Thread.run(Thread.java:595)
> Caused by: java.lang.NullPointerException
> at
> org.codehaus.xfire.aegis.type.java5.EnumType.writeObject(EnumType.java:30)
> at
> org.codehaus.xfire.aegis.type.basic.ArrayType.writeValue(ArrayType.java:236)
> at
> org.codehaus.xfire.aegis.type.basic.ArrayType.writeObject(ArrayType.java:165)
> at
> org.codehaus.xfire.aegis.type.basic.BeanType.writeObject(BeanType.java:202)
> at
> org.codehaus.xfire.aegis.type.basic.BeanType.writeObject(BeanType.java:202)
> at
> org.codehaus.xfire.aegis.type.basic.ArrayType.writeValue(ArrayType.java:236)
> at
> org.codehaus.xfire.aegis.type.basic.ArrayType.writeObject(ArrayType.java:165)
> at
> org.codehaus.xfire.aegis.AegisBindingProvider.writeParameter(AegisBindingProvider.java:175)
> at
> org.codehaus.xfire.service.binding.WrappedBinding.writeMessage(WrappedBinding.java:83)
> at
> org.codehaus.xfire.soap.SoapSerializer.writeMessage(SoapSerializer.java:81)
> at
> org.codehaus.xfire.transport.http.HttpChannel.send(HttpChannel.java:59)
> ... 32 more
> }}
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe from this list please visit:
http://xircles.codehaus.org/manage_email