RE: WS-I Basic Security Profile
Andy, 1.1 will not be available until end of April. Can you try it with a 1.1 client running on windows or AIX and see if that works? Nadir K. Amra "Andy Weiss" <[EMAIL PROTECTED]> wrote on 03/24/2006 10:20:42 AM: > WSDL and captured response attached. I can't show you the HTTP > headers of the response. > > I also attached an XML file that shows the XML requests from both > the WSCC/C++ and .NET clients, as well as the HTTP headers. > > From: John Hawkins [mailto:[EMAIL PROTECTED] > Sent: Friday, March 24, 2006 11:03 AM > Subject: RE: WS-I Basic Security Profile > > Ok, can you put your wsdl and the captured response here pls. > [attachment "axiscpp_response.xml" deleted by Nadir > Amra/Rochester/IBM] [attachment "axiscpp_ots.wsdl" deleted by Nadir > Amra/Rochester/IBM] [attachment "axiscpp_compare.txt" deleted by > Nadir Amra/Rochester/IBM]
RE: WS-I Basic Security Profile
WSDL and captured response attached. I can't show you the HTTP headers of the response. I also attached an XML file that shows the XML requests from both the WSCC/C++ and .NET clients, as well as the HTTP headers. From: John Hawkins [mailto:[EMAIL PROTECTED] Sent: Friday, March 24, 2006 11:03 AMSubject: RE: WS-I Basic Security ProfileOk, can you put your wsdl and the captured response here pls. http://schemas.xmlsoap.org/soap/encoding/"; 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";> axiscpp_ots.wsdl Description: Binary data BELOW IS WHAT IS BEING SENT BY THE C++ CLIENT http://schemas.xmlsoap.org/soap/envelope/";?> http://schemas.xmlsoap.org/soap/envelope/"; xmlns:xsd="http://www.w3.org/2001/XMLSchema"; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"; xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"; xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/03/addressing"; xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"; xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"; soap:mustUnderstand="1"> 2006-03-23T00:00:01Z 2006-03-23T23:59:59Z ABCDE http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText";>ABCDE http://websvcs.otswebws";> 1 1 0 BELOW IS WHAT IS BEING SENT BY THE .NET CLIENT http://schemas.xmlsoap.org/soap/envelope/"; xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/03/addressing"; xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"; xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"; xmlns:xsd="http://www.w3.org/2001/XMLSchema"; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";> uuid:ebb37da2-8e52-418f-aaf3-dc49164f1aa4 http://schemas.xmlsoap.org/ws/2004/03/addressing/role/anonymous http://vhomer:9081/otsWebWS/services/OTSWebSvcs 2006-03-23T20:42:59Z 2006-03-23T20:47:59Z http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd";> ABCDE http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText";>ABCDE 8pFTiRjEUNKgqQyfygeKkw== 2006-03-23T20:42:59Z http://websvcs.otswebws";> 1 1 0 BELOW ARE THE HTTP HEADERS BEING SENT BY THE C++ CLIENT POST /otsWebWS/services/OTSWebSvcs HTTP/1.1 Host: 10.4.13.70:9080 Content-Type: text/xml; charset=UTF-8 SOAPAction: "" Content-Length: 1122 BELOW ARE THE HTTP HEADERS BEING SENT BY THE .NET CLIENT POST /otsWebWS/services/OTSWebSvcs HTTP/1.1 User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; MS Web Services Client Protocol 1.1.4322.2032) Content-Type: text/xml; charset=utf-8 SOAPAction: "" Content-Length: 1689 Expect: 100-continue Connection: Keep-Alive Host: 10.4.13.70:9080
RE: WS-I Basic Security Profile
Ok, can you put your wsdl and the captured response here pls. "Andy Weiss" <[EMAIL PROTECTED]> 24/03/2006 15:30 Please respond to "Apache AXIS C User List" To "'Apache AXIS C User List'" cc Subject RE: WS-I Basic Security Profile The client sends a request, and receives a response. I know this because I see both request and response in the TCP/IP monitor. After the response is sent from the server, that is when the AxisException is generated. From: John Hawkins [mailto:[EMAIL PROTECTED] Sent: Friday, March 24, 2006 10:12 AM Subject: RE: WS-I Basic Security Profile so, just to confirm - at what point is the message happening - does the client manage to send a request aqnd receive a response? When using AxisCPP I am receiving: AxisExeption: 67
RE: WS-I Basic Security Profile
The client sends a request, and receives a response. I know this because I see both request and response in the TCP/IP monitor. After the response is sent from the server, that is when the AxisException is generated. From: John Hawkins [mailto:[EMAIL PROTECTED] Sent: Friday, March 24, 2006 10:12 AMSubject: RE: WS-I Basic Security Profile so, just to confirm - at what point is the message happening - does the client manage to send a request aqnd receive a response? When using AxisCPP I am receiving: AxisExeption: 67
RE: WS-I Basic Security Profile
This says that WSCC 1.1. is based on Axis C++ 1.5http://www-03.ibm.com/servers/eserver/iseries/software/xml/ From: John Hawkins [mailto:[EMAIL PROTECTED] Sent: Friday, March 24, 2006 10:25 AMSubject: RE: WS-I Basic Security Profile What version of wscc are you running with? This header used to be the case but isn't with the 1.1 code (which is based on AXIS 1.6 )
RE: WS-I Basic Security Profile
The readme.txt says it is Version 1 Release 0, shipped on or after March 2005. Can this be the problem? Where can I get V1R1? From: John Hawkins [mailto:[EMAIL PROTECTED] Sent: Friday, March 24, 2006 10:25 AMSubject: RE: WS-I Basic Security Profile What version of wscc are you running with? This header used to be the case but isn't with the 1.1 code (which is based on AXIS 1.6 )
RE: WS-I Basic Security Profile
What version of wscc are you running with? This header used to be the case but isn't with the 1.1 code (which is based on AXIS 1.6 ) "Andy Weiss" <[EMAIL PROTECTED]> 24/03/2006 14:49 Please respond to "Apache AXIS C User List" To "'Apache AXIS C User List'" cc Subject RE: WS-I Basic Security Profile A little more information I just found. The .NET client's XML request starts off with: xml version="1.0" encoding="utf-8"?> The C++ client's XML reqeust starts off with: xml version="1.0" encoding="http://schemas.xmlsoap.org/soap/envelope/"?> A colleague wonders whether the encoding generated by the C++ client is valid. 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 :-) When using AxisCPP I am receiving: AxisExeption: 67
RE: WS-I Basic Security Profile
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" To "'Apache AXIS C User List'" 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
RE: WS-I Basic Security Profile
A little more information I just found. The .NET client's XML request starts off with:xml version="1.0" encoding="utf-8"?> The C++ client's XML reqeust starts off with:xml version="1.0" encoding="http://schemas.xmlsoap.org/soap/envelope/"?>A colleague wonders whether the encoding generated by the C++ client is valid. From: John Hawkins [mailto:[EMAIL PROTECTED] Sent: Friday, March 24, 2006 8:41 AMSubject: RE: WS-I Basic Security Profile You're going to have to give us something to go on here :-) When using AxisCPP I am receiving: AxisExeption: 67
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 AMSubject: 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
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. "Andy Weiss" <[EMAIL PROTECTED]> 24/03/2006 13:16 Please respond to "Apache AXIS C User List" To "'Apache AXIS C User List'" cc Subject RE: WS-I Basic Security Profile I am doing that, the line of code I have is this: // Catch an AXIS exception cout << "AxisException: " << e.getExceptionCode() << " " << e.what() << endl; And the line I get on the console is, in its entirety: AxisExeption: 67 From: John Hawkins [mailto:[EMAIL PROTECTED] Sent: Friday, March 24, 2006 4:12 AM To: Apache AXIS C User List Subject: RE: WS-I Basic Security Profile please do an exception.what(); When using AxisCPP I am receiving: AxisExeption: 67 Can someone help me find out what this means? I can't find any documentation about exception numbers.
RE: WS-I Basic Security Profile
I am doing that, the line of code I have is this: // Catch an AXIS exceptioncout << "AxisException: " << e.getExceptionCode() << " " << e.what() << endl; And the line I get on the console is, in its entirety: AxisExeption: 67 From: John Hawkins [mailto:[EMAIL PROTECTED] Sent: Friday, March 24, 2006 4:12 AMTo: Apache AXIS C User ListSubject: RE: WS-I Basic Security Profileplease do an exception.what(); When using AxisCPP I am receiving: AxisExeption: 67Can someone help me find out what this means? I can't find anydocumentation about exception numbers.
RE: WS-I Basic Security Profile
please do an exception.what(); "Andy Weiss" <[EMAIL PROTECTED]> 23/03/2006 20:23 Please respond to "Apache AXIS C User List" To "'Apache AXIS C User List'" cc Subject RE: WS-I Basic Security Profile When using AxisCPP I am receiving: AxisExeption: 67 Can someone help me find out what this means? I can't find any documentation about exception numbers. Thanks, Andy
RE: WS-I Basic Security Profile
When using AxisCPP I am receiving: AxisExeption: 67 Can someone help me find out what this means? I can't find any documentation about exception numbers. Thanks, Andy
RE: WS-I Basic Security Profile
Does anyone use AxisCPP in its OS/400 (IBM iSeries) form, namely WSCC? If so, I'd love to hear from you so that we can possibly share some tips and tricks. Andy Weiss [EMAIL PROTECTED]
RE: WS-I Basic Security Profile
axiscpp does have ssl. support which has satisfied most users thus far - this was put in before ws-i security profile was around. We have concentrated on being ws-i profile 1.0 and then 1.1 compliant (when it came) So, sure, ws-i * profiles would be great but in reality the time taken would be time out of stabilising the code and enhancing its basic SOAP support (it's a lot harder in C than in Java to cover platforms :-) It's not on the radar that the axisCPP client will support ws-i security as this sort of function will be put into axis2C. hope this helps, John. "Andy Weiss" <[EMAIL PROTECTED]> 21/03/2006 17:59 Please respond to "Apache AXIS C User List" To "'Apache AXIS C User List'" cc Subject RE: WS-I Basic Security Profile Interesting ... No criticism here, just curiosity: If Axis CPP does not support the WS-I Basic Security Profile ... then what do web service clients written in CPP do? Do they consume web services which do not require authentication? Do they consume web services which require authentication using a method other than WS-I? If so, why is this true? WS-I is supposed to be the "industry standard", is it not? I guess what I want to know is, am I going down the wrong path by generating (and consuming in a test application) a web service which abides by WS-I security standards and forces all clients to abide by it as well? If the consensus is that the standard is not to be relied upon, I'd like to know. Andy Weiss -Original Message- From: Samisa Abeysinghe [mailto:[EMAIL PROTECTED] Sent: Monday, March 20, 2006 7:47 PM To: Apache AXIS C User List Subject: Re: WS-I Basic Security Profile I havent got any sample code on this (may be others would), but just a tought, may be you can write a handler to do this and contribute that to the community. Samisa... Andy Weiss wrote: >If that is the case, does anyone have any sample code that manipulates the >SOAP header "manually" and adds security token elements? That is what I am >going to have to do. > >-----Original Message- > >Andy Weiss wrote: > > > >>I need to know if Axis C++ supports the WS-I Basic Security profile at >>all, namely the Username token. >> >> > >I am afraid not, there has been no developments in this front. >Samisa... > > > > >
RE: WS-I Basic Security Profile
Interesting ... No criticism here, just curiosity: If Axis CPP does not support the WS-I Basic Security Profile ... then what do web service clients written in CPP do? Do they consume web services which do not require authentication? Do they consume web services which require authentication using a method other than WS-I? If so, why is this true? WS-I is supposed to be the "industry standard", is it not? I guess what I want to know is, am I going down the wrong path by generating (and consuming in a test application) a web service which abides by WS-I security standards and forces all clients to abide by it as well? If the consensus is that the standard is not to be relied upon, I'd like to know. Andy Weiss -Original Message- From: Samisa Abeysinghe [mailto:[EMAIL PROTECTED] Sent: Monday, March 20, 2006 7:47 PM To: Apache AXIS C User List Subject: Re: WS-I Basic Security Profile I havent got any sample code on this (may be others would), but just a tought, may be you can write a handler to do this and contribute that to the community. Samisa... Andy Weiss wrote: >If that is the case, does anyone have any sample code that manipulates the >SOAP header "manually" and adds security token elements? That is what I am >going to have to do. > >-Original Message- > >Andy Weiss wrote: > > > >>I need to know if Axis C++ supports the WS-I Basic Security profile at >>all, namely the Username token. >> >> > >I am afraid not, there has been no developments in this front. >Samisa... > > > > >
Re: WS-I Basic Security Profile
I havent got any sample code on this (may be others would), but just a tought, may be you can write a handler to do this and contribute that to the community. Samisa... Andy Weiss wrote: If that is the case, does anyone have any sample code that manipulates the SOAP header "manually" and adds security token elements? That is what I am going to have to do. -Original Message- Andy Weiss wrote: I need to know if Axis C++ supports the WS-I Basic Security profile at all, namely the Username token. I am afraid not, there has been no developments in this front. Samisa...
RE: WS-I Basic Security Profile
If that is the case, does anyone have any sample code that manipulates the SOAP header "manually" and adds security token elements? That is what I am going to have to do. -Original Message- Andy Weiss wrote: > I need to know if Axis C++ supports the WS-I Basic Security profile at > all, namely the Username token. I am afraid not, there has been no developments in this front. Samisa...
Re: WS-I Basic Security Profile
Andy Weiss wrote: I need to know if Axis C++ supports the WS-I Basic Security profile at all, namely the Username token. I am afraid not, there has been no developments in this front. Samisa... I haven't seen talk about this on the list since May of 2005. Any progress? Andy Weiss
Re: WS-I Basic Security Profile
Title: Re: WS-I Basic Security Profile I need to know if Axis C++ supports the WS-I Basic Security profile at all, namely the Username token. I haven't seen talk about this on the list since May of 2005. Any progress? Andy Weiss