FUDforum
Fast Uncompromising Discussions. FUDforum will get your users talking.

Home » Imported messages » comp.lang.php » Problem with webservice call: org.xml.sax.SAXException
Show: Today's Messages :: Polls :: Message Navigator
Return to the default flat view Create a new topic Submit Reply
Re: Problem with webservice call: org.xml.sax.SAXException [message #180131 is a reply to message #180130] Thu, 10 January 2013 23:09 Go to previous messageGo to previous message
Jerry Stuckle is currently offline  Jerry Stuckle
Messages: 2598
Registered: September 2010
Karma:
Senior Member
On 1/10/2013 3:39 PM, Jens Riedel wrote:
> Am 10.01.2013 17:44, schrieb Jerry Stuckle:
>
>> Impossible to tell from the information given. You didn't show your
>> SOAP calls, the class you're trying to instantiate or the XML being
>> returned by the server.
>
> Here is some more information:
>
> the XML of my SOAP request:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <SOAP-ENV:Envelope
> xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
> xmlns:ns4="KreditkartenzahlungWS"
> SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
> <SOAP-ENV:Body>
> <ns4:validierenKreditkarte>
> <mandantNr xsi:type="xsd:string">12345678</mandantNr>
> <kreditkarte>
> <OBJTypeNS>
> <namespace
> xsi:type="xsd:string">http://www.bff.bund.de/ePayment</namespace>
> <type xsi:type="xsd:string">Kreditkarte</type></OBJTypeNS>
> <karteninhaber xsi:type="xsd:string">Testname</karteninhaber>
> <kreditkartenNr xsi:type="xsd:string">242342424234</kreditkartenNr>
> <gueltigkeit xsi:type="xsd:string">01012050</gueltigkeit>
> <kartenpruefnummer
> xsi:type="xsd:string">666</kartenpruefnummer></kreditkarte>
> <waehrungskennzeichen
> xsi:type="xsd:string">EUR</waehrungskennzeichen></ns4:validierenKreditkarte >
>
> </SOAP-ENV:Body>
> </SOAP-ENV:Envelope>
>
>
> the following XML is returned from the server:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <soapenv:Envelope
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
> <soapenv:Body>
> <soapenv:Fault>
> <faultcode>soapenv:Server.userException</faultcode>
> <faultstring>org.xml.sax.SAXException: Invalid element in
> de.bund.bff.epayment.webservice.bean.KreditkarteBean -
> OBJTypeNS</faultstring>
> <detail>
> <ns1:stackTrace
> xmlns:ns1="http://xml.apache.org/axis/">org.xml.sax.SAXException:
> Invalid element in de.bund.bff.epayment.webservice.bean.KreditkarteBean
> - OBJTypeNS
> at
> org.apache.axis.encoding.ser.BeanDeserializer.onStartChild(BeanDeserializer .java(Compiled
> Code))
> at
> org.apache.axis.encoding.DeserializationContext.startElement(Deserializatio nContext.java(Compiled
> Code))
> at
> org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java(Com piled
> Code))
> at
> org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java (Inlined
> Compiled Code))
> at
> org.apache.axis.message.RPCElement.deserialize(RPCElement.java(Compiled
> Code))
> at
> org.apache.axis.message.RPCElement.getParams(RPCElement.java(Inlined
> Compiled Code))
> at
> org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java( Compiled
> Code))
> at
> org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java(Compil ed
> Code))
> at
> org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java (Compiled
> Code))
> at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java(Compiled
> Code))
> at org.apache.axis.SimpleChain.invoke(SimpleChain.java(Compiled Code))
> at
> org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java(Compiled
> Code))
> at
> org.apache.axis.server.AxisServer.invoke(AxisServer.java(Compiled Code))
> at
> org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java(Compiled
> Code))
> at javax.servlet.http.HttpServlet.service(HttpServlet.java(Compiled
> Code))
> at
> org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java (Compiled
> Code))
> at javax.servlet.http.HttpServlet.service(HttpServlet.java(Compiled
> Code))
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicatio nFilterChain.java(Compiled
> Code))
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterC hain.java(Compiled
> Code))
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.j ava(Compiled
> Code))
> at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveConte xt.java(Compiled
> Code))
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java(Comp iled
> Code))
> at
> org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContex tValve.java(Compiled
> Code))
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.j ava(Compiled
> Code))
> at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveConte xt.java(Compiled
> Code))
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java(Comp iled
> Code))
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java(Co mpiled
> Code))
> at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveConte xt.java(Compiled
> Code))
> at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java(Co mpiled
> Code))
> at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveConte xt.java(Compiled
> Code))
> at
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java(Compil ed
> Code))
> at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveConte xt.java(Compiled
> Code))
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java(Comp iled
> Code))
> at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.jav a(Compiled
> Code))
> at
> org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveConte xt.java(Compiled
> Code))
> at
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java(Comp iled
> Code))
> at
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java(Compiled Code))
>
> at
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java(Compiled
> Code))
> at
> org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java(Compiled Code))
>
> at
> org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java(Compiled
> Code))
> at
> org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java(Compiled
> Code))
> at
> org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java(Com piled
> Code))
> at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
> at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.ja va:684)
>
> at java.lang.Thread.run(Thread.java:571)
> </ns1:stackTrace>
> <ns2:hostname
> xmlns:ns2="http://xml.apache.org/axis/">lxepyint</ns2:hostname>
> </detail>
> </soapenv:Fault>
> </soapenv:Body>
> </soapenv:Envelope>
>
>

OK, your XML looks fine. But it looks like the server doesn't
understand the OBJTypeNS at it's end. Is this what you had working
before? What does their API documentation say about it?

>
>> But before you get off too far on this, the PEAR package is pretty much
>> defunct. The SOAP functions are now included in the base PHP code. You
>> should be using them instead.
>
> The problem is that the customer wants a solution with the least
> migration effort and the webservice functionality with the PEAR SOAP lib
> is used in a lot of places in the source code... but maybe it will be
> cheaper in the long run to replace it with the PHP5 SOAP functions...
>
> Kind regards
> Jens
>>
>

Been there, done that, got (several) T-shirt(s) :)

Your biggest problem is the PEAR::SOAP package is no longer being
maintained. This *could* be a bug in the package, which will never be
fixed (there are currently 38 open bugs on the package but nothing I
could relate to your problem). It's also possible that a bug was fixed
between your (very) old version and the newer one, but again, a quick
look through the bugs didn't seem to indicate that. I admit I didn't
look closely at every bug, though.

You are going to have to convert sooner or later, or end up running
unsupported code forever. I know it's a hassle, but that will be
cheaper in the long run.

But if you need to get it going now, I'd go back and check the OBJTypeNS
in the API doc as I indicated above - what does the server expect?

I wish I could tell you more detail, but without the doc from the server
API and being unable to test myself, it's hard to make a solid
determination.

--
==================
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
jstucklex(at)attglobal(dot)net
==================
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: QR Code>/phpqrcode/qrlib.php
Next Topic: PHP Opening!!
Goto Forum:
  

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ]

Current Time: Wed Nov 27 13:10:37 GMT 2024

Total time taken to generate the page: 0.03038 seconds