Hi Robert,

Xerces doesn't do WSDL processing. The exception you're getting is from 
WebSphere not Xerces. You might want to try asking your question here: 
http://www-128.ibm.com/developerworks/forums/dw_forum.jsp?forum=199&cat=7.

Thanks.

Michael Glavassevich
XML Parser Development
IBM Toronto Lab
E-mail: [EMAIL PROTECTED]
E-mail: [EMAIL PROTECTED]

"Robert Bram" <[EMAIL PROTECTED]> wrote on 01/19/2006 06:34:19 
PM:

> 
> Hi All,
> 
> I am having a problem with how some WSDL is being parsed. I think 
> what is happening is that I am receiving a FAULT message which we 
> have somehow not 'told' xerces to expect (through the WSDL itself).
> 
> Question 1.
> ============
> 
> If the operation on a WSDL portType defines a fault message which is
> not mirrored in the binding element. Does this matter? Could this 
> mean that if xerces found a fault message it wouldn't expect it - 
> and thus find itself in error?
> 
> I have in my project the following WSDL portType:
> 
> <portType name="CMLeJobSoapGetEmpBrand">
>   <operation name="EJobGetEmpBrand">
>     <input message="tns:EJobEmpBrdReq" name="EJobEmpBrdReq"/>
>     <output message="tns:EJobGetEmpBrdRes" name="EJobGetEmpBrdRes"/>
>     <fault message="tns:Fault" name="Fault"/>
>   </operation>
> </portType>
> 
> and a binding to match it:
> 
> <binding name="MS_ALPHA_EJOB_PRJHTTP_SOAP_Binding_GetEmpBrand"
>     type="tns:CMLeJobSoapGetEmpBrand">
>   <soap:binding style="document"
>       transport="http://schemas.xmlsoap.org/soap/http"/>
>   <operation name="EJobGetEmpBrand">
>     <soap:operation style="document" soapAction=""/>
>     <input name="EJobEmpBrdReq">
>       <soap:body encodingStyle=""
>           parts="EJobEmpBrdReqBody" use="literal"/>
>     </input>
>     <output name="EJobGetEmpBrdRes">
>       <soap:body encodingStyle=""
>           parts="EJobGetEmpBrdResBody" use="literal"/>
>     </output>
>   </operation>
> </binding>
> 
> 
> Question 2.
> ============
> 
> The underlying problem is that my Java parser is throwing an 
> exception (full trace at end of this message):
> java.lang.Exception: WSWS3379E: Error: Prefix http://schemas.
> xmlsoap.org/soap/envelope/ is undefined.
> 
> This was in response to a FAULT message (below) and the error looks 
> as though xerces didn't understand how to parse a fault - as though 
> it wasn't expecting it or something.
> 
> <?xml version="1.0" encoding="UTF-8" ?>
> <soapenv:Envelope 
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";>
>   <soapenv:Body>
>     <soapenv:Fault>
> <faultcode>http://schemas.xmlsoap.org/soap/envelope/:EAI</faultcode>
>       <faultstring>Failure in EAI message processing</faultstring>
>       <faultactor>http://udeaib01:7080/CMLeJob/EJobFindDept</faultactor>
>       <detail>The request for service 01:7080/CMLeJob/EJobFindDept 
> failed.2230 Caught exception and rethrowing,ImbComputeNode::
> evaluate,2488 Error detected, rethrowing,SqlStatementGroup::execute,
> 2949 User Generated SQL 'USER' exception,
> SqlThrowExceptionStatement::execute,</detail>
>     </soapenv:Fault>
>   </soapenv:Body>
> </soapenv:Envelope>
> 
> 
> Full trace for the exception I received:
> 
> 2005-12-28 10:30:59,798 FATAL com.ibm.ws.webservices.engine.
> InternalException - WSWS3227E:  Error: Exception:
> java.lang.Exception: WSWS3379E: Error: Prefix http://schemas.
> xmlsoap.org/soap/envelope/ is undefined.
>    at com.ibm.ws.webservices.engine.InternalException.
> <init>(InternalException.java:124)
>    at com.ibm.ws.webservices.engine.encoding.ser.QNameDeserializer.
> makeValue(QNameDeserializer.java:119)
>    at com.ibm.ws.webservices.engine.encoding.ser.SimpleDeserializer.
> onEndElement(SimpleDeserializer.java:209)
>    at com.ibm.ws.webservices.engine.encoding.Deserializer.
> endElement(Deserializer.java:590)
>    at com.ibm.ws.webservices.engine.events.DEventProcessor.
> onSimpleChild(DEventProcessor.java:243)
>    at com.ibm.ws.webservices.engine.events.P2DConverter.
> flush(P2DConverter.java:728)
>    at com.ibm.ws.webservices.engine.events.P2DConverter.
> endElement(P2DConverter.java:395)
>    at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown 
Source)
>    at org.apache.xerces.impl.XMLNSDocumentScannerImpl.
> scanEndElement(Unknown Source)
>    at org.apache.xerces.impl.
> XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.
> dispatch(Unknown Source)
>    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.
> scanDocument(Unknown Source)
>    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
>    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
>    at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
>    at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
>    at javax.xml.parsers.SAXParser.parse(Unknown Source)
>    at com.ibm.ws.webservices.engine.encoding.
> DeserializationContextImpl.parse(DeserializationContextImpl.java:251)
>    at com.ibm.ws.webservices.engine.SOAPPart.
> getSOAPEnvelope(SOAPPart.java:882)
>    at 
com.ibm.ws.webservices.engine.SOAPPart.getFault(SOAPPart.java:1262)
>    at com.ibm.ws.webservices.engine.Message.getFault(Message.java:757)
>    at 
com.ibm.ws.webservices.engine.Message.ifFaultThrowSelf(Message.java:737)
>    at com.ibm.ws.webservices.engine.PivotHandlerWrapper.
> invoke(PivotHandlerWrapper.java:252)
>    at com.ibm.ws.webservices.engine.WebServicesEngine.
> invoke(WebServicesEngine.java:255)
>    at com.ibm.ws.webservices.engine.client.Connection.
> invokeEngine(Connection.java:688)
>    at com.ibm.ws.webservices.engine.client.Connection.
> invoke(Connection.java:614)
>    at com.ibm.ws.webservices.engine.client.Connection.
> invoke(Connection.java:444)
>    at 
com.ibm.ws.webservices.engine.client.Stub$Invoke.invoke(Stub.java:662)
>    at com.cml.hr.portal.eai.webservices.sap.
> MS_ALPHA_EJOB_PRJHTTP_SOAP_Binding_FindPositionsStub.
> EJobFindPositions(MS_ALPHA_EJOB_PRJHTTP_SOAP_Binding_FindPositionsStub.
> java:112)
>    at com.cml.hr.portal.eai.webservices.sap.FindPositionsTestCase.
> testFindPositions(FindPositionsTestCase.java:115)
>    at java.lang.reflect.Method.invoke(Native Method)
>    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 junit.framework.TestSuite.runTest(TestSuite.java:208)
>    at junit.framework.TestSuite.run(TestSuite.java:203)
>    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.
> runTests(RemoteTestRunner.java:329)
>    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.
> run(RemoteTestRunner.java:218)
>    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.
> main(RemoteTestRunner.java:151)
> 2005-12-28 10:30:59,844 ERROR com.ibm.ws.webservices.engine.
> PivotHandlerWrapper - WSWS3400I: Info: unexpected exception.
> java.lang.NullPointerException
>    at java.io.FilterInputStream.read(FilterInputStream.java:128)
>    at com.ibm.ws.webservices.engine.SOAPPart.getBytes(SOAPPart.java:671)
>    at 
com.ibm.ws.webservices.engine.SOAPPart.getString(SOAPPart.java:788)
>    at 
com.ibm.ws.webservices.engine.SOAPPart.getAsString(SOAPPart.java:582)
>    at com.ibm.ws.webservices.engine.SOAPPart.
> getSOAPEnvelope(SOAPPart.java:888)
>    at 
com.ibm.ws.webservices.engine.SOAPPart.getFault(SOAPPart.java:1262)
>    at com.ibm.ws.webservices.engine.Message.getFault(Message.java:757)
>    at 
com.ibm.ws.webservices.engine.Message.ifFaultThrowSelf(Message.java:737)
>    at com.ibm.ws.webservices.engine.PivotHandlerWrapper.
> invoke(PivotHandlerWrapper.java:252)
>    at com.ibm.ws.webservices.engine.WebServicesEngine.
> invoke(WebServicesEngine.java:255)
>    at com.ibm.ws.webservices.engine.client.Connection.
> invokeEngine(Connection.java:688)
>    at com.ibm.ws.webservices.engine.client.Connection.
> invoke(Connection.java:614)
>    at com.ibm.ws.webservices.engine.client.Connection.
> invoke(Connection.java:444)
>    at 
com.ibm.ws.webservices.engine.client.Stub$Invoke.invoke(Stub.java:662)
>    at com.cml.hr.portal.eai.webservices.sap.
> MS_ALPHA_EJOB_PRJHTTP_SOAP_Binding_FindPositionsStub.
> EJobFindPositions(MS_ALPHA_EJOB_PRJHTTP_SOAP_Binding_FindPositionsStub.
> java:112)
>    at com.cml.hr.portal.eai.webservices.sap.FindPositionsTestCase.
> testFindPositions(FindPositionsTestCase.java:115)
>    at java.lang.reflect.Method.invoke(Native Method)
>    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 junit.framework.TestSuite.runTest(TestSuite.java:208)
>    at junit.framework.TestSuite.run(TestSuite.java:203)
>    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.
> runTests(RemoteTestRunner.java:329)
>    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.
> run(RemoteTestRunner.java:218)
>    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.
> main(RemoteTestRunner.java:151)
> 2005-12-28 10:30:59,876 INFO com.ibm.ws.webservices.engine.
> enterprise - WSWS3243I: Info: Mapping Exception to WebServicesFault.
> WebServicesFault
>  faultCode: Server.generalException
>  faultString: WSWS3400I: Info: unexpected exception.
>  faultActor: null
>  faultDetail:
> 
> 
> WSWS3400I: Info: unexpected exception.
> java.lang.NullPointerException
>    at java.io.FilterInputStream.read(FilterInputStream.java:128)
>    at com.ibm.ws.webservices.engine.SOAPPart.getBytes(SOAPPart.java:671)
>    at 
com.ibm.ws.webservices.engine.SOAPPart.getString(SOAPPart.java:788)
>    at 
com.ibm.ws.webservices.engine.SOAPPart.getAsString(SOAPPart.java:582)
>    at com.ibm.ws.webservices.engine.SOAPPart.
> getSOAPEnvelope(SOAPPart.java:888)
>    at 
com.ibm.ws.webservices.engine.SOAPPart.getFault(SOAPPart.java:1262)
>    at com.ibm.ws.webservices.engine.Message.getFault(Message.java:757)
>    at 
com.ibm.ws.webservices.engine.Message.ifFaultThrowSelf(Message.java:737)
>    at com.ibm.ws.webservices.engine.PivotHandlerWrapper.
> invoke(PivotHandlerWrapper.java:252)
>    at com.ibm.ws.webservices.engine.WebServicesEngine.
> invoke(WebServicesEngine.java:255)
>    at com.ibm.ws.webservices.engine.client.Connection.
> invokeEngine(Connection.java:688)
>    at com.ibm.ws.webservices.engine.client.Connection.
> invoke(Connection.java:614)
>    at com.ibm.ws.webservices.engine.client.Connection.
> invoke(Connection.java:444)
>    at 
com.ibm.ws.webservices.engine.client.Stub$Invoke.invoke(Stub.java:662)
>    at com.cml.hr.portal.eai.webservices.sap.
> MS_ALPHA_EJOB_PRJHTTP_SOAP_Binding_FindPositionsStub.
> EJobFindPositions(MS_ALPHA_EJOB_PRJHTTP_SOAP_Binding_FindPositionsStub.
> java:112)
>    at com.cml.hr.portal.eai.webservices.sap.FindPositionsTestCase.
> testFindPositions(FindPositionsTestCase.java:115)
>    at java.lang.reflect.Method.invoke(Native Method)
>    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 junit.framework.TestSuite.runTest(TestSuite.java:208)
>    at junit.framework.TestSuite.run(TestSuite.java:203)
>    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.
> runTests(RemoteTestRunner.java:329)
>    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.
> run(RemoteTestRunner.java:218)
>    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.
> main(RemoteTestRunner.java:151)
> 2005-12-28 10:30:59,907 ERROR com.cml.hr.portal.eai.webservices.sap.
> FindPositionsTestCase - testFindPositions() caught exception 
> [WSWS3400I: Info: unexpected exception.; nested exception is:
> 
>    java.lang.NullPointerException] while accessing web service.
> WebServicesFault
>  faultCode: Server.generalException
>  faultString: WSWS3400I: Info: unexpected exception.
>  faultActor: null
>  faultDetail:
> 
> 
> WSWS3400I: Info: unexpected exception.
> java.lang.NullPointerException
>    at java.io.FilterInputStream.read(FilterInputStream.java:128)
>    at com.ibm.ws.webservices.engine.SOAPPart.getBytes(SOAPPart.java:671)
>    at 
com.ibm.ws.webservices.engine.SOAPPart.getString(SOAPPart.java:788)
>    at 
com.ibm.ws.webservices.engine.SOAPPart.getAsString(SOAPPart.java:582)
>    at com.ibm.ws.webservices.engine.SOAPPart.
> getSOAPEnvelope(SOAPPart.java:888)
>    at 
com.ibm.ws.webservices.engine.SOAPPart.getFault(SOAPPart.java:1262)
>    at com.ibm.ws.webservices.engine.Message.getFault(Message.java:757)
>    at 
com.ibm.ws.webservices.engine.Message.ifFaultThrowSelf(Message.java:737)
>    at com.ibm.ws.webservices.engine.PivotHandlerWrapper.
> invoke(PivotHandlerWrapper.java:252)
>    at com.ibm.ws.webservices.engine.WebServicesEngine.
> invoke(WebServicesEngine.java:255)
>    at com.ibm.ws.webservices.engine.client.Connection.
> invokeEngine(Connection.java:688)
>    at com.ibm.ws.webservices.engine.client.Connection.
> invoke(Connection.java:614)
>    at com.ibm.ws.webservices.engine.client.Connection.
> invoke(Connection.java:444)
>    at 
com.ibm.ws.webservices.engine.client.Stub$Invoke.invoke(Stub.java:662)
>    at com.cml.hr.portal.eai.webservices.sap.
> MS_ALPHA_EJOB_PRJHTTP_SOAP_Binding_FindPositionsStub.
> EJobFindPositions(MS_ALPHA_EJOB_PRJHTTP_SOAP_Binding_FindPositionsStub.
> java:112)
>    at com.cml.hr.portal.eai.webservices.sap.FindPositionsTestCase.
> testFindPositions(FindPositionsTestCase.java:115)
>    at java.lang.reflect.Method.invoke(Native Method)
>    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 junit.framework.TestSuite.runTest(TestSuite.java:208)
>    at junit.framework.TestSuite.run(TestSuite.java:203)
>    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.
> runTests(RemoteTestRunner.java:329)
>    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.
> run(RemoteTestRunner.java:218)
>    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.
> main(RemoteTestRunner.java:151)
> 
> Thanks for any advice!
> 
> 
> Kind regards,
> 
> Rob
> :)
> 
> -------
> Robert Mark Bram
> Portal Analyst Programmer
> eBusiness, Methodologies and Portals (eBM&P), Coles Myer Limited
> [EMAIL PROTECTED]
> +61 3 9635 1036
> 
> 
> This email and any attachments may contain privileged and 
> confidential information and are intended for the named addressee 
> only. If you have received this e-mail in error, please notify the 
> sender and delete this e-mail immediately. Any confidentiality, 
> privilege or copyright is not waived or lost because this e-mail has
> been sent to you in error. It is your responsibility to check this 
> e-mail and any attachments for viruses.  No warranty is made that 
> this material is free from computer virus or any other defect or 
> error.  Any loss/damage incurred by using this material is not the 
> sender's responsibility.  The sender's entire liability will be 
> limited to resupplying the material.
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 


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

Reply via email to