JAXBSource implementation for Dispatch and Fix to SourceBlockImpl when creating 
Reader for Source api.
------------------------------------------------------------------------------------------------------

                 Key: AXIS2-977
                 URL: http://issues.apache.org/jira/browse/AXIS2-977
             Project: Apache Axis 2.0 (Axis2)
          Issue Type: Bug
          Components: jaxws
            Reporter: Nikhil Thaker
            Priority: Minor


I was getting error when invoking Dispatch with JABSource as Input parameter. 
Following is the stacktrace for it:

javax.xml.stream.XMLStreamException: Can only create STaX reader for a 
SAXSource if Reader or InputStream exposed via getSource(); can not use other 
sources (like embedded SAX readers)
        at 
com.ctc.wstx.stax.WstxInputFactory.createSR(WstxInputFactory.java:729)
        at 
com.ctc.wstx.stax.WstxInputFactory.createXMLStreamReader(WstxInputFactory.java:332)
        at 
org.apache.axis2.jaxws.message.databinding.impl.SourceBlockImpl._getReaderFromBO(SourceBlockImpl.java:150)
        at 
org.apache.axis2.jaxws.message.impl.BlockImpl.getXMLStreamReader(BlockImpl.java:179)
        at 
org.apache.axis2.jaxws.message.impl.XMLStreamReaderForXMLSpine.pushBlocks(XMLStreamReaderForXMLSpine.java:158)
        at 
org.apache.axis2.jaxws.message.impl.XMLStreamReaderForXMLSpine.next(XMLStreamReaderForXMLSpine.java:96)
        at 
org.apache.axiom.om.impl.llom.OMStAXWrapper.next(OMStAXWrapper.java:929)
        at 
org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serializeNode(StreamingOMSerializer.java:74)
        at 
org.apache.axiom.om.impl.serialize.StreamingOMSerializer.serialize(StreamingOMSerializer.java:59)
        at 
org.apache.axiom.om.impl.util.OMSerializerUtil.serializeByPullStream(OMSerializerUtil.java:490)
        at 
org.apache.axiom.om.impl.llom.OMElementImpl.internalSerialize(OMElementImpl.java:792)
        at 
org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.internalSerialize(SOAPEnvelopeImpl.java:177)
        at 
org.apache.axiom.om.impl.llom.OMElementImpl.internalSerializeAndConsume(OMElementImpl.java:811)
        at 
org.apache.axiom.om.impl.llom.OMNodeImpl.serializeAndConsume(OMNodeImpl.java:378)
        at 
org.apache.axis2.jaxws.message.MessageTests.testJAXBSourceInFlow1(MessageTests.java:422)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:615)
        at junit.framework.TestCase.runTest(TestCase.java:154)
        at junit.framework.TestCase.runBare(TestCase.java:127)
        at junit.framework.TestResult$1.protect(TestResult.java:106)
        at junit.framework.TestResult.runProtected(TestResult.java:124)
        at junit.framework.TestResult.run(TestResult.java:109)
        at junit.framework.TestCase.run(TestCase.java:118)
        at 
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:478)
        at 
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:344)
        at 
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)

I have found a fix for it and will be providing patch for this fix and a test 
case to make sure JAXBSource Dispatch is invoked properly. I will also add a 
new BlockTest for JAXBSource.

The is fix will be to use Transoform api and convert the JAXBSoruce to bytes 
and create reader from the bytes.





-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to