[
https://issues.apache.org/jira/browse/CXF-4183?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13232930#comment-13232930
]
Mina R Waheeb commented on CXF-4183:
------------------------------------
I found the problem its in class
"com.sun.xml.internal.stream.writers.XMLDOMWriterImpl" [1]. I use XMPP
transporter and trying to remove some XML overhead by skipping the OutputStream
stream and write the SOAP message to XMLStreamWriter using:
{code}
message.put(Document.class, doc);
message.setContent(XMLStreamWriter.class, StaxUtils.createXMLStreamWriter(new
DOMResult(doc)));
{code}
The woodstox was not visible to the classpath of the transporter classloader at
the runtime! after I added it everything working fine. My bad :)
[1]
http://www.grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/7-b147/com/sun/xml/internal/stream/writers/XMLDOMWriterImpl.java#XMLDOMWriterImpl
> SOAP Fault cause NullPointerException
> -------------------------------------
>
> Key: CXF-4183
> URL: https://issues.apache.org/jira/browse/CXF-4183
> Project: CXF
> Issue Type: Bug
> Components: Soap Binding
> Affects Versions: 2.5.2
> Environment: Openjdk version "1.7.0"
> OpenJDK Runtime Environment (build 1.7.0-root_2011_07_02_05_19-b00)
> OpenJDK Server VM (build 21.0-b17, mixed mode)
> FreeBSD localhost 9.0-CURRENT FreeBSD 9.0-CURRENT #8: Thu May 5 16:46:16 UTC
> 2011 root@localhost:/usr/obj/usr/src/sys/MINA i386
> CXF 2.5.2
> Reporter: Mina R Waheeb
> Labels: soap
>
> The below exception happens "sometimes" I tried to trace the code. it seems
> like the XMLStreamWriter doesn't have namespace context
> (StaxUtils.java:727) String decUri =
> writer.getNamespaceContext().getNamespaceURI(prefix);
> Mar 15, 2012 11:23:14 PM org.apache.cxf.phase.PhaseInterceptorChain
> doDefaultLogging
> INFO: Application
> {http://example.com/blackboard/kb/}Subscriber#{http://example.com/blackboard/kb/}push
> has thrown exception, unwinding now:
> com.example.kb.failure.FeedServiceException:
> net.organon.platform.channel.ChannelException: java.lang.NullPointerException
> Mar 15, 2012 11:23:14 PM
> org.apache.cxf.binding.soap.interceptor.Soap12FaultOutInterceptor$Soap12FaultOutInterceptorInternal
> handleMessage
> INFO: class
> org.apache.cxf.binding.soap.interceptor.Soap12FaultOutInterceptor$Soap12FaultOutInterceptorInternalapplication/soap+xml
> Mar 15, 2012 11:23:14 PM
> org.apache.cxf.binding.soap.interceptor.Soap12FaultOutInterceptor$Soap12FaultOutInterceptorInternal
> handleMessage
> WARNING: Error writing to XMLStreamWriter.
> {code}
> java.lang.NullPointerException
> at org.apache.cxf.staxutils.StaxUtils.writeElement(StaxUtils.java:727)
> at org.apache.cxf.staxutils.StaxUtils.writeElement(StaxUtils.java:693)
> at org.apache.cxf.staxutils.StaxUtils.writeNode(StaxUtils.java:808)
> at
> org.apache.cxf.binding.soap.interceptor.Soap12FaultOutInterceptor$Soap12FaultOutInterceptorInternal.handleMessage(Soap12FaultOutInterceptor.java:124)
> at
> org.apache.cxf.binding.soap.interceptor.Soap12FaultOutInterceptor$Soap12FaultOutInterceptorInternal.handleMessage(Soap12FaultOutInterceptor.java:56)
> at
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:263)
> at
> org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.java:113)
> at
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:323)
> at
> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:123)
> at
> net.organon.messaging.xmpp.soap.XMPPSOAPTransporter$1.run(XMPPSOAPTransporter.java:238)
> at java.security.AccessController.doPrivileged(Native Method)
> at javax.security.auth.Subject.doAs(Subject.java:415)
> at
> net.organon.security.identify.runtime.SSOSubject.doAs(SSOSubject.java:180)
> at
> net.organon.messaging.xmpp.soap.XMPPSOAPTransporter.handleMessage(XMPPSOAPTransporter.java:234)
> at
> net.organon.messaging.xmpp.model.stanza.processor.AbstractAgent.execute(AbstractAgent.java:70)
> at
> net.organon.messaging.xmpp.model.stanza.processor.AbstractComponent.execute(AbstractComponent.java:82)
> at
> net.organon.messaging.xmpp.runtime.channel.XMPPEventContext.sendUpstream(XMPPEventContext.java:122)
> at
> net.organon.platform.channel.AbstractChannelEventContext.sendUpstream(AbstractChannelEventContext.java:146)
> at
> net.organon.platform.channel.UpstreamChannelEventContext.call(UpstreamChannelEventContext.java:43)
> at
> net.organon.platform.channel.UpstreamChannelEventContext.call(UpstreamChannelEventContext.java:19)
> at
> net.organon.messaging.xmpp.runtime.channel.AbstractXMPPChannel.writeOperation(AbstractXMPPChannel.java:273)
> at
> net.organon.messaging.xmpp.runtime.channel.AbstractXMPPChannel.writeOperation(AbstractXMPPChannel.java:263)
> at
> net.organon.messaging.xmpp.runtime.channel.AbstractXMPPChannel.writeOperation(AbstractXMPPChannel.java:256)
> at
> net.organon.messaging.xmpp.runtime.channel.AbstractXMPPChannel.writeUpstream(AbstractXMPPChannel.java:230)
> at
> net.organon.platform.channel.DefaultUpstreamChannel.writeUpstream(DefaultUpstreamChannel.java:35)
> at
> net.organon.messaging.xmpp.runtime.channel.AbstractXMPPRouterChannel.route(AbstractXMPPRouterChannel.java:273)
> at
> net.organon.messaging.xmpp.runtime.channel.AbstractXMPPRouterChannel.writeUpstream(AbstractXMPPRouterChannel.java:248)
> at
> net.organon.messaging.xmpp.runtime.channel.AbstractXMPPChannel.writeUpstream(AbstractXMPPChannel.java:241)
> at
> net.organon.messaging.xmpp.runtime.channel.AbstractXMPPChannel.writeUpstream(AbstractXMPPChannel.java:232)
> at
> net.organon.platform.channel.DefaultUpstreamChannel.writeUpstream(DefaultUpstreamChannel.java:35)
> at
> net.organon.messaging.bus.EventQueue.writeUpstream(EventQueue.java:191)
> at
> net.organon.platform.channel.DefaultUpstreamChannel.writeUpstream(DefaultUpstreamChannel.java:104)
> at
> net.organon.platform.channel.DefaultUpstreamChannel.writeUpstream(DefaultUpstreamChannel.java:42)
> at
> net.organon.platform.channel.DefaultUpstreamChannel.writeUpstream(DefaultUpstreamChannel.java:35)
> at
> net.organon.messaging.bus.EventQueue.writeDownstream(EventQueue.java:177)
> at
> net.organon.platform.channel.DefaultChannel.writeDownstream(DefaultChannel.java:104)
> at
> net.organon.platform.channel.DefaultChannel.writeDownstream(DefaultChannel.java:42)
> at net.organon.messaging.bus.EventFuture$1.run(EventFuture.java:70)
> at net.organon.messaging.bus.EventFuture$1.run(EventFuture.java:65)
> at java.security.AccessController.doPrivileged(Native Method)
> at javax.security.auth.Subject.doAs(Subject.java:415)
> at
> net.organon.security.identify.runtime.SSOSubject.doAs(SSOSubject.java:180)
> at net.organon.messaging.bus.EventFuture.run(EventFuture.java:65)
> at net.organon.messaging.bus.EventQueue.execute(EventQueue.java:225)
> at
> net.organon.messaging.bus.EventQueue$EventQueueProcessor.run(EventQueue.java:235)
> at
> net.organon.platform.internal.runtime.InternalProcessManager$Worker$1.run(InternalProcessManager.java:190)
> at java.security.AccessController.doPrivileged(Native Method)
> at javax.security.auth.Subject.doAs(Subject.java:415)
> at
> net.organon.security.identify.runtime.SSOSubject.doAs(SSOSubject.java:180)
> at
> net.organon.platform.internal.runtime.InternalProcessManager$Worker.run(InternalProcessManager.java:183)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
> at java.lang.Thread.run(Thread.java:722)
> {code}
> Mar 15, 2012 11:23:14 PM org.apache.cxf.phase.PhaseInterceptorChain
> doDefaultLogging
> INFO: Application
> {http://example.com/blackboard/kb/}Subscriber#{http://example/blackboard/kb/}push
> has thrown exception, unwinding now:
> com.example.blackboard.kb.failure.FeedServiceException:
> net.organon.platform.channel.ChannelException: java.lang.NullPointerException
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira