Re: Axis C++ client for SAPBC
Hello! I've tried to execute my client AXIS C++for SAP BC from VC6.0 and I've received the same execption: Exception : DLOPEN FAILED in loading parser library even I've set up the AXISCPP_HOME enviroment variable to the path ofaxiscpp.conf. Can somebody help me to pass this error? Thank you! FlorinSamisa Abeysinghe [EMAIL PROTECTED] wrote: axiscpp.conf file is required by the client to locate the transport and parser.It should be located in AXISCPP_HOME (this envioronment variable must be set by you)Samisa...Pico Florin wrote: Hi! I've tried to create a client that sends SOAP messages to SAPBC using AXIS C++. Running my code I've received this error: "Exception : DLOPEN FAILED in loading parser library" I've understood that this problem could appear when the axiscpp.conf is not well configured. Firstly, in my case where this file should be located? Because in your examples you have some specifications just for Apache servers. Is this file needed for all the clients that we want to implement? Secondly, I will show you how I've tried to connect to SAP BC in order to see if the buss ines is OK: InteropTestPortType::InteropTestPortType() :Stub(" ", APTHTTP1_1) { m_pCall-setEndpointURI("http://localhost:/soap"); } InteropTestPortType::~InteropTestPortType() { } /*Methods corresponding to the web service methods*/ /* * This method wrap the service method echoString */ xsd__string InteropTestPortType::echoString(xsd__string Value0) { xsd__string Ret = NULL; const char* pcCmplxFaultName; try { if (AXIS_SUCCESS != m_pCall-initialize(CPP_RPC_PROVIDER)) return Ret; m_pCall-setTransportProperty(SOAPACTION_HEADER , "base#echoString"); m_pCall-setSOAPVersion(SOAP_VER_1_1); m_pCall-setOperation("SOAPRPCTESTCLIENT", "SCANDLOG"); applyUserPreferences(); m_pCall-addParameter((void*)Value0, "xml", XSD_STRING); if (AXIS_SUCCESS == m_pCall-invoke()) { if(AXIS_SUCCESS == m_pCall-checkMessage("hello", "SCANDLOG")) { Ret = m_pCall-getElementAsString("_return", 0); } } m_pCall-unInitialize(); return Ret; } catch(AxisException e) { int iExceptionCode = e.getExceptionCode(); if(AXISC_NODE_VALUE_MISMATCH_EXCEPTION != iExceptionCode) { m_pCall-unInitialize(); throw base_AxisClientException(e.what()); } ISoapFault* pSoapFault = (ISoapFault*) m_pCall-checkFault("Fault","http://localhost/axis/base" ); if(pSoapFault) { m_pCall-unInitialize(); throw base_AxisClientException(pSoapFault); } else throw; } } //base int main(int argc, char* argv[]) { try { & lt; BR InteropTestPortType ws; printf("invoking echoString...\n"); //testing echoString AxisChar* pachEchoStringResult = ws.echoString("hello world"); printf("pachEchoStringResult\n"); } catch(AxisException e) { printf("Exception : %s\n", e.what()); } catch(exception e) { printf("Unknown exception has occured\n"); } catch(...) { printf("Unknown exception has occured\n"); } return 0; } Thank you, F. Yahoo! Messenger NEW - crystal clear PC to PC calling worldwide with voicemail Yahoo! Messenger NEW - crystal clear PC to PC calling worldwide with voicemail Yahoo! Messenger NEW - crystal clear PC to PC calling worldwide with voicemail
Re: Axis C++ client for SAPBC
OK, What version of xerces are you running (it needs to be 2.2.0)? - and can you cut and paste your config file her pls. thanks, John. Pico Florin [EMAIL PROTECTED] 03/10/2005 08:01 Please respond to Apache AXIS C User List To Apache AXIS C User List axis-c-user@ws.apache.org cc Subject Re: Axis C++ client for SAPBC Hello! I've tried to execute my client AXIS C++ for SAP BC from VC6.0 and I've received the same execption: Exception : DLOPEN FAILED in loading parser library even I've set up the AXISCPP_HOME enviroment variable to the path of axiscpp.conf. Can somebody help me to pass this error? Thank you! Florin Samisa Abeysinghe [EMAIL PROTECTED] wrote: axiscpp.conf file is required by the client to locate the transport and parser. It should be located in AXISCPP_HOME (this envioronment variable must be set by you) Samisa... Pico Florin wrote: Hi! I've tried to create a client that sends SOAP messages to SAPBC using AXIS C++. Running my code I've received this error: Exception : DLOPEN FAILED in loading parser library I've understood that this problem could appear when the axiscpp.conf is not well configured. Firstly, in my case where this file should be located? Because in your examples you have some specifications just for Apache servers. Is this file needed for all the clients that we want to implement? Secondly, I will show you how I've tried to connect to SAP BC in order to see if the buss ines is OK: InteropTestPortType::InteropTestPortType() :Stub( , APTHTTP1_1) { m_pCall-setEndpointURI(http://localhost:/soap); } InteropTestPortType::~InteropTestPortType() { } /*Methods corresponding to the web service methods*/ /* * This method wrap the service method echoString */ xsd__string InteropTestPortType::echoString(xsd__string Value0) { xsd__string Ret = NULL; const char* pcCmplxFaultName; try { if (AXIS_SUCCESS != m_pCall-initialize(CPP_RPC_PROVIDER)) return Ret; m_pCall-setTransportProperty(SOAPACTION_HEADER , base#echoString); m_pCall-setSOAPVersion(SOAP_VER_1_1); m_pCall-setOperation(SOAPRPCTESTCLIENT, SCANDLOG); applyUserPreferences(); m_pCall-addParameter((void*)Value0, xml, XSD_STRING); if (AXIS_SUCCESS == m_pCall-invoke()) { if(AXIS_SUCCESS == m_pCall-checkMessage(hello, SCANDLOG)) { Ret = m_pCall-getElementAsString(_return, 0); } } m_pCall-unInitialize(); return Ret; } catch(AxisException e) { int iExceptionCode = e.getExceptionCode(); if(AXISC_NODE_VALUE_MISMATCH_EXCEPTION != iExceptionCode) { m_pCall-unInitialize(); throw base_AxisClientException(e.what()); } ISoapFault* pSoapFault = (ISoapFault*) m_pCall-checkFault(Fault,http://localhost/axis/base ); if(pSoapFault) { m_pCall-unInitialize(); throw base_AxisClientException(pSoapFault); } else throw; } } //base int main(int argc, char* argv[]) { try { lt; BR InteropTestPortType ws; printf(invoking echoString...\n); //testing echoString AxisChar* pachEchoStringResult = ws.echoString(hello world); printf(pachEchoStringResult\n); } catch(AxisException e) { printf(Exception : %s\n, e.what()); } catch(exception e) { printf(Unknown exception has occured\n); } catch(...) { printf(Unknown exception has occured\n); } return 0; } Thank you, F. Yahoo! Messenger NEW - crystal clear PC to PC calling worldwide with voicemail Yahoo! Messenger NEW - crystal clear PC to PC calling worldwide with voicemail Yahoo! Messenger NEW - crystal clear PC to PC calling worldwide with voicemail
Re: Newbie question: How to view debug messages in web service?
You should be able to use trace and then output appears in the trace file. If you compile with trace on then entry and exit trace will be put into the code automatically for you. In addition to that you can also add your own statements and relevant points. Alok Mathur [EMAIL PROTECTED] 01/10/2005 19:49 Please respond to Apache AXIS C User List To axis-user@ws.apache.org cc axis-c-user@ws.apache.org Subject Newbie question: How to view debug messages in web service? Hello, Axis: 1.5 Final; Web server: Simple Axis server I compiled one the sample web services and am trying to add debug messages. somehow, simple printf does not work and am also unable to write to a file. Is there a way I can see debug messages on the screen while the service processes the request? Any help will be great. Thanks, Alok __ Yahoo! for Good Donate to the Hurricane Katrina relief effort. http://store.yahoo.com/redcross-donate3/
Re: Axis C++ client for SAPBC
Hi Florin, AXISCPP_HOME is used to find the axiscpp.conf file that contains information on explicitly where to find the associated DLLs. The problem is that these DLLs use other DLLs and the location of these DLLs needs to be on your path. For example, AxisXMLParserXerces.dll relies on xerces-c_2_2_0.dll (I think it also works with other, newer versions, but lets not go into that now!). If the xerces DLL is not on the path then AxisXMLParserXerces.dll will load then immediately unload and will to the user look like it has not loaded. Infact it did load, but could not load the libraries that it is dependant on and so therefore immediately unloaded I hope this makes things a little clearer :-) Regards, Fred Preston. John Hawkins/UK/[EMAIL PROTECTED] 03/10/2005 08:40 Please respond to Apache AXIS C User List To: Apache AXIS C User List axis-c-user@ws.apache.org cc: Subject: Re: Axis C++ client for SAPBC OK, What version of xerces are you running (it needs to be 2.2.0)? - and can you cut and paste your config file her pls. thanks, John. Pico Florin [EMAIL PROTECTED] 03/10/2005 08:01 Please respond to Apache AXIS C User List To Apache AXIS C User List axis-c-user@ws.apache.org cc Subject Re: Axis C++ client for SAPBC Hello! I've tried to execute my client AXIS C++ for SAP BC from VC6.0 and I've received the same execption: Exception : DLOPEN FAILED in loading parser library even I've set up the AXISCPP_HOME enviroment variable to the path of axiscpp.conf. Can somebody help me to pass this error? Thank you! Florin Samisa Abeysinghe [EMAIL PROTECTED] wrote: axiscpp.conf file is required by the client to locate the transport and parser. It should be located in AXISCPP_HOME (this envioronment variable must be set by you) Samisa... Pico Florin wrote: Hi! I've tried to create a client that sends SOAP messages to SAPBC using AXIS C++. Running my code I've received this error: Exception : DLOPEN FAILED in loading parser library I've understood that this problem could appear when the axiscpp.conf is not well configured. Firstly, in my case where this file should be located? Because in your examples you have some specifications just for Apache servers. Is this file needed for all the clients that we want to implement? Secondly, I will show you how I've tried to connect to SAP BC in order to see if the buss ines is OK: InteropTestPortType::InteropTestPortType() :Stub( , APTHTTP1_1) { m_pCall-setEndpointURI(http://localhost:/soap); } InteropTestPortType::~InteropTestPortType() { } /*Methods corresponding to the web service methods*/ /* * This method wrap the service method echoString */ xsd__string InteropTestPortType::echoString(xsd__string Value0) { xsd__string Ret = NULL; const char* pcCmplxFaultName; try { if (AXIS_SUCCESS != m_pCall-initialize(CPP_RPC_PROVIDER)) return Ret; m_pCall-setTransportProperty(SOAPACTION_HEADER , base#echoString); m_pCall-setSOAPVersion(SOAP_VER_1_1); m_pCall-setOperation(SOAPRPCTESTCLIENT, SCANDLOG); applyUserPreferences(); m_pCall-addParameter((void*)Value0, xml, XSD_STRING); if (AXIS_SUCCESS == m_pCall-invoke()) { if(AXIS_SUCCESS == m_pCall-checkMessage(hello, SCANDLOG)) { Ret = m_pCall-getElementAsString(_return, 0); } } m_pCall-unInitialize(); return Ret; } catch(AxisException e) { int iExceptionCode = e.getExceptionCode(); if(AXISC_NODE_VALUE_MISMATCH_EXCEPTION != iExceptionCode) { m_pCall-unInitialize(); throw base_AxisClientException(e.what()); } ISoapFault* pSoapFault = (ISoapFault*) m_pCall-checkFault(Fault,http://localhost/axis/base ); if(pSoapFault) { m_pCall-unInitialize(); throw base_AxisClientException(pSoapFault); } else throw; } } //base int main(int argc, char* argv[]) { try { lt; BR InteropTestPortType ws; printf(invoking echoString...\n); //testing echoString AxisChar* pachEchoStringResult = ws.echoString(hello world); printf(pachEchoStringResult\n); } catch(AxisException e) { printf(Exception : %s\n, e.what()); } catch(exception e) { printf(Unknown exception has occured\n); } catch(...) { printf(Unknown exception has occured\n); } return 0; } Thank you, F. Yahoo! Messenger NEW - crystal clear PC to PC calling worldwide with voicemail Yahoo! Messenger NEW - crystal clear PC to PC calling worldwide with voicemail Yahoo! Messenger NEW - crystal clear PC to PC calling worldwide with voicemail
Re: Axis C++ client for SAPBC
if you wanted to you could write a handler to look at the message and do what you want with it - but why is tcpmon an issue for you? Pico Florin [EMAIL PROTECTED] 03/10/2005 11:27 Please respond to Apache AXIS C User List To Apache AXIS C User List axis-c-user@ws.apache.org cc Subject Re: Axis C++ client for SAPBC Thank you John for your indication about axiscpp.config. The parser was set up wrong(I've misspelled the name). So this problem is solve. But I have another question for the AXIS C++ users: how can I see the the sent SOAP message without using tpcmon?(the requested message) And a suggestion: why the Call class doesn't have a method to see its content as SOAP message(the same suggestion for AXIS Java)? Thank you, Florin To help you stay safe and secure online, we've developed the all new Yahoo! Security Centre.
Re: Axis C++ client for SAPBC
Regarding the tpcmon: I have the SAP BC serveron port . If I want to listen this port on tpcmon I receive this message: Address already in use JVM_Bind. So, what port should I listen inorder to see the request message? Thank you, Florin Yahoo! Messenger NEW - crystal clear PC to PC calling worldwide with voicemail
Re: Axis C++ client for SAPBC
You should listen on any other port (9081?) and then forward to . You then need to change the url of your service to e.g. http://myservice:9081/service Pico Florin [EMAIL PROTECTED] 03/10/2005 12:53 Please respond to Apache AXIS C User List To Apache AXIS C User List axis-c-user@ws.apache.org cc Subject Re: Axis C++ client for SAPBC Regarding the tpcmon: I have the SAP BC server on port . If I want to listen this port on tpcmon I receive this message: Address already in use JVM_Bind. So, what port should I listen in order to see the request message? Thank you, Florin Yahoo! Messenger NEW - crystal clear PC to PC calling worldwide with voicemail
RE: After Axis install Apache fails to start
Interesting enough apache -K start works like a charm, but trying to start the service EVEN AFTER REBOOT, fails with the same error messages listed originally. So now we have a working test bed on windows, and are preparing to move this over to Suse SLES9. Unfortunately, this is proving even more painful than the windows build and install, we can't even get the Linux side to start up at all. Any help on the Linux side would be greatly appreciated!! Thanks, John 4400 Computer Drive 2nd floor, Mailstop D239 Ext: 35983 -Original Message- From: Parthipan [mailto:[EMAIL PROTECTED] Sent: Thursday, September 29, 2005 6:20 AM To: [EMAIL PROTECTED] Cc: axis-c-user@ws.apache.org Subject: Re: After Axis install Apache fails to start On 9/29/05, Parthipan [EMAIL PROTECTED] wrote: On 9/29/05, Parthipan [EMAIL PROTECTED] wrote: On 9/28/05, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: Yes, and all the deps are met, first thing I tried ;-). I utterly baffled, I am writing a little test harness to ensure that a loadlibrary will succeed, I'm sure it will but it never hurts to check Can you try starting apache in the foreground by calling the start in console option? If it succeeds I'm thinking that some env value is not available to the user the service is running as. Adding to my earlier post, please take a look at your env settings. Populate the system variables (as opposed to the user variables) if your services are to get them (unless of course the services are running as yourself). If after all the changes it doesn't work (but works in the foreground) then do a restart of the system. Windows seems to have been designed for that. :) ~parthi Thanks, John 4400 Computer Drive 2nd floor, Mailstop D239 Ext: 35983 -Original Message- From: Parthipan [mailto:[EMAIL PROTECTED] Sent: Wednesday, September 28, 2005 3:11 AM To: Apache AXIS C User List Cc: [EMAIL PROTECTED] Subject: Re: After Axis install Apache fails to start Can you load the mod_axis2.dll into the dependency walker (Visual Studio Tools) and see if all dependent libraries are loadable? On 9/27/05, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: Hello, I have the EXACT same issue as Thushantha who originally posted this. I am running this version of Apache C:\apache -v Server version: Apache/2.0.54 Server built: Apr 16 2005 14:25:31 I too added following lines to the end of the httpd.conf file. LoadModule axis_module modules/mod_axis2.dll Location /axis SetHandler axis /Location axiscpp.conf file as follows, LogPath:C:\Program Files\Apache Group\Apache2\Axis\logs\AxisLog.txt WSDDFilePath:C:\Program Files\Apache Group\Apache2\axis\conf\server.wsdd XMLParser:C:\Program Files\Apache Group\Apache2\Axis\lib\XMLParser.dll Transport_http:C:\Program\Files\Apacheroup\Apache2Axis\lib\HTTPTransport.dll Channel_HTTP:C:\Program Files\Apache Group\Apache\Axis\lib\HTTPChannel.dll When I look at the event log I have the following error: The Apache service named reported the following error: Syntax error on line 956 of C:/Program Files/Apache Group/Apache2/conf/httpd.conf: . For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp http://go.microsoft.com/fwlink/events.asp . Well turns out when I look up line 956 it's this line: LoadModule axis_module modules/mod_axis2.dll Upon further investigation I have found that the 'axis_module' part of the line is what is causing the syntax error, any ideas If I remove this line Apache starts and runs ok, but Axis is dead, of course, Can some one help me as well on this issue? Thank you, John D. Cooper Principal Software Eng. -- http://www.linux.lk/~lparth/ -- http://www.linux.lk/~lparth/ -- http://www.linux.lk/~lparth/ -- http://www.linux.lk/~lparth/
RE: After Axis install Apache fails to start
can you run simpleaxisserver first - outside of the apache runtime? [EMAIL PROTECTED] 03/10/2005 15:18 Please respond to Apache AXIS C User List To [EMAIL PROTECTED], [EMAIL PROTECTED] cc axis-c-user@ws.apache.org Subject RE: After Axis install Apache fails to start Interesting enough apache -K start works like a charm, but trying to start the service EVEN AFTER REBOOT, fails with the same error messages listed originally. So now we have a working test bed on windows, and are preparing to move this over to Suse SLES9. Unfortunately, this is proving even more painful than the windows build and install, we can't even get the Linux side to start up at all. Any help on the Linux side would be greatly appreciated!! Thanks, John 4400 Computer Drive 2nd floor, Mailstop D239 Ext: 35983 -Original Message- From: Parthipan [mailto:[EMAIL PROTECTED] Sent: Thursday, September 29, 2005 6:20 AM To: [EMAIL PROTECTED] Cc: axis-c-user@ws.apache.org Subject: Re: After Axis install Apache fails to start On 9/29/05, Parthipan [EMAIL PROTECTED] wrote: On 9/29/05, Parthipan [EMAIL PROTECTED] wrote: On 9/28/05, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: Yes, and all the deps are met, first thing I tried ;-). I utterly baffled, I am writing a little test harness to ensure that a loadlibrary will succeed, I'm sure it will but it never hurts to check Can you try starting apache in the foreground by calling the start in console option? If it succeeds I'm thinking that some env value is not available to the user the service is running as. Adding to my earlier post, please take a look at your env settings. Populate the system variables (as opposed to the user variables) if your services are to get them (unless of course the services are running as yourself). If after all the changes it doesn't work (but works in the foreground) then do a restart of the system. Windows seems to have been designed for that. :) ~parthi Thanks, John 4400 Computer Drive 2nd floor, Mailstop D239 Ext: 35983 -Original Message- From: Parthipan [mailto:[EMAIL PROTECTED] Sent: Wednesday, September 28, 2005 3:11 AM To: Apache AXIS C User List Cc: [EMAIL PROTECTED] Subject: Re: After Axis install Apache fails to start Can you load the mod_axis2.dll into the dependency walker (Visual Studio Tools) and see if all dependent libraries are loadable? On 9/27/05, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: Hello, I have the EXACT same issue as Thushantha who originally posted this. I am running this version of Apache C:\apache -v Server version: Apache/2.0.54 Server built: Apr 16 2005 14:25:31 I too added following lines to the end of the httpd.conf file. LoadModule axis_module modules/mod_axis2.dll Location /axis SetHandler axis /Location axiscpp.conf file as follows, LogPath:C:\Program Files\Apache Group\Apache2\Axis\logs\AxisLog.txt WSDDFilePath:C:\Program Files\Apache Group\Apache2\axis\conf\server.wsdd XMLParser:C:\Program Files\Apache Group\Apache2\Axis\lib\XMLParser.dll Transport_http:C:\Program\Files\Apacheroup\Apache2Axis\lib\HTTPTransport.dll Channel_HTTP:C:\Program Files\Apache Group\Apache\Axis\lib\HTTPChannel.dll When I look at the event log I have the following error: The Apache service named reported the following error: Syntax error on line 956 of C:/Program Files/Apache Group/Apache2/conf/httpd.conf: . For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp http://go.microsoft.com/fwlink/events.asp . Well turns out when I look up line 956 it's this line: LoadModule axis_module modules/mod_axis2.dll Upon further investigation I have found that the 'axis_module' part of the line is what is causing the syntax error, any ideas If I remove this line Apache starts and runs ok, but Axis is dead, of course, Can some one help me as well on this issue? Thank you, John D. Cooper Principal Software Eng. -- http://www.linux.lk/~lparth/ -- http://www.linux.lk/~lparth/ -- http://www.linux.lk/~lparth/ -- http://www.linux.lk/~lparth/
Re: AXIS-C++ Build problems
Try this setting in your build.common.properties. Line 17 in my file. # Apache versions to be used server.apache13 = false server.apache20 = false On 10/3/05, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: Yes, and no matter what I set in the properties file, it always tries to build the apache2_mod, which I don't need, and don't have the apache source for, any ideas? Thanks, John 4400 Computer Drive 2nd floor, Mailstop D239 Ext: 35983 From: John Hawkins [mailto:[EMAIL PROTECTED]] Sent: Monday, October 03, 2005 10:59 AM To: Apache AXIS C User List Subject: RE: AXIS-C++ Build problems have you tried the ANT build? [EMAIL PROTECTED] 03/10/2005 15:21 Please respond to Apache AXIS C User List To axis-c-user@ws.apache.org , [EMAIL PROTECTED], [EMAIL PROTECTED] cc Subject RE: AXIS-C++ Build problems Hi I'm having a very similar problem on SLES 9 using apache 1.3.33 Help would be appreciated. Thanks, John 4400 Computer Drive 2nd floor, Mailstop D239 Ext: 35983 From: Sankarshana Madhavarao [mailto:[EMAIL PROTECTED]] Sent: Sunday, October 02, 2005 12:58 AM To: Parthipan Cc: Apache AXIS C User List Subject: Re: AXIS-C++ Build problems Thanks again for the quick response... I will try out Kaffe on MIPS and see how it goes On 10/1/05, Parthipan [EMAIL PROTECTED] wrote: On 10/2/05, Sankarshana Madhavarao wrote: Hi, Thanks for the reply.I am trying to build AXIS-C++ on MIPS-LINUX. I suppose, ANT BUILD process needs JDK to be installed. But I don't think JDK is supported on MIPS processors.. Yes, Java is required for ant. Please give some pointers. How about trying kaffe? - Hide quoted text - On 10/1/05, Parthipan [EMAIL PROTECTED] wrote: Please try the ant build process. On 10/1/05, Sankarshana Madhavarao [EMAIL PROTECTED] wrote: Hi, I took the latest source of AXIS-C++ and tried to compile it on redhat linux. I am facing lots of problems. 1. After executing autogen.sh, I got the configure script generated. However, When it throws lots of erros. Some of them are Makefile.in http://Makefile.in not found on samples folder etc. 2. Also, autogen.sh is supposed to generate Makefile.in http://Makefile.i= n files in all the source folders. But it does not generate these Makefile.in http://Makefile.in. What could be the reason for this??? Is there any other tool that needs to be installed in order for this build to successfully happen?? 3. If I ignore the above errors and continue to do ./configure, I will get more errors like, Makefile.in http://Makefile.in not found in src folder and hence not generating Makefile. Please advise. Thanks Sankarshana M -- http://www.linux.lk/~lparth/ -- http://www.linux.lk/~lparth/
WSSE4j - verifying signature problem
Hi I have a problem with configuring axis web-service client so that it can get and verify the soap-envelope signature. All I found on wsse pages is the example client-deploy.wsdd file. Part that is responsible for the signature things looks like that: handler type=java:org.apache.ws.axis.security.WSDoAllReceiver parameter name=action value=Signature/ parameter name=signaturePropFile value=crypto.properties/ /handler where crypto.properties file includes my keystore name, alias of the key entry and keystore password. Unfortunatelly it's not enough - it doesn't work. I get the message error: WSDoAllReceiver: security processing failed (actions mismatch) I wonder if some of you did that and could give me some clue how to make that work? reagrds, ania
RE: Wsdl2java generated code
Title: Wsdl2java generated code Hi! You can define the complex type starting after element name="Request" as a global type with e.g. complexType name="RequestType" and reuse it in both element definitions with element name="Request" type="RequestType". If you have additonale elements in the Update case you can extend the RequestType with xsd:extension. For more information look for documentation of XML Schema. Best regards,--DI Günter GrossbergerConsultant Tel: +43 1 329 50 161Software AG Österreich Fax: +43 1 329 50 171Guglgasse 7-9 GSM: +43 676 833 29 2611030 Wien http://www.softwareag.com/austria From: Coyne, Jimmy [mailto:[EMAIL PROTECTED] Sent: Friday, September 30, 2005 6:03 PMTo: axis-user@ws.apache.orgSubject: Wsdl2java generated code Hi all , Our customer have designed there different services such as CreateAccount , UpdateAccount , DeleteAccount etc in a very a very similar manner. For example CreateAccount element name="CreateAccount" complexType sequence element name="Request" complexType sequence element name="accountDetails" minOccurs="0" complexType sequence element name="country" type="string"/ element name="accountId" type="string"/ element name="Profile" complexType sequence element name="name" type="string" minOccurs="0"/ /sequence /complexType /element /sequence.. Is the same as UpdateAccount except for a few elements names .. element name="UpdateAccount" complexType sequence element name="Request" complexType sequence element name="accountDetails" minOccurs="0" complexType sequence element name="country" type="string"/ element name="accountId" type="string"/ element name="Profile" complexType sequence element name="name" type="string" minOccurs="0"/ /sequence /complexType /element /sequence. . . . . . . Using wsdl2java The classes created very similar CreateAccount--- generates CreateAccountRequest CreateAccountRequestAccountDetails CreateAccountRequestAccountDetailsProfile . . . . . . . UpdateAccountRequest - generates UpdateAccountRequest UpdateAccountRequestAccountDetails UpdateAccountRequestAccountDetailsProfile . . . . . . . . . . . . . . . Although the classes are almost identical , because they don't extend any common class , I cant see a way of building up the binding objects in a clean way i.e. I will have to write code to set the binding object for all cases with no reuse . Can any one think of a clean way to solve this problem ? Thanks Jimmy
[Deb] Call and HttpsUrlConnection
hi, I'm new on this ML so I begin to introduce myself. I'm french (sorry for my poor english), 23 years old and I'm work in an informatic service company as development ingenior. I'm sorry to begin this story with a request. I hope continue in a more active way. Here the deal. I've constructed a HttpsURLConnection: SSLContext sslContext = SSLContext.getInstance(SSL); sslContext.init( null, new TrustManager[] {new MyTrustManager()}, SecureRandom.getInstance(SHA1PRNG)); SSLSocketFactory sslSocketFactory = sslContext.getSocketFactory(); URL url = new URL(...); HttpsURLConnection urlc = (HttpsURLConnection)url.openConnection(); urlc.setSSLSocketFactory(sslSocketFactory); By this way, I can define a TrustManager for my sockets. I would like to send my SOAP request via this HttpsURLConnection. I looked arouned the API unsuccessfully. Anyone can help me? Even a birth of idea would be appreciated. Thanks. -o--
WSDL2java error
Hello all, I want to use Axis to generate the java classes from a WSDL. I have tried both older Axis 1.1 and Axis 1.2.1 and i get this exception: -- D:\axis-1_2_1java org.apache.axis.wsdl.WSDL2Java --verbose configurator.wsdl Parsing XML file: configurator.wsdl java.lang.NullPointerException at org.apache.axis.wsdl.toJava.JavaGeneratorFactory.constructSignatures( JavaGeneratorFactory.java:1394) at org.apache.axis.wsdl.toJava.JavaGeneratorFactory.generatorPass(JavaGe neratorFactory.java:213) at org.apache.axis.wsdl.gen.Parser.generate(Parser.java:425) at org.apache.axis.wsdl.gen.Parser.access$000(Parser.java:45) at org.apache.axis.wsdl.gen.Parser$WSDLRunnable.run(Parser.java:362) at java.lang.Thread.run(Thread.java:536) I have set the log4j. properties file to DEBUG but i don't see any log messages in the axis.log file. The classpath is set to include all jar files from the lib folder. What could be wrong? Thanks, Andras.
Re: class-cast exception while writing the client for the webservice
Hi krthekeyan, I have transformed files into datasources which further into datahandlers and send them to the webservice .The service directly takes the datahandlers as parameters. In this process i am getting the exception mentioned below. So give me the process how to follow ? Thanks in advance. Thanks, KiranBabu.K It could be that you are setting the file in datasource from client . and might be trying to take it directly from datahandler. Regards, krthekeyan.s karusala kiranbabu wrote: Hi, I have created one webservice and deployed that webservice jar file in AXIS/WEB-INF/lib/ directory. I have accessed the wdsl of the webservice by giving the url for the webservice.here there is no problem. After th at, we have written the client and passing the datahandlers to the webservice . 1.It is not invoking the method of the webservice and it is giving the exception as mentioned below. HOW CAN WE RESOLVE THIS ISSUE? plz help me in this regard, it's very urgent for me. THE EXCEPTION COMING IS: C:\Documents and Settings\Administrator\Desktop\Downloads\webservice\newwebservice_client\clientjavac -d . XSLTClient.java C:\Documents and Settings\Administrator\Desktop\Downloads\webservice\newwebservice_client\clientjava xsltransform/XSLTClient sample.xml sample.xsl the inFileDataHandler [EMAIL PROTECTED] the xslFileDataHandler [EMAIL PROTECTED] AxisFault faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException faultSubcode: faultString: java.lang.ClassCastException faultActor: faultNode: faultDetail: {http://xml.apache.org/axis/}hostname:SGSC1 java.lang.ClassCastException at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:221) at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:128) at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087) at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source) at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) at org.apache.xerces.parsers.XMLParser.parse(Unknown Source) at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source) at javax.xml.parsers.SAXParser.parse(Unknown Source) at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227) at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696) at org.apache.axis.Message.getSOAPEnvelope(Message.java:424) at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62) at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206) at org.apache.axis.client.Call.invokeEngine(Call.java:2765) at org.apache.axis.client.Call.invoke(Call.java:2748) at org.apache.axis.client.Call.invoke(Call.java:2424) at org.apache.axis.client.Call.invoke(Call.java:2347) at org.apache.axis.client.Call.invoke(Call.java:1804) at xsltransform.XSLTClient.main(XSLTClient.java:72) C:\Documents and Settings\Administrator\Desktop\Downloads\webservice\newwebservice_client\client __ Yahoo! Mail - PC Magazine Editors' Choice 2005 http://mail.yahoo.com __ Yahoo! for Good Donate to the Hurricane Katrina relief effort. http://store.yahoo.com/redcross-donate3/
Regarding SOAP Header Information in WSDL
Hi, I am using Axis 1.2.1 When I am deploying a web service,the WSDL file is being generated. But I want to incorporate inside the WSDL ,that when the client is sending the SOAP Request, he/she must send the SOAP header with some elements inside the header too. This I want to convey inside the WSDL which is being generated. Is it possible? Thanks in advance, Regards, Anshuk __ Yahoo! for Good Donate to the Hurricane Katrina relief effort. http://store.yahoo.com/redcross-donate3/
Re: [axis2 v0.92] wsdl file
Hi Gordon; It should work , but you need to do some modifications 1. You need to have services.xml instead of service.xml 2. There should be a service element in side services.xml similar to service element in WSDL file as an example , say you have a wsdl with following service element service name=MySerevice port name=MySerevicePort binding=mh:MySereviceBinding soap:address location=http://www.Monson-Haefel.com/jwsbook/MySereviceService/ /port /service Then the services.xml should look like follows op 1 : services service MySerevice .. .. /service /services op 2 : there should be a service archive file with the name MySerevice.aar and its services.xml should look like follows service .. /service Thanks, Deepal ~Future is Open~ - Original Message - From: Gordon Gekko [EMAIL PROTECTED] To: axis-user@ws.apache.org Sent: Monday, October 03, 2005 4:17 PM Subject: [axis2 v0.92] wsdl file Hi all! In axis2 v0.91 in order to associate a wsdl file to a web service, I needed to put in the META-INF directory and name service.wsdl. But in axis2 v0.92 this doesn't seem to work anymore. What should I do? Many thanks, Diego
Re: [axis2 v0.92] wsdl file
hi ; small correction; services service name=MySerevice .. .. /service /services sorry abt that Thanks, Deepal ~Future is Open~ - Original Message - From: Deepal Jayasinghe [EMAIL PROTECTED] To: axis-user@ws.apache.org Sent: Monday, October 03, 2005 5:24 PM Subject: Re: [axis2 v0.92] wsdl file Hi Gordon; It should work , but you need to do some modifications 1. You need to have services.xml instead of service.xml 2. There should be a service element in side services.xml similar to service element in WSDL file as an example , say you have a wsdl with following service element service name=MySerevice port name=MySerevicePort binding=mh:MySereviceBinding soap:address location=http://www.Monson-Haefel.com/jwsbook/MySereviceService/ /port /service Then the services.xml should look like follows op 1 : services service MySerevice .. .. /service /services op 2 : there should be a service archive file with the name MySerevice.aar and its services.xml should look like follows service .. /service Thanks, Deepal ~Future is Open~ - Original Message - From: Gordon Gekko [EMAIL PROTECTED] To: axis-user@ws.apache.org Sent: Monday, October 03, 2005 4:17 PM Subject: [axis2 v0.92] wsdl file Hi all! In axis2 v0.91 in order to associate a wsdl file to a web service, I needed to put in the META-INF directory and name service.wsdl. But in axis2 v0.92 this doesn't seem to work anymore. What should I do? Many thanks, Diego
RE: Wsdl2java generated code
Title: Message Hi there ,Im afraid I have no control over the schema and will not be allowed to change it :( -Original Message-From: Grossberger, Guenter [mailto:[EMAIL PROTECTED] Sent: 03 October 2005 09:19To: axis-user@ws.apache.orgSubject: RE: Wsdl2java generated code Hi! You can define the complex type starting after element name="Request" as a global type with e.g. complexType name="RequestType" and reuse it in both element definitions with element name="Request" type="RequestType". If you have additonale elements in the Update case you can extend the RequestType with xsd:extension. For more information look for documentation of XML Schema. Best regards,--DI Günter GrossbergerConsultant Tel: +43 1 329 50 161Software AG Österreich Fax: +43 1 329 50 171Guglgasse 7-9 GSM: +43 676 833 29 2611030 Wien http://www.softwareag.com/austria From: Coyne, Jimmy [mailto:[EMAIL PROTECTED] Sent: Friday, September 30, 2005 6:03 PMTo: axis-user@ws.apache.orgSubject: Wsdl2java generated code Hi all , Our customer have designed there different services such as CreateAccount , UpdateAccount , DeleteAccount etc in a very a very similar manner. For example CreateAccount element name="CreateAccount" complexType sequence element name="Request" complexType sequence element name="accountDetails" minOccurs="0" complexType sequence element name="country" type="string"/ element name="accountId" type="string"/ element name="Profile" complexType sequence element name="name" type="string" minOccurs="0"/ /sequence /complexType /element /sequence.. Is the same as UpdateAccount except for a few elements names .. element name="UpdateAccount" complexType sequence element name="Request" complexType sequence element name="accountDetails" minOccurs="0" complexType sequence element name="country" type="string"/ element name="accountId" type="string"/ element name="Profile" complexType sequence element name="name" type="string" minOccurs="0"/ /sequence /complexType /element /sequence. . . . . . . Using wsdl2java The classes created very similar CreateAccount--- generates CreateAccountRequest CreateAccountRequestAccountDetails CreateAccountRequestAccountDetailsProfile . . . . . . . UpdateAccountRequest - generates UpdateAccountRequest UpdateAccountRequestAccountDetails UpdateAccountRequestAccountDetailsProfile . . . . . . . . . . . . . . . Although the classes are almost identical , because they don't extend any common class , I cant see a way of building up the binding objects in a clean way i.e. I will have to write code to set the binding object for all cases with no reuse . Can any one think of a clean way to solve this problem ? Thanks Jimmy
Fw: WSDL2JAVA error: java.lang.NullPointerException in getNewQName
Hi, I developed a simple service, document style,with attachedfiles in input message. Creating stubs, wsdl2java throws exception listed below: java.lang.NullPointerException at org.apache.axis.wsdl.toJava.Utils.getNewQName(Utils.java:704) at org.apache.axis.wsdl.toJava.JavaStubWriter.writeOperation(JavaStubWriter.java:779) at org.apache.axis.wsdl.toJava.JavaStubWriter.writeFileBody(JavaStubWriter.java:355) at org.apache.axis.wsdl.toJava.JavaWriter.generate(JavaWriter.java:148) at org.apache.axis.wsdl.toJava.JavaBindingWriter.generate(JavaBindingWriter.java:141) at org.apache.axis.wsdl.toJava.JavaGeneratorFactory$Writers.generate(JavaGeneratorFactory.java:284) at org.apache.axis.wsdl.gen.Parser.generate(Parser.java:328) at org.apache.axis.wsdl.gen.Parser.access$000(Parser.java:82) at org.apache.axis.wsdl.gen.Parser$WSDLRunnable.run(Parser.java:246) at java.lang.Thread.run(Thread.java:534) That is my wsdl: ?xml version="1.0" encoding="UTF-8"?wsdl:definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:impl="http://localhost:8080/axis/services/Somma" xmlns:intf="http://localhost:8080/axis/services/Somma" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns1="http://servizi" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://localhost:8080/axis/services/Somma"wsdl:typesschema targetNamespace="http://servizi" xmlns="http://www.w3.org/2001/XMLSchema"element name="somma" type="xsd:anyType"/complexType name="ArrayOfBinary" complexContent restriction base="soapenc:Array" attribute ref="soapenc:arrayType" wsdl:arrayType="xsd:base64Binary[]"/ /restriction /complexContent /complexType/schemaschema targetNamespace="http://localhost:8080/axis/services/Somma" xmlns="http://www.w3.org/2001/XMLSchema"element name="sommaReturn" type="xsd:anyType"//schema/wsdl:typeswsdl:message name="sommaResponse"wsdl:part name="sommaReturn" element="impl:sommaReturn"//wsdl:messagewsdl:message name="sommaRequest"wsdl:part name="body" element="tns1:somma"/wsdl:part name="allegati" type="tns1:ArrayOfBinary"//wsdl:messagewsdl:portType name="MioServizio3"wsdl:operation name="somma"wsdl:input name="sommaRequest" message="impl:sommaRequest"/wsdl:output name="sommaResponse" message="impl:sommaResponse"//wsdl:operation/wsdl:portTypewsdl:binding name="SommaSoapBinding" type="impl:MioServizio3"wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/wsdl:operation name="somma"wsdlsoap:operation/wsdl:inputwsdlsoap:body part="body" use="literal"/mime:multipartRelatedmime:partwsdlsoap:body parts="body" use="literal"//mime:partmime:partmime:content part="allegati" type="image/gif"/mime:content part="allegati" type="image/jpeg"//mime:part/mime:multipartRelated/wsdl:inputwsdl:outputwsdlsoap:body use="literal" namespace="http://localhost:8080/axis/services/Somma"//wsdl:output/wsdl:operation/wsdl:bindingwsdl:service name="MioServizio3Service"wsdl:port name="Somma" binding="impl:SommaSoapBinding"wsdlsoap:address location="http://localhost:8080/axis/services/Somma"//wsdl:port/wsdl:service/wsdl:definitions What' is my mystake? Thanks in advance Ivan.
RE: [Deb] Call and HttpsUrlConnection
Doesn't the saaj connection.call() method support https url? I think so... John Rasmussen DataPower Technology, Inc. One Alewife Center Cambridge, MA 02140, US Office: US +1 617.864.0455 x359 Fax: US +1 617.864.0458 -Original Message- From: moi oziris [mailto:[EMAIL PROTECTED] Sent: Monday, October 03, 2005 5:12 AM To: axis-user@ws.apache.org Subject: [Deb] Call and HttpsUrlConnection hi, I'm new on this ML so I begin to introduce myself. I'm french (sorry for my poor english), 23 years old and I'm work in an informatic service company as development ingenior. I'm sorry to begin this story with a request. I hope continue in a more active way. Here the deal. I've constructed a HttpsURLConnection: SSLContext sslContext = SSLContext.getInstance(SSL); sslContext.init( null, new TrustManager[] {new MyTrustManager()}, SecureRandom.getInstance(SHA1PRNG)); SSLSocketFactory sslSocketFactory = sslContext.getSocketFactory(); URL url = new URL(...); HttpsURLConnection urlc = (HttpsURLConnection)url.openConnection(); urlc.setSSLSocketFactory(sslSocketFactory); By this way, I can define a TrustManager for my sockets. I would like to send my SOAP request via this HttpsURLConnection. I looked arouned the API unsuccessfully. Anyone can help me? Even a birth of idea would be appreciated. Thanks. -o--
Response of SOAP message wtih Attachment
I am using Apache Axis 1.2 / Tomcat 4 Is it possible for a client application to get back data as MIME attachment from a web service?From the example code snippets below, the service successfully attaches a file to a SOAP messagebut when the client application tries to get the attachment count, it is zero. Any ideas why? Thanks. Gabsaga Code snippet for MyMessageService message-style service.MessageContext msgCntxt = MessageContext.getCurrentContext();SOAPMessage msg = msgCntxt.getMessage();DataHandler dataHander = new DataHandler(new FileDataSource("C:\\tomcat_directory\\webapps\\axis\\WEB-INF\\attachments\\res_message.xml"));AttachmentPart attachment = msg.createAttachmentPart(dataHander);attachment.setContentId("attached_processed_file");msg.addAttachmentPart(attachment); Code snippet for Client application sending request to MyMessageService message-style service.SOAPConnection conn = SOAPConnectionFactory.newInstance().createConnection();SOAPMessage response = conn.call(message, "http://localhost/axis/services/MyMessageService"); SOAPPart responseSp = response.getSOAPPart();SOAPEnvelope responseSe = responseSp.getEnvelope();SOAPBody responseBody = responseSe.getBody(); //Get attached messageif(!responseBody.hasFault()){int numOfAttachments = response.countAttachments();System.out.println("\n\nNumber of attachments in message = " + numOfAttachments);}
xmlns disappears
Hello, I have a Doc-Lit service with an operation can accept a type containing xsd:any. This is intended to allow the service to receive any document (from any namespace). e.g. 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 sendDoc xmlns=http://ns1.namespace.com; MyDocument xmlns=http://ns2.namespace.com; a/b/ /MyDocument /sendDoc /soapenv:Body soapenv:Envelope I need to serialise the body element as a string (which I do using DOM2Writer.nodeToString). However this serialised version does not contain the xmlns attribute. e.g. it would appear as: MyDocument a/b/ /MyDocument This is causing huge problems since the namespace is essential for us during later processing... Any suggestions? Thanks, M
Problem with WSDL2Ws generated code
Hello everyone, I am using Axis 1.5 final and am having problems with the code generation tool. This is an excerpt from my WSDL file .. .. .. xs:simpleType name=NonNegativeDurationType xs:restriction base=xs:duration xs:minInclusive value=P0Y0M0DT0H0M0S / /xs:restriction /xs:simpleType xs:simpleType name=ExpirationType xs:union memberTypes=xs:dateTime tns:NonNegativeDurationType / /xs:simpleType .. .. .. When I run the code generation tool, I get the following message: Possible error in class ExpirationType: class with no attributes and the generated class has not member variables! Can someone suggest a resolution? Thanks, Alok Mathur __ Yahoo! Mail - PC Magazine Editors' Choice 2005 http://mail.yahoo.com
Uncaught Exception Traces - how to get Axis to tell me what they are
I currently am getting the following fault returned from my Server when communicating. 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 faultcodesoapenv:Server.userException/faultcode faultstringjava.lang.NullPointerException/faultstring detail ns1:hostname xmlns:ns1=http://xml.apache.org/axis/;wiproxy/ns1:hostname /detail /soapenv:Fault /soapenv:Body /soapenv:Envelope It looks to me like there is an Null Pointer Exception that Axis is catching, and turning into a Fault. Could somebody PLEASE tell me how or where in the chain I can get Axis to give me a trace on this. I have logs in the request/response flow, but apparently it doesn't get that far I'm not sure how i can debug any problems like this if I can't get Axis to give me more information. It appears that if I turn log4j debug on, it may provide me the trace, but I'm filling up disk space. Also, I can't get it to fail when I turn it on. Is there even a handler that I can override for the express purposes of examining the axis fault and logging it. I'm at my wits end - help, please. Hopefully it's something shamefully simple that I'm missing.
Re: Uncaught Exception Traces - how to get Axis to tell me what they are
turn on debug for this log4j cateogory only - org.apache.axis.EXCEPTIONS - it is the category used for all faults thrown on the server-side. I currently am getting the following fault returned from my Server when communicating. 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 faultcodesoapenv:Server.userException/faultcode faultstringjava.lang.NullPointerException/faultstring detail ns1:hostname xmlns:ns1=http://xml.apache.org/axis/;wiproxy/ns1:hostname /detail /soapenv:Fault /soapenv:Body /soapenv:Envelope It looks to me like there is an Null Pointer Exception that Axis is catching, and turning into a Fault. Could somebody PLEASE tell me how or where in the chain I can get Axis to give me a trace on this. I have logs in the request/response flow, but apparently it doesn't get that far I'm not sure how i can debug any problems like this if I can't get Axis to give me more information. It appears that if I turn log4j debug on, it may provide me the trace, but I'm filling up disk space. Also, I can't get it to fail when I turn it on. Is there even a handler that I can override for the express purposes of examining the axis fault and logging it. I'm at my wits end - help, please. Hopefully it's something shamefully simple that I'm missing.
Forwarding to the appropriate port
Hello all I have some webservices deployed using axis in the oracle 10G application server. I actually wanted to some advice from the group. 1. If it advisable to run webservices in oracle 10g Application server as opposed to Tomcat? (They do run, but I want to know if anyone thinks that this should not be done) 2. My configuration is as follows Requests are internet - APACHE HTTP server (port 80) - 10g App Server (port 7780) Response is 10g App server (port 7780) - Apache HTTP server (port 80) - internet Entry point is the apache web server on port 80. Now, the webservices work fine in this configuration except when I try to get to the WSDL file. The url to which it goes is like http://abc.xyz.com:7780/service/abc?wsdl I want to know Why it goes directly to port 7780, I am sure some of you have faced this problem in apache-tomcat configuration too. Currently I am not able to see the WSDL file itself. Let me know what can be done so that wsdl file appears on port 80. Also interestingly if I invoke the webservice on port 80 it WORKS. Suggesting that apache forwards the request properly to the 10g App server instance, the WS is invoked and a corresponding response is sent. I have got VERY poor tech support from oracle with this. Regards Mayur
Re: Getting Server's certificate form an axis client
Bill - I'm not sure about doing this is C but for java see the following thread.. http://marc.theaimsgroup.com/?l=axis-userm=112497369029586w=2 Same idea for C, grab the request then the certificate. Regards ..Chris On Mon, 3 Oct 2005, Bill Kuker wrote: I am writing a SOAP client using Axis. I have it connecting to a server with SSL no problem, and it is sending the client certificate to the server and checking the server's certificate against my trust store. No problems. I want to verify WHICH trusted cert was used to verify the server, and get information from the server's cert. (the DN mainly). I need to do this before I send the actual request to the server, as the request contains sensitive information. Any suggestions? I am used to the C libraries where I can provide my own verification callback. Thanks, -Bill Kuker -- Chris Johnson [EMAIL PROTECTED]
RE: Getting Server's certificate form an axis client
Thanks, I can use that on the server end of things, but I am confised as to how I'd use this in a client. Isn't the HTTPServletRequest something I'd be getting from my servlet container on the server side? I am the client, I am connecting to a server, and I need to see the cert the server sent to me. Thanks, -Bill Kuker -Original Message- From: Christopher S. Johnson [mailto:[EMAIL PROTECTED] Sent: Monday, October 03, 2005 3:41 PM To: axis-user@ws.apache.org Subject: Re: Getting Server's certificate form an axis client Bill - I'm not sure about doing this is C but for java see the following thread.. http://marc.theaimsgroup.com/?l=axis-userm=112497369029586w=2 Same idea for C, grab the request then the certificate. Regards ..Chris On Mon, 3 Oct 2005, Bill Kuker wrote: I am writing a SOAP client using Axis. I have it connecting to a server with SSL no problem, and it is sending the client certificate to the server and checking the server's certificate against my trust store. No problems. I want to verify WHICH trusted cert was used to verify the server, and get information from the server's cert. (the DN mainly). I need to do this before I send the actual request to the server, as the request contains sensitive information. Any suggestions? I am used to the C libraries where I can provide my own verification callback. Thanks, -Bill Kuker -- Chris Johnson [EMAIL PROTECTED]
newbiew question on WSDD and WSDL
What is the different between WSDD and WSDL. My understanding is WSDD - is used to deploy a webservice on the webserver WSDL- Is used to publish the web service in the UDDI. Is that right ? What is the best way to create a WSDD for a webservice defined in the java ( have access to the source code). Where can I find more information on WSDD- a tutorial on how to create WSDD. Are there any open source tools that help create WSDD. Thanks a lot in advance. !
How do I use WSDL2JAVA over a firewall to generate stubs
Wondering how I use WSDL2Java over a proxy firewall to generate stub classes. I'm trying to consume a WS that is outside the firewall. I have been attempting to pass -Dhttp right inside the .BAT file but that's not working out. Am I missing something. The WSDL is consumed via HTTPS so i'm not sure how much that plays into things. This works fine if i'm not behind a firewall. Shaun.Farrugia. . [EMAIL PROTECTED] perm. desk.734.887.2148. . .cell.313.363.5006 aim.dier0b0t . . .
Re: Fault - makeTypeElement()
Hi Anil, At last, I could get my webservices to work. I had to tweak in the auto-generated code to get it to work. Please send me your wsdl, xsd and build.xml to test. I could take a look and let you know. As for me, there are symbols that are generated in the queue names. I removed them from all the generated code and it is working fine now. thanks vishist.On 9/28/05, Anil Arora [EMAIL PROTECTED] wrote: Thanks Chris for that catch. That was just stupidity on my part. Vishist, definitely let me know if you solve this. I'm starting to think it has something to do with the custom serializers that I implemented. I tried to just use the BeanSerializers, and I still get the exception. The weird thing is that the exception is different everytime I start up my webserver. Anil From: Vishist Mandapaka [mailto:[EMAIL PROTECTED]] Sent: Tuesday, September 27, 2005 3:23 PM To: axis-user@ws.apache.org Subject: Re: Fault - makeTypeElement() Hi Anil, As Anne has suggested, I presume Axis 1.1 is a bit buggy with the document/literal operation. For me, when I try to deploy, it is giving NullPointerException. Now in order to come around it, I did one thing, First reverse engineer from java to wsdl. So your command would be java org.apache.axis.wsdl.Java2WSDL yourServiceClassInstance ..options. This will give you the wsdl file. Now, if you regenerate the java classes and try to deploy it, it will work. Deploy in the sense you need to copy the deploy.wsdd info. You should be able to see the wsdl file. But I presume you won't be able to invoke the webservice. It will give all kinds of exception. There is lot more to it to understand. As per my results, the wsdl that is generated from Service classes will have rpc/encoded format instead of document/literal. I am still trying to figure out. I will let you know if I succeed with this. thanks Vishist. On 9/27/05, Ebert, Chris [EMAIL PROTECTED] wrote: Hi Anil, I don't know if it's your problem, but your attributes should say use=optional instead of optional=true (and use=required instead of optional=false). Dunno if that's causing your problems, but it's not correct... Chris -Original Message- From: Anil Arora [mailto:[EMAIL PROTECTED]] Sent: Tuesday, September 27, 2005 11:55 To: axis-user@ws.apache.org; Anne Thomas Manes; Vishist Mandapaka Subject: RE: Fault - makeTypeElement() I am running into a similar issue with my webservice.I had to downgrade to AXIS 1.1 so I am struggling to get this to work. I embedded the schema inline as suggested.Attached is my wsdl file. Anyone have any ideas? Anil From: Anne Thomas Manes [mailto: [EMAIL PROTECTED]] Sent: Saturday, September 24, 2005 6:40 PM To: Vishist Mandapaka Cc: axis-user@ws.apache.org Subject: Re: Fault - makeTypeElement() Axis 1.1 is a bit buggy when it comes to document/literal, but it should work if you're doing WSDL first. I did find problems with your WSDL in the echo operation: 1- message part definitions for a doc/literal operation must reference elements, not types. 2- the parts attribute in a soap:body definition must reference a part definition, not a message definition. I can't immagine why these mistakes would produce the error you're seeing, but who knows. In any case, because Axis 1.1 is a bit temperamental about doc/literal, I suggest you remove the echo operation, and I suggest that you embed you schema inline rather than including an external file. Anne On 9/24/05, Vishist Mandapaka [EMAIL PROTECTED] wrote: I have two more question, why Axis 1.1 is putting symbols infront of elements that are part of messages. and also the corresponding generated classes have _ leading to their class names. The documentation did not help much in this aspect. On 9/24/05, Vishist Mandapaka [EMAIL PROTECTED] mailto:[EMAIL PROTECTED] wrote: Anne, I modified the schema. Still it did not work. The same makeTypeElement error came up. Scanning through the schema, wsdl, server-config.wsdd, all of them look fine to me. Generated the java classes Compiled the java classes moved the generated class to WEB-INF/classes directory copied/pasted deploy.wsdd to server-config.wsdd from serviceto /service part since deploy through command line is not working (it is giving NullPointerException) started the server then came up the error.. :) On 9/24/05, Anne Thomas Manes [EMAIL PROTECTED] mailto:[EMAIL PROTECTED] wrote: 1. The code should not work in Axis 1.2. I guess it is more forgiving than Axis 1.1. 2. Schema inclusion does not change the namespace qualification status of the elements defined in the included schema. In the schema spec terminology, inclusion does not coerce the included schema. An included schema must have the same namespace as the including schema or no namespace. Anne On 9/24/05, Vishist Mandapaka [EMAIL PROTECTED] mailto:[EMAIL PROTECTED] wrote: Then I
Re: Uncaught Exception Traces - how to get Axis to tell me what they are
Hi Paul, If the debugger doesn't help you, try to debug over TCP connection. You can enable debugging in the server. Let me know what server you are using and I can let you know how to enable debugging. Once you enable debugging, a TCP Port will open up and the server will print the port number on the standard output. U can use debugging tools like JDebugger which will attach to the TCP Port. Once attached, set code break points and you can quickly realize where it is giving exception. This environment setup might take a little while for you, but it pays to use proper debugging tools as you can see the workflow. thanks vishist.On 10/3/05, Ron Reynolds [EMAIL PROTECTED] wrote: turn on debug for this log4j cateogory only - org.apache.axis.EXCEPTIONS - it is the category used for all faultsthrown on the server-side. I currently am getting the following fault returned from my Server when communicating. 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 faultcodesoapenv:Server.userException/faultcode faultstringjava.lang.NullPointerException/faultstring detail ns1:hostname xmlns:ns1= http://xml.apache.org/axis/wiproxy/ns1:hostname /detail /soapenv:Fault /soapenv:Body /soapenv:Envelope It looks to me like there is an Null Pointer Exception that Axis is catching, and turning into a Fault. Could somebody PLEASE tell me how or where in the chain I can get Axis to give me a trace on this.I have logs in the request/response flow, but apparently it doesn't get that far I'm not sure how ican debug any problems like this if I can't get Axis to give me more information.It appears that if I turn log4j debug on, it may provide me the trace, but I'm filling up disk space.Also, I can't get it to fail when I turn it on. Is there even a handler that I can override for the express purposes of examining the axis fault and logging it.I'm at my wits end - help, please. Hopefully it's something shamefully simple that I'm missing.
Re: newbiew question on WSDD and WSDL
WSDL is the universal standard XML for describing a (web) service interface (web is misleading here - WSDL works GREAT for describing ANY service interface) including message structure and types (using XSD), protocols, and locations (host urls). (note, this is WSDL combined with SOAP-Bindings - WSDL itself is much more abstract - basically just describe the operations an interface will support - the soap-binding tags are required to map theinterface to some soap-specific aspects just as XML Schema tags are needed to add type descriptions to the inteface description). WSDD is an XML used by the Axis engine to control what the Axis server deploys (what classes handle which services, what classes handle serializing the XML to/from the object model, which services are deployed on a server, and so forth). the WSDL certainly drives what's in the WSDD, but a WSDL alone doesn't tell Axis enough to know the HOW behind the WHAT described by the WSDL. and UDDI, as far as i know, is still just a good idea that doesn't get that much use, at least within intranets, but i may be mistaken on this - of all the services i've worked on (which is only a handfull) NONE of them used UDDI because you code your clients to your service interface, so the WSDL isn't really needed at runtime, and typically clients already know where the service is running (more or less). the only thing i know that generates a wsdd is the wsdl2java tool with the -s flag. What is the different between WSDD and WSDL. My understanding is WSDD - is used to deploy a webservice on the webserver WSDL- Is used to publish the web service in the UDDI. Is that right ? What is the best way to create a WSDD for a webservice defined in the java ( have access to the source code). Where can I find more information on WSDD- a tutorial on how to create WSDD. Are there any open source tools that help create WSDD. Thanks a lot in advance. !
Re: newbiew question on WSDD and WSDL
Ron, If I may add my understanding UDDI is synchronous to DNS in one way. The difference between DNS and UDDI is DNS works at network layer where as UDDI works at Application layer. Presuming a client is unaware where a particular service is running, he might lookup in the UDDI, fetch the wsdl (which contains precise location of the host providing the service) and invoke the service. this setup will work in internet. In intranet such as corporate networks, UDDI might not be of much use as two different teams might know where the webservice is being hosted. thanks vishist.On 10/3/05, Ron Reynolds [EMAIL PROTECTED] wrote: WSDL is the universal standard XML for describing a (web) service interface (web is misleadinghere - WSDL works GREAT for describing ANY service interface) including message structure andtypes (using XSD), protocols, and locations (host urls).(note, this is WSDL combined with SOAP-Bindings - WSDL itself is much more abstract - basically just describe the operations aninterface will support - the soap-binding tags are required to map theinterface to somesoap-specific aspects just as XML Schema tags are needed to add type descriptions to the inteface description).WSDD is an XML used by the Axis engine to control what the Axis server deploys (what classeshandle which services, what classes handle serializing the XML to/from the object model, which services are deployed on a server, and so forth).the WSDL certainly drives what's inthe WSDD, but a WSDL alone doesn't tell Axis enough to know the HOW behind the WHAT describedby the WSDL.and UDDI, as far as i know, is still just a good idea that doesn't get that much use, at least within intranets, but i may be mistaken on this - of all the services i've worked on (which isonly a handfull) NONE of them used UDDI because you code your clients to your serviceinterface, so the WSDL isn't really needed at runtime, and typically clients already know where the service is running (more or less).the only thing i know that generates a wsdd is the wsdl2java tool with the -s flag. What is the different between WSDD and WSDL. My understanding isWSDD - is used to deploy a webservice on the webserver WSDL- Is used to publish the web service in the UDDI.Is that right ?What is the best way to create a WSDD for a webservice defined in the java ( have access to the source code). Where can I find more information on WSDD- a tutorial on how to create WSDD. Are there any open source tools that help create WSDD.Thanks a lot in advance. !
Re: Forwarding to the appropriate port
Mayur Shetye wrote: I want to know Why it goes directly to port 7780, I am sure some of you have faced this problem in apache-tomcat configuration too. Currently I am not able to see the WSDL file itself. Let me know what can be done so that wsdl file appears on port 80. Also interestingly if I invoke the webservice on port 80 it WORKS. Suggesting that apache forwards the request properly to the 10g App server instance, the WS is invoked and a corresponding response is sent. Hi Mayur, It's not really an answer as such but the best thing to do is take the WSDL file, remembering to re-write the bindings if required to point to your external address (we have a similar problem in house with the autogenerated WSDL quite reasonably pointing at the node in our blade farm which hosts it, unsurprisingly this is not a public address) and put it up as a static page like any other. Note that when I say 'rewrite the bindings' I mean load the thing into a text editor and do a search and replace, no need for anything more complex. Last time I checked the recommendation was to disable autogeneration in a production environment in any case, but someone from the Axis team can confirm or deny that I'm sure. I have got VERY poor tech support from oracle with this. I'm shocked and amazed Cheers, Tom
Axis2 v0.92 Error deploying in Tomcat
Hi,Please note that this error refers to Axis 2 v0.92. I dropped the axis2.war in my Tomcat webapps directory. Validation passed, but when I try to list the services, it generates the following StackTrace. I tried this under two independent environments to get the same result. Environment:J2SE 5.0 _04Tomcat 5.5.9WinXP.Help appreciated,Tushar. type Exception report message description The server encountered an internal error () that prevented it from fulfilling this request. exception javax.servlet.ServletException: Servlet.init() for servlet AxisServlet threw exception org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) org.apache.catalina.connector.CoyoteAdapter.service (CoyoteAdapter.java:148) org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856) org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744) org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket (PoolTcpEndpoint.java:527) org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80) org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) java.lang.Thread.run (Unknown Source) root cause java.lang.NoClassDefFoundError: org.apache.ws.security.handler.WSHandler java.lang.Class.forName0(Native Method) java.lang.Class.forName(Unknown Source) org.apache.axis2.deployment.DeploymentEngine.getHandlerClass (DeploymentEngine.java:535) org.apache.axis2.deployment.DeploymentEngine.addFlowHandlers(DeploymentEngine.java:516) org.apache.axis2.deployment.DeploymentEngine.addNewModule(DeploymentEngine.java:547) org.apache.axis2.deployment.DeploymentEngine.doDeploy (DeploymentEngine.java:652) org.apache.axis2.deployment.repository.util.WSInfoList.update(WSInfoList.java:219) org.apache.axis2.deployment.listener.RepositoryListenerImpl.update(RepositoryListenerImpl.java:142) org.apache.axis2.deployment.listener.RepositoryListenerImpl.init(RepositoryListenerImpl.java:155) org.apache.axis2.deployment.listener.RepositoryListenerImpl.init(RepositoryListenerImpl.java:72) org.apache.axis2.deployment.scheduler.SchedulerTask .init(SchedulerTask.java:42) org.apache.axis2.deployment.DeploymentEngine.startSearch(DeploymentEngine.java:395) org.apache.axis2.deployment.DeploymentEngine.load(DeploymentEngine.java:253) org.apache.axis2.context.ConfigurationContextFactory.buildConfigurationContext (ConfigurationContextFactory.java:48) org.apache.axis2.transport.http.AxisServlet.init(AxisServlet.java:62) org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) org.apache.catalina.connector.CoyoteAdapter.service (CoyoteAdapter.java:148) org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856) org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744) org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket (PoolTcpEndpoint.java:527) org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80) org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) java.lang.Thread.run (Unknown Source) note The full stack trace of the root cause is available in the Apache Tomcat/5.5.9 logs.
Re: Forwarding to the appropriate port
I think your problem may be due to the fact that oracle 10G applicationserver can process web service transactions by itself, without axis. The port it listens on is configurable. When you speak of the apache webserver, it is actually the Oracle HTTP server, which is processing and redirecting the ws transactions, apache is encapsulated. JimMayur Shetye [EMAIL PROTECTED] wrote: Hello allI have some webservices deployed using axis in the oracle 10G applicationserver. I actually wanted to some advice from the group.1. If it advisable to run webservices in oracle 10g Application server asopposed to Tomcat? (They do run, but I want to know if anyone thinks thatthis should not be done)2. My configuration is as followsRequests areinternet - APACHE HTTP server (port 80) - 10g App Server (port7780)Response is10g App server (port 7780) - Apache HTTP server (port 80) -internetEntry point is the apache web server on port 80.Now, the webservices work fine in this configuration except when I try toget to the WSDL file. The url to which it goes is like http://abc.xyz.com:7780/service/abc?wsdlI want to know Why it goes directly to port 7780, I am sure some of you havefaced this problem in apache-tomcat configuration too. Currently I am notable to see the WSDL file itself.Let me know what can be done so that wsdl file appears on port 80. Alsointerestingly if I invoke the webservice on port 80 it WORKS. Suggestingthat apache forwards the request properly to the 10g App server instance,the WS is invoked and a corresponding response is sent. I have got VERY poor tech support from oracle with this.RegardsMayur
Re: Axis2 v0.92 Error deploying in Tomcat
Hi, We have only tested Axis2 with JDK 1.4 and the same problem has been reported with JDK 1.5. Therefore the best option is for you to try Axis2-0.92 with JDK1.4 and everything should work. We have to fix this. Will add a jira. Thanks, Ruchith On 10/4/05, Tushar Inamdar [EMAIL PROTECTED] wrote: Hi, Please note that this error refers to Axis 2 v0.92. I dropped the axis2.war in my Tomcat webapps directory. Validation passed, but when I try to list the services, it generates the following StackTrace. I tried this under two independent environments to get the same result. Environment: J2SE 5.0 _04 Tomcat 5.5.9 WinXP. Help appreciated, Tushar. type Exception report message description The server encountered an internal error () that prevented it from fulfilling this request. exception javax.servlet.ServletException: Servlet.init() for servlet AxisServlet threw exception org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) org.apache.catalina.connector.CoyoteAdapter.service (CoyoteAdapter.java:148) org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856) org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744) org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket (PoolTcpEndpoint.java:527) org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80) org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) java.lang.Thread.run (Unknown Source) root cause java.lang.NoClassDefFoundError: org.apache.ws.security.handler.WSHandler java.lang.Class.forName0(Native Method) java.lang.Class.forName(Unknown Source) org.apache.axis2.deployment.DeploymentEngine.getHandlerClass (DeploymentEngine.java:535) org.apache.axis2.deployment.DeploymentEngine.addFlowHandlers(DeploymentEngine.java:516) org.apache.axis2.deployment.DeploymentEngine.addNewModule(DeploymentEngine.java:547) org.apache.axis2.deployment.DeploymentEngine.doDeploy (DeploymentEngine.java:652) org.apache.axis2.deployment.repository.util.WSInfoList.update(WSInfoList.java:219) org.apache.axis2.deployment.listener.RepositoryListenerImpl.update(RepositoryListenerImpl.java:142) org.apache.axis2.deployment.listener.RepositoryListenerImpl.init(RepositoryListenerImpl.java:155) org.apache.axis2.deployment.listener.RepositoryListenerImpl.init(RepositoryListenerImpl.java:72) org.apache.axis2.deployment.scheduler.SchedulerTask .init(SchedulerTask.java:42) org.apache.axis2.deployment.DeploymentEngine.startSearch(DeploymentEngine.java:395) org.apache.axis2.deployment.DeploymentEngine.load(DeploymentEngine.java:253) org.apache.axis2.context.ConfigurationContextFactory.buildConfigurationContext (ConfigurationContextFactory.java:48) org.apache.axis2.transport.http.AxisServlet.init(AxisServlet.java:62) org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) org.apache.catalina.connector.CoyoteAdapter.service (CoyoteAdapter.java:148) org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856) org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744) org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket (PoolTcpEndpoint.java:527) org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80) org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) java.lang.Thread.run (Unknown Source) note The full stack trace of the root cause is available in the Apache Tomcat/5.5.9 logs. -- Ruchith
[Axis2] Method name changes in OM
Hi, All the devs and users please remember that the meaning of serialize has now changed completely. Now its the other way round. When we serialize that means we serialize with cache. So be careful serialize() -- serializeAndConsume() serializeWithCache() -- serialize(). So please be aware of this and hope we will not get another bunch of mails asking about this. Decision on this has been take in http://marc.theaimsgroup.com/?l=axis-devm=112812822615088w=2), and the JIRA is http://issues.apache.org/jira/browse/AXIS2-256. Thanks, Chinthaka
2-D array of Strings
Hi all, I have a simple question to ask: how can I declare a complexType in my WSDL file depicting a 2-dimensional array of strings? I know, I can specify a 1-dimensional array type as follows: xsd:complexType name=StringArray xsd:sequence xsd:element name=element type=xsd:string minOccurs=0 maxOccurs=unbounded/ /xsd:sequence /xsd:complexType Can someone guide me to do a similar thing for a 2-D array? Thanks, Jyoti