OK,

so, just to confirm - at what point is the message happening - does the client manage to send a request aqnd receive a response?




"Andy Weiss" <[EMAIL PROTECTED]>

24/03/2006 14:10

Please respond to
"Apache AXIS C User List" <axis-c-user@ws.apache.org>

To
"'Apache AXIS C User List'" <axis-c-user@ws.apache.org>
cc
Subject
RE: WS-I Basic Security Profile





Here's the gory details:
 
 
I have a webservice written in Java running under Websphere 6.0.2.1.
 
The webservice employs WS-Security, namely requiring a Username token in the SOAP header.  Any SOAP requests received without the proper WS-Security token will be rejected.  The Username token is validated against an external LDAP database.
 
I need to generate "sample" client applications in a variety of platforms to illustrate to our customers how to interact with the webservice.
 
I have generated a .NET C# webservice client.  It works beautifully.
I have generated a J2EE Java webservice client.  It works beautifully.
I have generated a J2SE Java webservice client, but I haven't gotten that working yet.
 
I need to generate ... wait for it ... an RPG client.  RPG is an old procedural language that runs on the AS/400 platform made by IBM.  The operating system is OS/400, nothing like Linux, nothing like Windows.
 
RPG toolset is very very limited.  But just like the .NET framework, RPG can call programs written in other languages, as lng as they are compiled on the AS/400.
 
IBM offers a product called "XML Toolkit for iSeries" (another name for AS/400).  Part of that toolkit is a product called "WSCC - Web Services Client for C++".  It permits you to generate a C++ client which will run on the AS/400.
 
The WSCC product is based on Axis C++, that is no secret.  If IBM has made some custom changes, I can't see any.  The documentation for Axis C++ seem to be just fine for me.
 
I intend to get the AS/400 C++ client working, and then call it from an RPG program.  This is an acceptable direction.
 
When I use the C++ client without inserting any security tokens, the service answers me with "Missing SOAP elements in header", and this is what I expect.
 
So I made a C++ handler, and I have it insert the proper WS-Security tokens into the SOAP header.  To do so, I had to properly modify the AXISCPP.CONF file, and the WSDD file.  I know I got these right because when I got them wrong I received errors stating that the handler class could not be found, or the WSDD could not be found, or the AXISCPP.CONF could not be found.
 
I've compared the C++ SOAP request against the .NET SOAP request (which works), and they both seem to be equivalent.  I can compare these by using a TCP/IP monitor supplied by Websphere.
 
The first request from the C++ client immediately generates the "AxisException 67" on the client side.  No errors in the Websphere server log.  No other errors in the job log or on the console on the client side.
 
Is ANYONE else in this crazy world trying to do this on an AS/400?  I bet not.


From: John Hawkins [mailto:[EMAIL PROTECTED]
Sent:
Friday, March 24, 2006 8:41 AM
Subject:
RE: WS-I Basic Security Profile


You're going to have to give us something to go on here :-)

Like - what are you doing. Is this is the client or server?

Are you creating a service, calling a method.

Have you managed to call the service by this time - etc. etc. etc.



When using AxisCPP I am receiving:
              AxisExeption: 67

Reply via email to