ServiceMix uses axis-1.3, but it seems there may be some differences
between the sun saaj for namespace / attributes handling on soap elements.
Sun does not use namespaces, whereas axis do not include namespace
declaration
in attributes. So i had to put both codes ...
I think the problem can finally be closed. Could you confirm please ?
Cheers,
Guillaume Nodet
[EMAIL PROTECTED] wrote:
Guillaume,
Any luck with reproducing the error that I had described (using the
different versions of the SaajMarshaller and HttpInOutBinding)?
Also, have you taken a look at the potential namespace issue in the HttpSoap
layer (where incoming SOAP messages have partial namespace reproduction)?
/jonathan
-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
Sent: Friday, December 30, 2005 12:02 PM
To: [email protected]
Subject: RE: [servicemix-user] Problems with JSM flow and
SOAP messages
Guillaume,
One more thing: Can you verify that the HttpInOutBinding (and related
components) is properly capturing all of the namespaces when
stripping the
SOAP-ENV? It seems like the inbound request messages are
missing the "d"
namespace. The SaajMarshaller is ok.
/jonathan
-----Original Message-----
From: Guillaume Nodet [mailto:[EMAIL PROTECTED]
Sent: Friday, December 30, 2005 1:42 AM
To: [email protected]
Subject: Re: [servicemix-user] Problems with JSM flow and
SOAP messages
This seems strange, as my test case fails with the old
SaajMarshaler
code, and works with the new one.
I changed, but i was quite sure it was working before, as you said.
It may be related to class loader issues, if the library
used are not
the same : we recently changed
to maven 2, so that the order of included jars ma be
different. I'll
try to investigate it.
Guillaume
[EMAIL PROTECTED] wrote:
Guillaume,
If I use only the modified HttpInOutBinding, and the older
SaajMarshaller
(with the org.w3c.dom.Attr import), everything works
properly. This leads me
to believe that there is an issue with the latest changes to the
SaajMarshaller.
/jonathan
-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
Sent: Thursday, December 29, 2005 7:44 PM
To: [email protected]
Subject: RE: [servicemix-user] Problems with JSM flow and
SOAP messages
I rebuilt using the full files from Apache-HEAD, but get the
same namespace
issues; no "d". I am trying to narrow down the problem on my
end. Should I
use all of the latest components in http and saaj?
/jonathan
-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED]
Sent: Thursday, December 29, 2005 6:53 PM
To: [email protected]
Subject: RE: [servicemix-user] Problems with JSM flow and
SOAP messages
This is for a slightly different service, but the basic
problem is
illustrated. Your example has the "d" xmlns, but my result
does not. On
further review, my source classes were slightly out of date
with yours. I
will try again tomorrow morning using the straight java
files from the
Apache-HEAD (with package corrections), and let you know if
the issue
persists.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soap:Body>
<wn2:getPersonResponse
xmlns:wn2="http://systinet.com/wsdl/com/cexp/ws/test/">
<wn2:response i:type="wn2:Person"
xmlns:i="http://www.w3.org/2001/XMLSchema-instance"
xmlns:wn2="http://systinet.com/wsdl/com/cexp/ws/test/">
<wn2:description i:type="d:string"
xmlns:wn2="http://systinet.com/wsdl/com/cexp/ws/test/">Desktop
customizer
(1135883476645)</wn2:description>
<wn2:firstName i:type="d:string"
xmlns:wn2="http://systinet.com/wsdl/com/cexp/ws/test/">Jonatha
n</wn2:firstNa
me>
<wn2:lastName i:type="d:string"
xmlns:wn2="http://systinet.com/wsdl/com/cexp/ws/test/">Edwards
</wn2:lastName
</wn2:response>
</wn2:getPersonResponse>
</soap:Body>
</soap:Envelope>
-----Original Message-----
From: Guillaume Nodet [mailto:[EMAIL PROTECTED]
Sent: Thursday, December 29, 2005 1:16 PM
To: [email protected]
Subject: Re: [servicemix-user] Problems with JSM flow and
SOAP messages
I have a test case which is the same as yours (or should be)
and the result I have is the following :
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soap:Body>
<wn1:getCustomerInfo
xmlns:d="http://www.w3.org/2001/XMLSchema"
xmlns:e="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:i="http://www.w3.org/2001/XMLSchema-instance"
xmlns:wn0="http://systinet.com/xsd/SchemaTypes/"
xmlns:wn1="http://systinet.com/wsdl/com/cexp/coe/bob/ws/customer/"
xmlns:wn2="http://systinet.com/soap-jta/"
xmlns:wn3="http://systinet.com/wsdl/com/cexp/coe/bob/services/
order/pojo/">
<wn1:userId i:type="d:string"
xmlns:wn1="http://systinet.com/wsdl/com/cexp/coe/bob/ws/custom
er/">akayali</wn1:userId>
</wn1:getCustomerInfo>
</soap:Body>
</soap:Envelope>
This one seems good.
What is the exact result you have ?
Cheers,
Guillaume Nodet
[EMAIL PROTECTED] wrote:
Guillaume,
After applying the changes that you sent me in the diff
links the JMS flow
now returns the full SOAP body. However, the SOAP messages
are now missing
the "i" and "d" namespaces that you had worked on fixing
last week.
/jonathan
-----Original Message-----
From: Guillaume Nodet [mailto:[EMAIL PROTECTED]
Sent: Thursday, December 29, 2005 2:51 AM
To: [email protected]
Subject: Re: [servicemix-user] Problems with JSM flow and
SOAP messages
You can grab the new versions of SaajMarshaler and
HttpSoapInOutBinding.
The problem should be fixed now.
Here are the diffs you should report to your sources (the
package have
been renamed)
*
http://svn.apache.org/viewcvs.cgi/incubator/servicemix/trunk/s
ervicemix-components/src/main/java/org/apache/servicemix/compo
nents/http/HttpSoapInOutBinding.java?rev=359186&r1=359767&r2=3
59186&diff_format=h
*
http://svn.apache.org/viewcvs.cgi/incubator/servicemix/trunk/s
ervicemix-components/src/main/java/org/apache/servicemix/compo
nents/saaj/SaajMarshaler.java?rev=359186&r1=359767&r2=359186&d
iff_format=h
Cheers,
Guillaume Nodet
[EMAIL PROTECTED] wrote:
Two steps forward, one step back, or so it seems.
The jmsFlow seems to be broken - at least in my custom build
of ServiceMix.
The version of the codebase that I am using is 1055, with
"servicemix/components/http/*" and
"servicemix/components/saaj/*" from the
Apache-HEAD. In addition, I am using the
xfire-all-1.0-20051222.jar. This is
happening using the Sun Java 5 JVM for both ActiveMQ 3.2.1
and ServiceMix.
With this build, the SEDA flow works properly, and the
client gets the
response from the invoked SOAP service (SOAP client ->
HttpSoapClient ->
SaajComponent -> SOAP service). When I change the flow to
JMS, using
ActiveMQ 3.2.1 with the "reliable" connect string, my
client throws a
NullPointerException. This is because the SOAP-Body in the
response is
completely empty. I have verified that the body is populated
correclty by
the SaajComponent (visible in the DEBUG output in log4j),
but the actual
HttpResponse from the HttpSoapConnector has an empty
SOAP-Body. As this
problem only presents itself using the JMS flow, and only
surfaced after
using the newer classes and library, I am fairly certain
that these events
are all highly correlated, but I am not sure what the root
cause is. I need
the new classes, and the newer xfire library in order for my
services to
call successfully under SEDA, and cannot revert.
regards,
/jonathan
-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED]
Sent: Wednesday, December 28, 2005 9:53 AM
To: [email protected]
Subject: RE: [servicemix-user] Problems invoking a web
service with SOAP
Guillaume,
Installing the new Xfire library did the trick: The XML
returned from the
SaajComponent is well formed, and the HttpSoapConnector
handles the
Http+SOAP calls properly. Thanks to everyone who helped me
to get Soap
communication working, especially Guillaume :-)
Now I'm off to wrestle with the IBM Java 5 JVM
(beta) on AIX.
best wishes for the holidays,
/jonathan