You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by "DeRemer, Bob" <bo...@sap.com> on 2006/05/24 21:36:54 UTC
axis2 client to WinFX service via tcp [was RE: HOW TO: get axis2 client tcp to find Addressing module]
I've been working this a bit more by changing the WinFX side to use a
custom binding that is a tcp transport with a text encoding, but still
get the following warnings/exceptions on the Axis side when debugging:
Can anyone comment on the PrimitiveAssertion warnings? Also, what is
the default settings when the URI passed into the client stub is
tcp-based? Specifically, what is the encoding, etc.
Thanks,
Bob
===========================
Warning: cannot find a module for process PrimitiveAssertion -
{http://schemas.xmlsoap.org/ws/2004/09/policy/encoding}Utf816FFFECharact
erEncoding
Warning: cannot find a module for process PrimitiveAssertion -
{http://schemas.microsoft.com/ws/06/2004/mspolicy/netframing1}Streamed
Warning: cannot find a module for process PrimitiveAssertion -
{http://www.w3.org/2005/08/addressing}UsingAddressing
org.apache.axis2.AxisFault: Connection reset; nested exception is:
com.ctc.wstx.exc.WstxIOException: Connection reset
at
org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUti
ls.java:126)
at
org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUti
ls.java:67)
at
org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOper
ation.java:349)
at
org.apache.axis2.description.OutInAxisOperationClient.execute(OutInAxisO
peration.java:279)
at Service1Stub.MyOperation1(Service1Stub.java:177)
at InteropClientJava.main(InteropClientJava.java:49)
Caused by: com.ctc.wstx.exc.WstxIOException: Connection reset
at
com.ctc.wstx.stax.WstxInputFactory.doCreateSR(WstxInputFactory.java:539)
at
com.ctc.wstx.stax.WstxInputFactory.createSR(WstxInputFactory.java:592)
at
com.ctc.wstx.stax.WstxInputFactory.createSR(WstxInputFactory.java:617)
at
com.ctc.wstx.stax.WstxInputFactory.createXMLStreamReader(WstxInputFactor
y.java:315)
at
org.apache.axiom.om.util.StAXUtils.createXMLStreamReader(StAXUtils.java:
51)
at
org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUti
ls.java:117)
... 5 more
Caused by: java.net.SocketException: Connection reset
at java.net.SocketInputStream.read(Unknown Source)
at java.net.SocketInputStream.read(Unknown Source)
at com.ctc.wstx.io.UTF8Reader.loadMore(UTF8Reader.java:354)
at com.ctc.wstx.io.UTF8Reader.read(UTF8Reader.java:110)
at
com.ctc.wstx.io.ReaderBootstrapper.initialLoad(ReaderBootstrapper.java:2
40)
at
com.ctc.wstx.io.ReaderBootstrapper.bootstrapInput(ReaderBootstrapper.jav
a:127)
at
com.ctc.wstx.stax.WstxInputFactory.doCreateSR(WstxInputFactory.java:534)
... 10 more
________________________________
From: Martin Gainty [mailto:mgainty@hotmail.com]
Sent: Wednesday, May 24, 2006 9:12 AM
To: axis-user@ws.apache.org
Subject: Re: HOW TO: get axis2 client tcp to find Addressing
module
Robert-
Does WinFX have TLS debug support such as what is supported in
Axis?
As this inquiry is not supporting Axis solutions this is prob
O/T ..accordingly I ask list members where should this be posted?
Martin --
*********************************************************************
This email message and any files transmitted with it contain
confidential
information intended only for the person(s) to whom this email
message is
addressed. If you have received this email message in error,
please notify
the sender immediately by telephone or email and destroy the
original
message without making a copy. Thank you.
----- Original Message -----
From: DeRemer, Bob <ma...@sap.com>
To: axis-user@ws.apache.org ; Martin Gainty
<ma...@hotmail.com>
Sent: Tuesday, May 23, 2006 7:49 PM
Subject: RE: HOW TO: get axis2 client tcp to find
Addressing module
I actually got that via WSDL2Java -uri. That's what
generated my java proxy code for calling my service. The service is
very simple:
interface IService
{
string MyOperation(string s);
}
I believe the problem is in the tcp transport settings.
My guess [but I have to dig into it] is that the WinFX defaults for tcp
and the axis2 defaults are probably not in sync.
Thanks for the suggestion, however!
________________________________
From: Martin Gainty [mailto:mgainty@hotmail.com]
Sent: Tuesday, May 23, 2006 5:30 PM
To: axis-user@ws.apache.org
Subject: Re: HOW TO: get axis2 client tcp to
find Addressing module
Robert
It looks like you're going to need the WSDL the
service generates so you may understand supported operations and
parameters of the webservice
Anyone else ?
Martin --
*********************************************************************
This email message and any files transmitted
with it contain confidential
information intended only for the person(s) to
whom this email message is
addressed. If you have received this email
message in error, please notify
the sender immediately by telephone or email and
destroy the original
message without making a copy. Thank you.
----- Original Message -----
From: DeRemer, Bob
<ma...@sap.com>
To: axis-user@ws.apache.org
Sent: Tuesday, May 23, 2006 4:54 PM
Subject: RE: HOW TO: get axis2 client
tcp to find Addressing module
I was able to get this working by
pointing the
ConfigurationContext.createConfigurationContextFromFileSystem at the
apache installation's axis 2 location. I am now struggling with getting
the actual tcp connection established. The WinFX side is throwing an
exception [see below]. I'm currently tracing the call using the NET
trace tools. If anyone has [successfully] written an axis2 client to a
WinFX service using the TCP transport and has any suggestions, I'd
appreciate it.
Thanks,
Bob
exception: Expected record type
'Version', found '60'
________________________________
From: DeRemer, Bob
[mailto:bob.deremer@sap.com]
Sent: Tuesday, May 23, 2006 2:40 PM
To: axis-user@ws.apache.org
Subject: HOW TO: get axis2 client tcp to
find Addressing module
I'm trying to write a simple java client
in axis2 that uses tcp transport to talk to my .NET WinFX service. I'm
currently using the AXIOM approach vs the wsdl-gen'd proxy code. In the
AXIOM case, I get an exception when trying to engageModule. I'm looking
for some example that shows what I need to do in code to specify the
configurationContext - so it knows where the addressing.mar is, but
haven't been able to find any good example. The sample code in the std
source download doesn't appear to do anything to set this - as if the
java console client just knows where the Axis repository is.
Thanks in advance for any help,
Bob DeRemer
Sr. Software Architect
SAP Labs, LLC
350 Eagleview Blvd
Exton, PA 19341 USA
T1 +1.610.903.8000 x 136
T2 +1.717.505.7923
M +1.717.424.9595
E bob.deremer@sap.com
<ma...@sap.com>
RE: axis2 client to WinFX service via tcp [was RE: HOW TO: get axis2 client tcp to find Addressing module]
Posted by "DeRemer, Bob" <bo...@sap.com>.
Thanks for the recommendations - and yes it is pretty fun as I get
closer and closer to establishing communication between the two
platforms.
On the debugging side: I know that the transport layer is working
becuase I am getting a request on the WinFX side - I can see it in the
trace logic, along with the exception. The problem is definitely in the
expectations on the WinFX side. I believe it may be in the SOAP and
WS-Addressing versions, because the exception I get in the WinFX
ServiceModel.Channel layer is: Expected 'Version', but got '60', so I
expect there's simply some setting differences.
Finally, since I'm a hardcode MS guy, I know how to turn on all the
debugging switches on that side, but how to I do low-level debugging of
the Axis components?
Thanks again - more info as the saga continues,
Bob
________________________________
From: Martin Gainty [mailto:mgainty@hotmail.com]
Sent: Thursday, May 25, 2006 8:40 AM
To: axis-user@ws.apache.org
Subject: Re: axis2 client to WinFX service via tcp [was RE: HOW
TO: get axis2 client tcp to find Addressing module]
Good Morning -
I would wind my way up the ISO stack starting at the Physical
Layer and eventually winding up at Application
so something like
tracert hostname
will prove or disprove basic connectivity at the physical and
network layers
My gut says you this maybe a datatype conversion or some sort of
encoding issue...
Using UTF-8 or UTF-16 are very safe encoding styles..UTF816
maybe problematic as I havent seen any implementations thus far
Finally following Keep it simple if we passing information with
datatypes as simple as possible then strings (and possibly ints) are
best
Complex (Classes which are constructed of multiple primitive
types)Datatypes are most problematic
Finally turn on max debugging ..grind thru every method in every
class and output every parameter as well as announce entry and exit
points
In any case this sounds like a fun project and I am sure you're
having a ball with it,
Keep us apprised!
Martin --
*********************************************************************
This email message and any files transmitted with it contain
confidential
information intended only for the person(s) to whom this email
message is
addressed. If you have received this email message in error,
please notify
the sender immediately by telephone or email and destroy the
original
message without making a copy. Thank you.
----- Original Message -----
From: DeRemer, Bob <ma...@sap.com>
To: axis-user@ws.apache.org
Sent: Thursday, May 25, 2006 6:55 AM
Subject: RE: axis2 client to WinFX service via tcp [was
RE: HOW TO: get axis2 client tcp to find Addressing module]
Martin for the suggestions! I'm actually pushing the
envelope beyond .NET 2.0 by using the WinFX beta software (i.e. Indigo
or Windows Communication Framework - .NET 3.0 stuff). I can get the
WSDL from the http endpoint I host on the same service, but I'm trying
to verify that I can talk TCP from WinFX to/from Axis2. I will hook in
TcpTrace to see what's going over the wire, as well as look at the
actual WSDL my server is generating from the ?wsdl. It's a good
learning experience none the less to really see what's going on under
the hood on both sides.
Thanks again for the help. When I get the solution,
I'll post it back here in case anyone else may come across this in the
future.
-bob
________________________________
From: Martin Gainty [mailto:mgainty@hotmail.com]
Sent: Wednesday, May 24, 2006 4:30 PM
To: axis-user@ws.apache.org
Subject: Re: axis2 client to WinFX service via
tcp [was RE: HOW TO: get axis2 client tcp to find Addressing module]
Rob-
This is a Shot in the dark but why not use AXIS
1.3 to ensure compat with NET 2.0 framework
go to server-config.wsdd with which you are
deploying the services verify these parameters to ensure compatibility
with NET
<global-configuration>
<parameter name="enable2DArrayEncoding"
value="true"/>
<parameter name="dotNetSoapEncFix"
value="true"/>
</global-configuration>
redeploy the AXIS 1.3 service so that it will
pickup the new parameters
Finally when client is constructing the call the
3rd parameter is encoding and I suspect this is NOT the encoding that is
supported by the service
this is identified as the encoding attribute
from the wsdl such as encoding="UTF-8"
Unfortunately without the WSDL you're flying
blind..
Taking a quick peek at available charactersets I
see UTF-8 and UTF-16 a more or less comprehensive list is located at
http://www.oracle.com/technology/tech/xml/xdk/doc/production10g/doc/c/Ge
tting_Started_C.html
I dont see any implementation of UTF816 which I
would assume uses a transcoder
Finally if you dont need DBCS why not use UTF-8
supported here
http://schemas.xmlsoaporg/soap/encoding/
<http://schemas.xmlsoap.org/soap/encoding/>
Anyone else?
M-
*********************************************************************
This email message and any files transmitted
with it contain confidential
information intended only for the person(s) to
whom this email message is
addressed. If you have received this email
message in error, please notify
the sender immediately by telephone or email and
destroy the original
message without making a copy. Thank you.
----- Original Message -----
From: DeRemer, Bob
<ma...@sap.com>
To: axis-user@ws.apache.org
Sent: Wednesday, May 24, 2006 3:36 PM
Subject: axis2 client to WinFX service
via tcp [was RE: HOW TO: get axis2 client tcp to find Addressing module]
I've been working this a bit more by
changing the WinFX side to use a custom binding that is a tcp transport
with a text encoding, but still get the following warnings/exceptions on
the Axis side when debugging:
Can anyone comment on the
PrimitiveAssertion warnings? Also, what is the default settings when
the URI passed into the client stub is tcp-based? Specifically, what is
the encoding, etc.
Thanks,
Bob
===========================
Warning: cannot find a module for
process PrimitiveAssertion -
{http://schemas.xmlsoap.org/ws/2004/09/policy/encoding}Utf816FFFECharact
erEncoding
Warning: cannot find a module for
process PrimitiveAssertion -
{http://schemas.microsoft.com/ws/06/2004/mspolicy/netframing1}Streamed
Warning: cannot find a module for
process PrimitiveAssertion -
{http://www.w3.org/2005/08/addressing}UsingAddressing
org.apache.axis2.AxisFault: Connection
reset; nested exception is:
com.ctc.wstx.exc.WstxIOException:
Connection reset
at
org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUti
ls.java:126)
at
org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUti
ls.java:67)
at
org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOper
ation.java:349)
at
org.apache.axis2.description.OutInAxisOperationClient.execute(OutInAxisO
peration.java:279)
at
Service1Stub.MyOperation1(Service1Stub.java:177)
at
InteropClientJava.main(InteropClientJava.java:49)
Caused by:
com.ctc.wstx.exc.WstxIOException: Connection reset
at
com.ctc.wstx.stax.WstxInputFactory.doCreateSR(WstxInputFactory.java:539)
at
com.ctc.wstx.stax.WstxInputFactory.createSR(WstxInputFactory.java:592)
at
com.ctc.wstx.stax.WstxInputFactory.createSR(WstxInputFactory.java:617)
at
com.ctc.wstx.stax.WstxInputFactory.createXMLStreamReader(WstxInputFactor
y.java:315)
at
org.apache.axiom.om.util.StAXUtils.createXMLStreamReader(StAXUtils.java:
51)
at
org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUti
ls.java:117)
... 5 more
Caused by: java.net.SocketException:
Connection reset
at
java.net.SocketInputStream.read(Unknown Source)
at
java.net.SocketInputStream.read(Unknown Source)
at
com.ctc.wstx.io.UTF8Reader.loadMore(UTF8Reader.java:354)
at
com.ctc.wstx.io.UTF8Reader.read(UTF8Reader.java:110)
at
com.ctc.wstx.io.ReaderBootstrapper.initialLoad(ReaderBootstrapper.java:2
40)
at
com.ctc.wstx.io.ReaderBootstrapper.bootstrapInput(ReaderBootstrapper.jav
a:127)
at
com.ctc.wstx.stax.WstxInputFactory.doCreateSR(WstxInputFactory.java:534)
... 10 more
________________________________
From: Martin Gainty
[mailto:mgainty@hotmail.com]
Sent: Wednesday, May 24, 2006 9:12 AM
To: axis-user@ws.apache.org
Subject: Re: HOW TO: get axis2 client
tcp to find Addressing module
Robert-
Does WinFX have TLS debug support such
as what is supported in Axis?
As this inquiry is not supporting Axis
solutions this is prob O/T accordingly I ask list members where should
this be posted?
Martin --
*********************************************************************
This email message and any files
transmitted with it contain confidential
information intended only for the
person(s) to whom this email message is
addressed. If you have received this
email message in error, please notify
the sender immediately by telephone or
email and destroy the original
message without making a copy. Thank
you.
----- Original Message -----
From: DeRemer, Bob
<ma...@sap.com>
To: axis-user@ws.apache.org ; Martin
Gainty <ma...@hotmail.com>
Sent: Tuesday, May 23, 2006 7:49 PM
Subject: RE: HOW TO: get axis2 client
tcp to find Addressing module
I actually got that via WSDL2Java -uri.
That's what generated my java proxy code for calling my service. The
service is very simple:
interface IService
{
string MyOperation(string s);
}
I believe the problem is in the tcp
transport settings. My guess [but I have to dig into it] is that the
WinFX defaults for tcp and the axis2 defaults are probably not in sync.
Thanks for the suggestion, however!
________________________________
From: Martin Gainty
[mailto:mgainty@hotmail.com]
Sent: Tuesday, May 23, 2006 5:30 PM
To: axis-user@ws.apache.org
Subject: Re: HOW TO: get axis2 client
tcp to find Addressing module
Robert
It looks like you're going to need the
WSDL the service generates so you may understand supported operations
and parameters of the webservice
Anyone else ?
Martin --
*********************************************************************
This email message and any files
transmitted with it contain confidential
information intended only for the
person(s) to whom this email message is
addressed. If you have received this
email message in error, please notify
the sender immediately by telephone or
email and destroy the original
message without making a copy. Thank
you.
----- Original Message -----
From: DeRemer, Bob
<ma...@sap.com>
To: axis-user@ws.apache.org
Sent: Tuesday, May 23, 2006 4:54 PM
Subject: RE: HOW TO: get axis2 client
tcp to find Addressing module
I was able to get this working by
pointing the
ConfigurationContext.createConfigurationContextFromFileSystem at the
apache installation's axis 2 location. I am now struggling with getting
the actual tcp connection established. The WinFX side is throwing an
exception [see below]. I'm currently tracing the call using the NET
trace tools. If anyone has [successfully] written an axis2 client to a
WinFX service using the TCP transport and has any suggestions, I'd
appreciate it.
Thanks,
Bob
exception: Expected record type
'Version', found '60'
________________________________
From: DeRemer, Bob
[mailto:bob.deremer@sap.com]
Sent: Tuesday, May 23, 2006 2:40 PM
To: axis-user@ws.apache.org
Subject: HOW TO: get axis2 client tcp to
find Addressing module
I'm trying to write a simple java client
in axis2 that uses tcp transport to talk to my NET WinFX service. I'm
currently using the AXIOM approach vs the wsdl-gen'd proxy code. In the
AXIOM case, I get an exception when trying to engageModule. I'm looking
for some example that shows what I need to do in code to specify the
configurationContext - so it knows where the addressing.mar is, but
haven't been able to find any good example. The sample code in the std
source download doesn't appear to do anything to set this - as if the
java console client just knows where the Axis repository is.
Thanks in advance for any help,
Bob DeRemer
Sr. Software Architect
SAP Labs, LLC
350 Eagleview Blvd
Exton, PA 19341 USA
T1 +1.610.903.8000 x 136
T2 +1.717.505.7923
M +1.717.424.9595
E bob.deremer@sap.com
<ma...@sap.com>
Re: axis2 client to WinFX service via tcp [was RE: HOW TO: get axis2 client tcp to find Addressing module]
Posted by Martin Gainty <mg...@hotmail.com>.
HOW TO: get axis2 client tcp to find Addressing moduleGood Morning -
I would wind my way up the ISO stack starting at the Physical Layer and eventually winding up at Application
so something like
tracert hostname
will prove or disprove basic connectivity at the physical and network layers
My gut says you this maybe a datatype conversion or some sort of encoding issue...
Using UTF-8 or UTF-16 are very safe encoding styles..UTF816 maybe problematic as I havent seen any implementations thus far
Finally following Keep it simple if we passing information with datatypes as simple as possible then strings (and possibly ints) are best
Complex (Classes which are constructed of multiple primitive types)Datatypes are most problematic
Finally turn on max debugging ..grind thru every method in every class and output every parameter as well as announce entry and exit points
In any case this sounds like a fun project and I am sure you're having a ball with it,
Keep us apprised!
Martin --
*********************************************************************
This email message and any files transmitted with it contain confidential
information intended only for the person(s) to whom this email message is
addressed. If you have received this email message in error, please notify
the sender immediately by telephone or email and destroy the original
message without making a copy. Thank you.
----- Original Message -----
From: DeRemer, Bob
To: axis-user@ws.apache.org
Sent: Thursday, May 25, 2006 6:55 AM
Subject: RE: axis2 client to WinFX service via tcp [was RE: HOW TO: get axis2 client tcp to find Addressing module]
Martin for the suggestions! I'm actually pushing the envelope beyond NET 2.0 by using the WinFX beta software (i.e. Indigo or Windows Communication Framework - .NET 3.0 stuff). I can get the WSDL from the http endpoint I host on the same service, but I'm trying to verify that I can talk TCP from WinFX to/from Axis2. I will hook in TcpTrace to see what's going over the wire, as well as look at the actual WSDL my server is generating from the ?wsdl. It's a good learning experience none the less to really see what's going on under the hood on both sides.
Thanks again for the help. When I get the solution, I'll post it back here in case anyone else may come across this in the future.
-bob
----------------------------------------------------------------------------
From: Martin Gainty [mailto:mgainty@hotmail.com]
Sent: Wednesday, May 24, 2006 4:30 PM
To: axis-user@ws.apache.org
Subject: Re: axis2 client to WinFX service via tcp [was RE: HOW TO: get axis2 client tcp to find Addressing module]
Rob-
This is a Shot in the dark but why not use AXIS 1.3 to ensure compat with NET 2.0 framework
go to server-config.wsdd with which you are deploying the services verify these parameters to ensure compatibility with NET
<global-configuration>
<parameter name="enable2DArrayEncoding" value="true"/>
<parameter name="dotNetSoapEncFix" value="true"/>
</global-configuration>
redeploy the AXIS 1.3 service so that it will pickup the new parameters
Finally when client is constructing the call the 3rd parameter is encoding and I suspect this is NOT the encoding that is supported by the service
this is identified as the encoding attribute from the wsdl such as encoding="UTF-8"
Unfortunately without the WSDL you're flying blind..
Taking a quick peek at available charactersets I see UTF-8 and UTF-16 a more or less comprehensive list is located at http://www.oracle.com/technology/tech/xml/xdk/doc/production10g/doc/c/Getting_Started_C.html
I dont see any implementation of UTF816 which I would assume uses a transcoder
Finally if you dont need DBCS why not use UTF-8 supported here
http://schemas.xmlsoaporg/soap/encoding/
Anyone else?
M-
*********************************************************************
This email message and any files transmitted with it contain confidential
information intended only for the person(s) to whom this email message is
addressed. If you have received this email message in error, please notify
the sender immediately by telephone or email and destroy the original
message without making a copy. Thank you.
----- Original Message -----
From: DeRemer, Bob
To: axis-user@ws.apache.org
Sent: Wednesday, May 24, 2006 3:36 PM
Subject: axis2 client to WinFX service via tcp [was RE: HOW TO: get axis2 client tcp to find Addressing module]
I've been working this a bit more by changing the WinFX side to use a custom binding that is a tcp transport with a text encoding, but still get the following warnings/exceptions on the Axis side when debugging:
Can anyone comment on the PrimitiveAssertion warnings? Also, what is the default settings when the URI passed into the client stub is tcp-based? Specifically, what is the encoding, etc.
Thanks,
Bob
===========================
Warning: cannot find a module for process PrimitiveAssertion - {http://schemas.xmlsoap.org/ws/2004/09/policy/encoding}Utf816FFFECharacterEncoding
Warning: cannot find a module for process PrimitiveAssertion - {http://schemas.microsoft.com/ws/06/2004/mspolicy/netframing1}Streamed
Warning: cannot find a module for process PrimitiveAssertion - {http://www.w3.org/2005/08/addressing}UsingAddressing
org.apache.axis2.AxisFault: Connection reset; nested exception is:
com.ctc.wstx.exc.WstxIOException: Connection reset
at org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:126)
at org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:67)
at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:349)
at org.apache.axis2.description.OutInAxisOperationClient.execute(OutInAxisOperation.java:279)
at Service1Stub.MyOperation1(Service1Stub.java:177)
at InteropClientJava.main(InteropClientJava.java:49)
Caused by: com.ctc.wstx.exc.WstxIOException: Connection reset
at com.ctc.wstx.stax.WstxInputFactory.doCreateSR(WstxInputFactory.java:539)
at com.ctc.wstx.stax.WstxInputFactory.createSR(WstxInputFactory.java:592)
at com.ctc.wstx.stax.WstxInputFactory.createSR(WstxInputFactory.java:617)
at com.ctc.wstx.stax.WstxInputFactory.createXMLStreamReader(WstxInputFactoryjava:315)
at org.apache.axiom.om.util.StAXUtils.createXMLStreamReader(StAXUtils.java:51)
at org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:117)
... 5 more
Caused by: java.net.SocketException: Connection reset
at java.net.SocketInputStream.read(Unknown Source)
at java.net.SocketInputStream.read(Unknown Source)
at com.ctc.wstx.io.UTF8Reader.loadMore(UTF8Reader.java:354)
at com.ctc.wstx.io.UTF8Reader.read(UTF8Reader.java:110)
at com.ctc.wstx.io.ReaderBootstrapper.initialLoad(ReaderBootstrapper.java:240)
at com.ctc.wstx.io.ReaderBootstrapper.bootstrapInput(ReaderBootstrapper.java:127)
at com.ctc.wstx.stax.WstxInputFactory.doCreateSR(WstxInputFactory.java:534)
... 10 more
------------------------------------------------------------------------
From: Martin Gainty [mailto:mgainty@hotmail.com]
Sent: Wednesday, May 24, 2006 9:12 AM
To: axis-user@ws.apache.org
Subject: Re: HOW TO: get axis2 client tcp to find Addressing module
Robert-
Does WinFX have TLS debug support such as what is supported in Axis?
As this inquiry is not supporting Axis solutions this is prob O/T .accordingly I ask list members where should this be posted?
Martin --
*********************************************************************
This email message and any files transmitted with it contain confidential
information intended only for the person(s) to whom this email message is
addressed. If you have received this email message in error, please notify
the sender immediately by telephone or email and destroy the original
message without making a copy. Thank you.
----- Original Message -----
From: DeRemer, Bob
To: axis-user@ws.apache.org ; Martin Gainty
Sent: Tuesday, May 23, 2006 7:49 PM
Subject: RE: HOW TO: get axis2 client tcp to find Addressing module
I actually got that via WSDL2Java -uri. That's what generated my java proxy code for calling my service. The service is very simple:
interface IService
{
string MyOperation(string s);
}
I believe the problem is in the tcp transport settings. My guess [but I have to dig into it] is that the WinFX defaults for tcp and the axis2 defaults are probably not in sync.
Thanks for the suggestion, however!
--------------------------------------------------------------------
From: Martin Gainty [mailto:mgainty@hotmail.com]
Sent: Tuesday, May 23, 2006 5:30 PM
To: axis-user@ws.apache.org
Subject: Re: HOW TO: get axis2 client tcp to find Addressing module
Robert
It looks like you're going to need the WSDL the service generates so you may understand supported operations and parameters of the webservice
Anyone else ?
Martin --
*********************************************************************
This email message and any files transmitted with it contain confidential
information intended only for the person(s) to whom this email message is
addressed. If you have received this email message in error, please notify
the sender immediately by telephone or email and destroy the original
message without making a copy. Thank you.
----- Original Message -----
From: DeRemer, Bob
To: axis-user@ws.apache.org
Sent: Tuesday, May 23, 2006 4:54 PM
Subject: RE: HOW TO: get axis2 client tcp to find Addressing module
I was able to get this working by pointing the ConfigurationContext.createConfigurationContextFromFileSystem at the apache installation's axis 2 location. I am now struggling with getting the actual tcp connection established. The WinFX side is throwing an exception [see below]. I'm currently tracing the call using the NET trace tools. If anyone has [successfully] written an axis2 client to a WinFX service using the TCP transport and has any suggestions, I'd appreciate it.
Thanks,
Bob
exception: Expected record type 'Version', found '60'
----------------------------------------------------------------
From: DeRemer, Bob [mailto:bob.deremer@sap.com]
Sent: Tuesday, May 23, 2006 2:40 PM
To: axis-user@ws.apache.org
Subject: HOW TO: get axis2 client tcp to find Addressing module
I'm trying to write a simple java client in axis2 that uses tcp transport to talk to my .NET WinFX service. I'm currently using the AXIOM approach vs the wsdl-gen'd proxy code. In the AXIOM case, I get an exception when trying to engageModule. I'm looking for some example that shows what I need to do in code to specify the configurationContext - so it knows where the addressing.mar is, but haven't been able to find any good example. The sample code in the std source download doesn't appear to do anything to set this - as if the java console client just knows where the Axis repository is.
Thanks in advance for any help,
Bob DeRemer
Sr. Software Architect
SAP Labs, LLC
350 Eagleview Blvd
Exton, PA 19341 USA
T1 +1.610.903.8000 x 136
T2 +1.717.505.7923
M +1.717.424.9595
E bob.deremer@sap.com
RE: axis2 client to WinFX service via tcp [was RE: HOW TO: get axis2 client tcp to find Addressing module]
Posted by "DeRemer, Bob" <bo...@sap.com>.
Martin for the suggestions! I'm actually pushing the envelope beyond
.NET 2.0 by using the WinFX beta software (i.e. Indigo or Windows
Communication Framework - .NET 3.0 stuff). I can get the WSDL from the
http endpoint I host on the same service, but I'm trying to verify that
I can talk TCP from WinFX to/from Axis2. I will hook in TcpTrace to see
what's going over the wire, as well as look at the actual WSDL my server
is generating from the ?wsdl. It's a good learning experience none the
less to really see what's going on under the hood on both sides.
Thanks again for the help. When I get the solution, I'll post it back
here in case anyone else may come across this in the future.
-bob
________________________________
From: Martin Gainty [mailto:mgainty@hotmail.com]
Sent: Wednesday, May 24, 2006 4:30 PM
To: axis-user@ws.apache.org
Subject: Re: axis2 client to WinFX service via tcp [was RE: HOW
TO: get axis2 client tcp to find Addressing module]
Rob-
This is a Shot in the dark but why not use AXIS 1.3 to ensure
compat with NET 2.0 framework
go to server-config.wsdd with which you are deploying the
services verify these parameters to ensure compatibility with NET
<global-configuration>
<parameter name="enable2DArrayEncoding" value="true"/>
<parameter name="dotNetSoapEncFix" value="true"/>
</global-configuration>
redeploy the AXIS 1.3 service so that it will pickup the new
parameters
Finally when client is constructing the call the 3rd parameter
is encoding and I suspect this is NOT the encoding that is supported by
the service
this is identified as the encoding attribute from the wsdl such
as encoding="UTF-8"
Unfortunately without the WSDL you're flying blind..
Taking a quick peek at available charactersets I see UTF-8 and
UTF-16 a more or less comprehensive list is located at
http://www.oracle.com/technology/tech/xml/xdk/doc/production10g/doc/c/Ge
tting_Started_C.html
I dont see any implementation of UTF816 which I would assume
uses a transcoder
Finally if you dont need DBCS why not use UTF-8 supported here
http://schemas.xmlsoaporg/soap/encoding/
<http://schemas.xmlsoap.org/soap/encoding/>
Anyone else?
M-
*********************************************************************
This email message and any files transmitted with it contain
confidential
information intended only for the person(s) to whom this email
message is
addressed. If you have received this email message in error,
please notify
the sender immediately by telephone or email and destroy the
original
message without making a copy. Thank you.
----- Original Message -----
From: DeRemer, Bob <ma...@sap.com>
To: axis-user@ws.apache.org
Sent: Wednesday, May 24, 2006 3:36 PM
Subject: axis2 client to WinFX service via tcp [was RE:
HOW TO: get axis2 client tcp to find Addressing module]
I've been working this a bit more by changing the WinFX
side to use a custom binding that is a tcp transport with a text
encoding, but still get the following warnings/exceptions on the Axis
side when debugging:
Can anyone comment on the PrimitiveAssertion warnings?
Also, what is the default settings when the URI passed into the client
stub is tcp-based? Specifically, what is the encoding, etc.
Thanks,
Bob
===========================
Warning: cannot find a module for process
PrimitiveAssertion -
{http://schemas.xmlsoap.org/ws/2004/09/policy/encoding}Utf816FFFECharact
erEncoding
Warning: cannot find a module for process
PrimitiveAssertion -
{http://schemas.microsoft.com/ws/06/2004/mspolicy/netframing1}Streamed
Warning: cannot find a module for process
PrimitiveAssertion -
{http://www.w3.org/2005/08/addressing}UsingAddressing
org.apache.axis2.AxisFault: Connection reset; nested
exception is:
com.ctc.wstx.exc.WstxIOException: Connection reset
at
org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUti
ls.java:126)
at
org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUti
ls.java:67)
at
org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOper
ation.java:349)
at
org.apache.axis2.description.OutInAxisOperationClient.execute(OutInAxisO
peration.java:279)
at Service1Stub.MyOperation1(Service1Stub.java:177)
at InteropClientJava.main(InteropClientJava.java:49)
Caused by: com.ctc.wstx.exc.WstxIOException: Connection
reset
at
com.ctc.wstx.stax.WstxInputFactory.doCreateSR(WstxInputFactory.java:539)
at
com.ctc.wstx.stax.WstxInputFactory.createSR(WstxInputFactory.java:592)
at
com.ctc.wstx.stax.WstxInputFactory.createSR(WstxInputFactory.java:617)
at
com.ctc.wstx.stax.WstxInputFactory.createXMLStreamReader(WstxInputFactor
y.java:315)
at
org.apache.axiom.om.util.StAXUtils.createXMLStreamReader(StAXUtils.java:
51)
at
org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUti
ls.java:117)
... 5 more
Caused by: java.net.SocketException: Connection reset
at java.net.SocketInputStream.read(Unknown Source)
at java.net.SocketInputStream.read(Unknown Source)
at
com.ctc.wstx.io.UTF8Reader.loadMore(UTF8Reader.java:354)
at com.ctc.wstx.io.UTF8Reader.read(UTF8Reader.java:110)
at
com.ctc.wstx.io.ReaderBootstrapper.initialLoad(ReaderBootstrapper.java:2
40)
at
com.ctc.wstx.io.ReaderBootstrapper.bootstrapInput(ReaderBootstrapper.jav
a:127)
at
com.ctc.wstx.stax.WstxInputFactory.doCreateSR(WstxInputFactory.java:534)
... 10 more
________________________________
From: Martin Gainty [mailto:mgainty@hotmail.com]
Sent: Wednesday, May 24, 2006 9:12 AM
To: axis-user@ws.apache.org
Subject: Re: HOW TO: get axis2 client tcp to
find Addressing module
Robert-
Does WinFX have TLS debug support such as what
is supported in Axis?
As this inquiry is not supporting Axis solutions
this is prob O/T .accordingly I ask list members where should this be
posted?
Martin --
*********************************************************************
This email message and any files transmitted
with it contain confidential
information intended only for the person(s) to
whom this email message is
addressed. If you have received this email
message in error, please notify
the sender immediately by telephone or email and
destroy the original
message without making a copy. Thank you.
----- Original Message -----
From: DeRemer, Bob
<ma...@sap.com>
To: axis-user@ws.apache.org ; Martin
Gainty <ma...@hotmail.com>
Sent: Tuesday, May 23, 2006 7:49 PM
Subject: RE: HOW TO: get axis2 client
tcp to find Addressing module
I actually got that via WSDL2Java -uri.
That's what generated my java proxy code for calling my service. The
service is very simple:
interface IService
{
string MyOperation(string s);
}
I believe the problem is in the tcp
transport settings. My guess [but I have to dig into it] is that the
WinFX defaults for tcp and the axis2 defaults are probably not in sync.
Thanks for the suggestion, however!
________________________________
From: Martin Gainty
[mailto:mgainty@hotmail.com]
Sent: Tuesday, May 23, 2006 5:30 PM
To: axis-user@ws.apache.org
Subject: Re: HOW TO: get axis2 client
tcp to find Addressing module
Robert
It looks like you're going to need the
WSDL the service generates so you may understand supported operations
and parameters of the webservice
Anyone else ?
Martin --
*********************************************************************
This email message and any files
transmitted with it contain confidential
information intended only for the
person(s) to whom this email message is
addressed. If you have received this
email message in error, please notify
the sender immediately by telephone or
email and destroy the original
message without making a copy. Thank
you.
----- Original Message -----
From: DeRemer, Bob
<ma...@sap.com>
To: axis-user@ws.apache.org
Sent: Tuesday, May 23, 2006 4:54 PM
Subject: RE: HOW TO: get axis2 client
tcp to find Addressing module
I was able to get this working by
pointing the
ConfigurationContext.createConfigurationContextFromFileSystem at the
apache installation's axis 2 location. I am now struggling with getting
the actual tcp connection established. The WinFX side is throwing an
exception [see below]. I'm currently tracing the call using the NET
trace tools. If anyone has [successfully] written an axis2 client to a
WinFX service using the TCP transport and has any suggestions, I'd
appreciate it.
Thanks,
Bob
exception: Expected record type
'Version', found '60'
________________________________
From: DeRemer, Bob
[mailto:bob.deremer@sap.com]
Sent: Tuesday, May 23, 2006 2:40 PM
To: axis-user@ws.apache.org
Subject: HOW TO: get axis2 client tcp to
find Addressing module
I'm trying to write a simple java client
in axis2 that uses tcp transport to talk to my .NET WinFX service. I'm
currently using the AXIOM approach vs the wsdl-gen'd proxy code. In the
AXIOM case, I get an exception when trying to engageModule. I'm looking
for some example that shows what I need to do in code to specify the
configurationContext - so it knows where the addressing.mar is, but
haven't been able to find any good example. The sample code in the std
source download doesn't appear to do anything to set this - as if the
java console client just knows where the Axis repository is.
Thanks in advance for any help,
Bob DeRemer
Sr. Software Architect
SAP Labs, LLC
350 Eagleview Blvd
Exton, PA 19341 USA
T1 +1.610.903.8000 x 136
T2 +1.717.505.7923
M +1.717.424.9595
E bob.deremer@sap.com
<ma...@sap.com>
Re: axis2 client to WinFX service via tcp [was RE: HOW TO: get axis2 client tcp to find Addressing module]
Posted by Martin Gainty <mg...@hotmail.com>.
HOW TO: get axis2 client tcp to find Addressing moduleRob-
This is a Shot in the dark but why not use AXIS 1.3 to ensure compat with NET 2.0 framework
go to server-config.wsdd with which you are deploying the services verify these parameters to ensure compatibility with .NET
<global-configuration>
<parameter name="enable2DArrayEncoding" value="true"/>
<parameter name="dotNetSoapEncFix" value="true"/>
</global-configuration>
redeploy the AXIS 1.3 service so that it will pickup the new parameters
Finally when client is constructing the call the 3rd parameter is encoding and I suspect this is NOT the encoding that is supported by the service
this is identified as the encoding attribute from the wsdl such as encoding="UTF-8"
Unfortunately without the WSDL you're flying blind..
Taking a quick peek at available charactersets I see UTF-8 and UTF-16 a more or less comprehensive list is located at http://www.oracle.com/technology/tech/xml/xdk/doc/production10g/doc/c/Getting_Started_C.html
I dont see any implementation of UTF816 which I would assume uses a transcoder
Finally if you dont need DBCS why not use UTF-8 supported here
http://schemas.xmlsoap.org/soap/encoding/
Anyone else?
M-
*********************************************************************
This email message and any files transmitted with it contain confidential
information intended only for the person(s) to whom this email message is
addressed. If you have received this email message in error, please notify
the sender immediately by telephone or email and destroy the original
message without making a copy. Thank you.
----- Original Message -----
From: DeRemer, Bob
To: axis-user@ws.apache.org
Sent: Wednesday, May 24, 2006 3:36 PM
Subject: axis2 client to WinFX service via tcp [was RE: HOW TO: get axis2 client tcp to find Addressing module]
I've been working this a bit more by changing the WinFX side to use a custom binding that is a tcp transport with a text encoding, but still get the following warnings/exceptions on the Axis side when debugging:
Can anyone comment on the PrimitiveAssertion warnings? Also, what is the default settings when the URI passed into the client stub is tcp-based? Specifically, what is the encoding, etc.
Thanks,
Bob
===========================
Warning: cannot find a module for process PrimitiveAssertion - {http://schemas.xmlsoap.org/ws/2004/09/policy/encoding}Utf816FFFECharacterEncoding
Warning: cannot find a module for process PrimitiveAssertion - {http://schemas.microsoft.com/ws/06/2004/mspolicy/netframing1}Streamed
Warning: cannot find a module for process PrimitiveAssertion - {http://www.w3.org/2005/08/addressing}UsingAddressing
org.apache.axis2.AxisFault: Connection reset; nested exception is:
com.ctc.wstx.exc.WstxIOException: Connection reset
at org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:126)
at org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:67)
at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:349)
at org.apache.axis2.description.OutInAxisOperationClient.execute(OutInAxisOperation.java:279)
at Service1Stub.MyOperation1(Service1Stub.java:177)
at InteropClientJava.main(InteropClientJava.java:49)
Caused by: com.ctc.wstx.exc.WstxIOException: Connection reset
at com.ctc.wstx.stax.WstxInputFactory.doCreateSR(WstxInputFactory.java:539)
at com.ctc.wstx.stax.WstxInputFactory.createSR(WstxInputFactory.java:592)
at com.ctc.wstx.stax.WstxInputFactory.createSR(WstxInputFactory.java:617)
at com.ctc.wstx.stax.WstxInputFactory.createXMLStreamReader(WstxInputFactoryjava:315)
at org.apache.axiom.om.util.StAXUtils.createXMLStreamReader(StAXUtils.java:51)
at org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:117)
... 5 more
Caused by: java.net.SocketException: Connection reset
at java.net.SocketInputStream.read(Unknown Source)
at java.net.SocketInputStream.read(Unknown Source)
at com.ctc.wstx.io.UTF8Reader.loadMore(UTF8Reader.java:354)
at com.ctc.wstx.io.UTF8Reader.read(UTF8Reader.java:110)
at com.ctc.wstx.io.ReaderBootstrapper.initialLoad(ReaderBootstrapper.java:240)
at com.ctc.wstx.io.ReaderBootstrapper.bootstrapInput(ReaderBootstrapper.java:127)
at com.ctc.wstx.stax.WstxInputFactory.doCreateSR(WstxInputFactory.java:534)
... 10 more
----------------------------------------------------------------------------
From: Martin Gainty [mailto:mgainty@hotmail.com]
Sent: Wednesday, May 24, 2006 9:12 AM
To: axis-user@ws.apache.org
Subject: Re: HOW TO: get axis2 client tcp to find Addressing module
Robert-
Does WinFX have TLS debug support such as what is supported in Axis?
As this inquiry is not supporting Axis solutions this is prob O/T .accordingly I ask list members where should this be posted?
Martin --
*********************************************************************
This email message and any files transmitted with it contain confidential
information intended only for the person(s) to whom this email message is
addressed. If you have received this email message in error, please notify
the sender immediately by telephone or email and destroy the original
message without making a copy. Thank you.
----- Original Message -----
From: DeRemer, Bob
To: axis-user@ws.apache.org ; Martin Gainty
Sent: Tuesday, May 23, 2006 7:49 PM
Subject: RE: HOW TO: get axis2 client tcp to find Addressing module
I actually got that via WSDL2Java -uri. That's what generated my java proxy code for calling my service. The service is very simple:
interface IService
{
string MyOperation(string s);
}
I believe the problem is in the tcp transport settings. My guess [but I have to dig into it] is that the WinFX defaults for tcp and the axis2 defaults are probably not in sync.
Thanks for the suggestion, however!
------------------------------------------------------------------------
From: Martin Gainty [mailto:mgainty@hotmail.com]
Sent: Tuesday, May 23, 2006 5:30 PM
To: axis-user@ws.apache.org
Subject: Re: HOW TO: get axis2 client tcp to find Addressing module
Robert
It looks like you're going to need the WSDL the service generates so you may understand supported operations and parameters of the webservice
Anyone else ?
Martin --
*********************************************************************
This email message and any files transmitted with it contain confidential
information intended only for the person(s) to whom this email message is
addressed. If you have received this email message in error, please notify
the sender immediately by telephone or email and destroy the original
message without making a copy. Thank you.
----- Original Message -----
From: DeRemer, Bob
To: axis-user@ws.apache.org
Sent: Tuesday, May 23, 2006 4:54 PM
Subject: RE: HOW TO: get axis2 client tcp to find Addressing module
I was able to get this working by pointing the ConfigurationContext.createConfigurationContextFromFileSystem at the apache installation's axis 2 location. I am now struggling with getting the actual tcp connection established. The WinFX side is throwing an exception [see below]. I'm currently tracing the call using the NET trace tools. If anyone has [successfully] written an axis2 client to a WinFX service using the TCP transport and has any suggestions, I'd appreciate it.
Thanks,
Bob
exception: Expected record type 'Version', found '60'
--------------------------------------------------------------------
From: DeRemer, Bob [mailto:bob.deremer@sap.com]
Sent: Tuesday, May 23, 2006 2:40 PM
To: axis-user@ws.apache.org
Subject: HOW TO: get axis2 client tcp to find Addressing module
I'm trying to write a simple java client in axis2 that uses tcp transport to talk to my .NET WinFX service. I'm currently using the AXIOM approach vs the wsdl-gen'd proxy code. In the AXIOM case, I get an exception when trying to engageModule. I'm looking for some example that shows what I need to do in code to specify the configurationContext - so it knows where the addressing.mar is, but haven't been able to find any good example. The sample code in the std source download doesn't appear to do anything to set this - as if the java console client just knows where the Axis repository is.
Thanks in advance for any help,
Bob DeRemer
Sr. Software Architect
SAP Labs, LLC
350 Eagleview Blvd
Exton, PA 19341 USA
T1 +1.610.903.8000 x 136
T2 +1.717.505.7923
M +1.717.424.9595
E bob.deremer@sap.com