Re: Newbie questions and some weird behavior
You could test this with simple axis server and debug the same on Linux with gdb. I have written a small help file to let you know how to get simple axis server up and running on Windows. I hope you could adopt this to Linux. I have it http://people.apache.org/~samisa/SimpleAxisServer_HOWTO.txt for the time being, till I check the rest of the docs and commit this to CVS. Will have a look at you wsdl and see if I could get it working. Please try simple axis server in the mean time. Thanks, Samisa... On Wed, 2005-05-04 at 16:56, Yampolsky, Robert wrote: I'm an axis newbie, and am having trouble getting my first service to work. I am able to build and deploy a simple MD5Service I found on the web, so I think my axis and apache installations are working ok. It's axiscpp 1.5 and apache 2.0.46 (RHEL 3.0). I installed axiscpp from pre-built binaries in the default /usr/local/axiscpp_deploy directory. I've included the server.wsdd entry and wsdl file below in case I'm just doing this all wrong. Thanks in advance for putting up with my (probably clueless) questions. I've been trying to educate myself on this via Google, etc, and have found some good docs, but still can't get it to work. Anyway, at one point today (after restarting Apache, this went away), I would run my client repeatedly and get one of the following exceptions (wierdly, the exception would change without any changes to the code): Exception : Soap method is not allowed to invoke (I read in this list that this is caused by a missing SoapAction, but it's there in my wsdl and in the generated code) Exception : Requested service is not registerd at the server (I originally had CPP:RPC, which I figured was causing this - since my binding style is document, but I still got it sometimes) Exception : Soap content is not valid (your guess is as good as mine - I don't know yet if my soap content's any good) After restarting apache, the service seems to run. At least the client doesn't log any exceptions, but I get an empty response from the service (null pointers for all the return values). Not knowing how to debug the service, I tried having it open a file and log info there. But when I add code to my server to do that, I get the following exception on running my client: Exception : HTTPTransportException:Input streaming error while getting data Timed out waiting for HTTP header message (1). This exception occurs immediately, so I don't know how it could be a timeout condition. For yucks, I tried replacing the fopen and fprintf's with a simple sprintf to a character buffer and got the same exception. When I comment out all the logging code the service seems to 'work' again (with null return values). At least that gives some kind of indication that my server is indeed running. So, my main question is, how are you supposed to debug axiscpp services? Is the simple_axis_server thing supposed to facilitate this? If so, any instructions? Some other questions: 1. Even though I've got complex types as the inputs and outputs of my service, xwsdl2ws generates methods that take all of the fields from the complex types as individual parameters (rather than passing and returning a structure). When I changed my binding style to rpc, I got structure-based methods generated. Is that just 'the way it works', or can I control this? Is one kind of method better than the other (the struct way seems more self-documenting than having Value0..7 and OutValue0..5? 2. When I try to bring up ?wsdl URL's for my service or the axis 'Calculator' sample (http://localhost/axis/calculator?wsdl), Apache logs a segfault. Do I have to explicitly put the wsdl file somewhere (or point to it in axiscpp.conf or elsewhere)? Here's my server.wsdd entry: service name=HUB_TO_HUB provider=CPP:DOCUMENT description=TVB Hub-to-Hub Service parameter name=allowedMethods value=Hub_Request / parameter name=className value=/usr/local/axiscpp_deploy/lib/libhub2hub.so / /service Here's the wsdl: ?xml version=1.0 encoding=utf-8? wsdl:definitions xmlns:http=http://schemas.xmlsoap.org/wsdl/http/; xmlns:soap=http://schemas.xmlsoap.org/wsdl/soap/; xmlns:s=http://www.w3.org/2001/XMLSchema; xmlns:soapenc=http://schemas.xmlsoap.org/soap/encoding/; xmlns:tns=http://localhost/axis/HUB_TO_HUB; xmlns:tm=http://microsoft.com/wsdl/mime/textMatching/; xmlns:mime=http://schemas.xmlsoap.org/wsdl/mime/; targetNamespace=http://localhost/axis/HUB_TO_HUB; xmlns:wsdl=http://schemas.xmlsoap.org/wsdl/; wsdl:types s:schema elementFormDefault=qualified targetNamespace=http://localhost/axis/HUB_TO_HUB; s:element name=Hub_Request type=tns:HUB_IN / s:complexType name=HUB_IN s:sequence s:element minOccurs=0 maxOccurs=1 name=TO_TP
Re: Newbie questions and some weird behavior
I have added this how to content for windows into the win install guide and commited this into cvs. Please see http://cvs.apache.org/viewcvs.cgi/*checkout*/ws-axis/c/docs/wininstall-guide.html#simpleaxis Plan to update the Linux guide as well. Thanks, Samisa... On Thu, 2005-05-05 at 14:05, Samisa Abeysinghe wrote: You could test this with simple axis server and debug the same on Linux with gdb. I have written a small help file to let you know how to get simple axis server up and running on Windows. I hope you could adopt this to Linux. I have it http://people.apache.org/~samisa/SimpleAxisServer_HOWTO.txt for the time being, till I check the rest of the docs and commit this to CVS. Will have a look at you wsdl and see if I could get it working. Please try simple axis server in the mean time. Thanks, Samisa... On Wed, 2005-05-04 at 16:56, Yampolsky, Robert wrote: I'm an axis newbie, and am having trouble getting my first service to work. I am able to build and deploy a simple MD5Service I found on the web, so I think my axis and apache installations are working ok. It's axiscpp 1.5 and apache 2.0.46 (RHEL 3.0). I installed axiscpp from pre-built binaries in the default /usr/local/axiscpp_deploy directory. I've included the server.wsdd entry and wsdl file below in case I'm just doing this all wrong. Thanks in advance for putting up with my (probably clueless) questions. I've been trying to educate myself on this via Google, etc, and have found some good docs, but still can't get it to work. Anyway, at one point today (after restarting Apache, this went away), I would run my client repeatedly and get one of the following exceptions (wierdly, the exception would change without any changes to the code): Exception : Soap method is not allowed to invoke (I read in this list that this is caused by a missing SoapAction, but it's there in my wsdl and in the generated code) Exception : Requested service is not registerd at the server (I originally had CPP:RPC, which I figured was causing this - since my binding style is document, but I still got it sometimes) Exception : Soap content is not valid (your guess is as good as mine - I don't know yet if my soap content's any good) After restarting apache, the service seems to run. At least the client doesn't log any exceptions, but I get an empty response from the service (null pointers for all the return values). Not knowing how to debug the service, I tried having it open a file and log info there. But when I add code to my server to do that, I get the following exception on running my client: Exception : HTTPTransportException:Input streaming error while getting data Timed out waiting for HTTP header message (1). This exception occurs immediately, so I don't know how it could be a timeout condition. For yucks, I tried replacing the fopen and fprintf's with a simple sprintf to a character buffer and got the same exception. When I comment out all the logging code the service seems to 'work' again (with null return values). At least that gives some kind of indication that my server is indeed running. So, my main question is, how are you supposed to debug axiscpp services? Is the simple_axis_server thing supposed to facilitate this? If so, any instructions? Some other questions: 1. Even though I've got complex types as the inputs and outputs of my service, xwsdl2ws generates methods that take all of the fields from the complex types as individual parameters (rather than passing and returning a structure). When I changed my binding style to rpc, I got structure-based methods generated. Is that just 'the way it works', or can I control this? Is one kind of method better than the other (the struct way seems more self-documenting than having Value0..7 and OutValue0..5? 2. When I try to bring up ?wsdl URL's for my service or the axis 'Calculator' sample (http://localhost/axis/calculator?wsdl), Apache logs a segfault. Do I have to explicitly put the wsdl file somewhere (or point to it in axiscpp.conf or elsewhere)? Here's my server.wsdd entry: service name=HUB_TO_HUB provider=CPP:DOCUMENT description=TVB Hub-to-Hub Service parameter name=allowedMethods value=Hub_Request / parameter name=className value=/usr/local/axiscpp_deploy/lib/libhub2hub.so / /service Here's the wsdl: ?xml version=1.0 encoding=utf-8? wsdl:definitions xmlns:http=http://schemas.xmlsoap.org/wsdl/http/; xmlns:soap=http://schemas.xmlsoap.org/wsdl/soap/; xmlns:s=http://www.w3.org/2001/XMLSchema; xmlns:soapenc=http://schemas.xmlsoap.org/soap/encoding/; xmlns:tns=http://localhost/axis/HUB_TO_HUB; xmlns:tm=http://microsoft.com/wsdl/mime/textMatching/;
[Fwd: Re: Apache 2.0 vs Apache 1.3]
Would appreciate thoughts on this. Please see the mail tail below. Thanks, Samisa... -Forwarded Message- From: John Hawkins [EMAIL PROTECTED] To: Apache AXIS C Developers List axis-c-dev@ws.apache.org Subject: Re: Apache 2.0 vs Apache 1.3 Date: Thu, 05 May 2005 11:17:27 +0100 I've been thinking this too - we should go to the user list first. Samisa Abeysinghe [EMAIL PROTECTED] 05/05/2005 16:30 Please respond to Apache AXIS C Developers List To Apache AXIS C Developers List axis-c-dev@ws.apache.org cc Subject Apache 2.0 vs Apache 1.3 Hi all, I have noticed widespread use of Apache 2.0 and the number of queries we are getting on Apache 1.3 is near 0. Given this, would it be a bad idea to support only Apache 2 on server side? This will simplify the docs as well. Thoughts please. Thanks, Samisa... -- Samisa Abeysinghe [EMAIL PROTECTED] Virtusa Corporation
Re: [Fwd: Re: Apache 2.0 vs Apache 1.3]
I also think that it would be better to support only for Apache 2. Regds Rangika On Thu, 2005-05-05 at 16:25 +, Samisa Abeysinghe wrote: Would appreciate thoughts on this. Please see the mail tail below. Thanks, Samisa... -Forwarded Message- From: John Hawkins [EMAIL PROTECTED] To: Apache AXIS C Developers List axis-c-dev@ws.apache.org Subject: Re: Apache 2.0 vs Apache 1.3 Date: Thu, 05 May 2005 11:17:27 +0100 I've been thinking this too - we should go to the user list first. Samisa Abeysinghe [EMAIL PROTECTED] 05/05/2005 16:30 Please respond to Apache AXIS C Developers List To Apache AXIS C Developers List axis-c-dev@ws.apache.org cc Subject Apache 2.0 vs Apache 1.3 Hi all, I have noticed widespread use of Apache 2.0 and the number of queries we are getting on Apache 1.3 is near 0. Given this, would it be a bad idea to support only Apache 2 on server side? This will simplify the docs as well. Thoughts please. Thanks, Samisa...
RE: [Fwd: Re: Apache 2.0 vs Apache 1.3]
I've lots of users who still use Apache 1.3, though personally I use 2.0. It isn't just a question of the systems we developers use: we have in turn to support users hosting our developed services who are running pretty unsophisticated systems. Given that it works nicely now and is not too hard for people without much technical background to set up, I'd be sorry if you were to drop it. -Original Message- From: Samisa Abeysinghe [mailto:[EMAIL PROTECTED] Sent: 05 May 2005 17:26 To: axis-c-user@ws.apache.org Subject: [Fwd: Re: Apache 2.0 vs Apache 1.3] Would appreciate thoughts on this. Please see the mail tail below. Thanks, Samisa... -Forwarded Message- From: John Hawkins [EMAIL PROTECTED] To: Apache AXIS C Developers List axis-c-dev@ws.apache.org Subject: Re: Apache 2.0 vs Apache 1.3 Date: Thu, 05 May 2005 11:17:27 +0100 I've been thinking this too - we should go to the user list first. Samisa Abeysinghe [EMAIL PROTECTED] 05/05/2005 16:30 Please respond to Apache AXIS C Developers List To Apache AXIS C Developers List axis-c-dev@ws.apache.org cc Subject Apache 2.0 vs Apache 1.3 Hi all, I have noticed widespread use of Apache 2.0 and the number of queries we are getting on Apache 1.3 is near 0. Given this, would it be a bad idea to support only Apache 2 on server side? This will simplify the docs as well. Thoughts please. Thanks, Samisa... -- Samisa Abeysinghe [EMAIL PROTECTED] Virtusa Corporation
RE: [Fwd: Re: Apache 2.0 vs Apache 1.3]
Good day all, Right now I am using Apache 1.3, because when I started to read documentation and user postings, I got the sense that Axis is more stable with Apache 1.3. I'd like to see the support for that version of Apache stay for now, unless I am wrong about the stability issue. Thanks, Srdjan Pejic Software Development Intern Environment Canada Phone: (416) 739-5740 E-Mail: Srdjan.Pejic AT ec.gc.ca -Original Message- From: Samisa Abeysinghe [mailto:[EMAIL PROTECTED] Sent: Thursday, May 05, 2005 16:26 To: axis-c-user@ws.apache.org Subject: [Fwd: Re: Apache 2.0 vs Apache 1.3] Would appreciate thoughts on this. Please see the mail tail below. Thanks, Samisa... -Forwarded Message- From: John Hawkins [EMAIL PROTECTED] To: Apache AXIS C Developers List axis-c-dev@ws.apache.org Subject: Re: Apache 2.0 vs Apache 1.3 Date: Thu, 05 May 2005 11:17:27 +0100 I've been thinking this too - we should go to the user list first. Samisa Abeysinghe [EMAIL PROTECTED] 05/05/2005 16:30 Please respond to Apache AXIS C Developers List To Apache AXIS C Developers List axis-c-dev@ws.apache.org cc Subject Apache 2.0 vs Apache 1.3 Hi all, I have noticed widespread use of Apache 2.0 and the number of queries we are getting on Apache 1.3 is near 0. Given this, would it be a bad idea to support only Apache 2 on server side? This will simplify the docs as well. Thoughts please. Thanks, Samisa... -- Samisa Abeysinghe [EMAIL PROTECTED] Virtusa Corporation
RE: Newbie questions and some weird behavior
Will have a look at you wsdl and see if I could get it working. Please try simple axis server in the mean time. Thanks, Samisa... Thanks. I tried simple axis server with gdb, and was able to debug my server. It now is able to log its inputs and outputs, and they look basically right. But the client still gets null pointers for all of the results. Then I used tcpdump to look at the SOAP that was passed back and forth. I've included it below. It looks like the input is correct, but the response is screwed up. Instead of what I expect to get: MSG_RECPT UID/UID TO_TP/TO_TP etc. /MSG_RECPT I'm getting: MSG_RECPTUID/MSG_RECPTUID MSG_RECPTTO_TP/MSG_RECPTTO_TP etc. Also, the data between the bad XML tags is garbage. Interestingly, I get binary garbage that grows by 4 bytes for each subsequent result 'string'. Anyway, progress. Here's the TCP dump of the SOAP: POST /axis/HUB_TO_HUB HTTP/11 Host: 172 1648 246:80 Content-Type: text/xml; charset=UTF-8 SOAPAction: HUB_TO_HUB#Hub_Request Content-Length: 571 ?xml version='1 0' encoding='utf-8' ? SOAP-ENV:Envelope xmlns:SOAP-ENV=http://schemas xmlsoap org/soap/envelope/ xmlns:xsd=http://3 org/2001/XMLSchema xmlns:xsi=http://www w3 org/2001/XMLSchema-instance SOAP-ENV:Body ns1:Hub_Request xmlns:ns1=http://localhost/axis/HUB_TO_HUB; ns1:TO_TPA/ns1:TO_TP ns1:FROM_TPB/ns1:FROM_TP ns1:TO_HUBC/ns1:TO_HUB ns1:FROM_HUBE/ns1:FROM_HUB ns1:UIDF/ns1:UID ns1:APIKEYG/ns1:APIKEY ns1:ROUTING/ns1:ROUTING ns1:MESSAGE/ns1:MESSAGE /ns1:Hub_Request /SOAP-ENV:Body /SOAP-ENV:Envelope HTTP/1 1 200 OK Date: Thu, 05 May 2005 18:26:37 GMT Server: Apache/2 0 46 (Red Hat) Content-Length: 689 Connection: close Content-Type: text/xml ?xml version='1 0' encoding='utf-8' ? SOAP-ENV:Envelope xmlns:SOAP-ENV=http://schemas xmlsoap org/soap/envelope/ xmlns:xsd=http://www w3 org/2001/XMLSchema xmlns:xsi=http://www w3 org/2001/XMLSchema-instance SOAP-ENV:Body ns1:Hub_Response xmlns:ns1=http://localhost/axis/HUB_TO_HUB; MSG_RECPTUID/MSG_RECPTUID MSG_RECPTTO_TP/MSG_RECPTTO_TP MSG_RECPTFROM_TP/MSG_RECPTFROM_TP MSG_RECPTSTATUSamp/MSG_RECPTSTATUS MSG_RECPTSTATUS_MSGamp/MSG_RECPTSTATUS_MSG MSG_RECPTTIMESTAMP.amp.../MSG_RECPTTIMESTAMP /ns1:Hub_Response /SOAP-ENV:Body /SOAP-ENV:Envelope Here's my server.wsdd entry: service name=HUB_TO_HUB provider=CPP:DOCUMENT description=TVB Hub-to-Hub Service parameter name=allowedMethods value=Hub_Request / parameter name=className value=/usr/local/axiscpp_deploy/lib/libhub2hub.so / /service Here's the wsdl: ?xml version=1.0 encoding=utf-8? wsdl:definitions xmlns:http=http://schemas.xmlsoap.org/wsdl/http/; xmlns:soap=http://schemas.xmlsoap.org/wsdl/soap/; xmlns:s=http://www.w3.org/2001/XMLSchema; xmlns:soapenc=http://schemas.xmlsoap.org/soap/encoding/; xmlns:tns=http://localhost/axis/HUB_TO_HUB; xmlns:tm=http://microsoft.com/wsdl/mime/textMatching/; xmlns:mime=http://schemas.xmlsoap.org/wsdl/mime/; targetNamespace=http://localhost/axis/HUB_TO_HUB; xmlns:wsdl=http://schemas.xmlsoap.org/wsdl/; wsdl:types s:schema elementFormDefault=qualified targetNamespace=http://localhost/axis/HUB_TO_HUB; s:element name=Hub_Request type=tns:HUB_IN / s:complexType name=HUB_IN s:sequence s:element minOccurs=0 maxOccurs=1 name=TO_TP type=s:string / s:element minOccurs=0 maxOccurs=1 name=FROM_TP type=s:string / s:element minOccurs=0 maxOccurs=1 name=TO_HUB type=s:string / s:element minOccurs=0 maxOccurs=1 name=FROM_HUB type=s:string / s:element minOccurs=0 maxOccurs=1 name=UID type=s:string / s:element minOccurs=0 maxOccurs=1 name=APIKEY type=s:string / s:element minOccurs=0 maxOccurs=1 name=ROUTING type=s:string / s:element minOccurs=0 maxOccurs=1 name=MESSAGE type=s:string / /s:sequence /s:complexType /s:schema s:schema elementFormDefault=qualified s:element name=Hub_Response nillable=true type=tns:MSG_RECPT / s:complexType name=MSG_RECPT s:sequence s:element minOccurs=0 maxOccurs=1 name=UID type=s:string / s:element minOccurs=0 maxOccurs=1 name=TO_TP type=s:string / s:element minOccurs=0 maxOccurs=1 name=FROM_TP type=s:string / s:element minOccurs=0 maxOccurs=1 name=STATUS type=s:string / s:element minOccurs=0 maxOccurs=1 name=STATUS_MSG type=s:string / s:element minOccurs=0 maxOccurs=1 name=TIMESTAMP type=s:string / /s:sequence /s:complexType /s:schema /wsdl:types wsdl:message name=Hub_RequestIn
Sending faults from server
Linux Mandrake 10.0 I've got a web service that needs to send a fault back under some conditions. It appears that the sample files for version 1.5 don't work, and neither does my app (undeclared namespace prefix in the fault message). I suspect this may be a bug, since the sample doclitfault fails in the same way as my webserver. The server send back an invalid fault message and the client segfaults on it. I asked this question on the dev list, but don't know if it got through... I don't see a record of it, and haven't had a response. Assuming this is a bug, is there a workaround? I'd like to be able to send a message back to the client with some informative text, plus an error code if possible. Thanks Ian Harder P.S. For reference, here are the doclitfault request and fault messages. Note the undeclared prefix ns1 in the fault detail. ---request--- POST /axis/doclitfault HTTP/1.1 Host: localhost:80 Content-Type: text/xml; charset=UTF-8 SOAPAction: doclitfault#div Content-Length: 387 ?xml version='1.0' encoding='utf-8' ? SOAP-ENV:Envelope xmlns:SOAP-ENV=http://schemas.xmlsoap.org/soap/envelope/; xmlns:xsd=http://www.w3.org/2001/XMLSchema; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; SOAP-ENV:Body ns1:div xmlns:ns1=http://soapinterop.org; ns1:arg_0_02/ns1:arg_0_0 ns1:arg_1_00/ns1:arg_1_0 /ns1:div /SOAP-ENV:Body /SOAP-ENV:Envelope ---fault--- HTTP/1.1 200 OK Date: Thu, 05 May 2005 20:31:26 GMT Server: Apache-AdvancedExtranetServer/2.0.48 (Mandrake Linux/6.8.100mdk) mod_ssl/2.0.48 OpenSSL/0.9.7c PHP/4.3.4 Content-Length: 633 Content-Type: text/xml ?xml version='1.0' encoding='utf-8' ? SOAP-ENV:Envelope xmlns:SOAP-ENV=http://schemas.xmlsoap.org/soap/envelope/; xmlns:xsd=http://www.w3.org/2001/XMLSchema; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; SOAP-ENV:Body SOAP-ENV:Fault faultcodeAxisC++ Faultcode/faultcode faultstringCustom Out of bound exception/faultstring faultactorserver name:listen port/faultactor detailDivByZeroStructns1:varStringDivision by zero exception/ns1:varString ns1:varInt1/ns1:varInt ns1:varFloat10.52/ns1:varFloat /DivByZeroStruct /detail /SOAP-ENV:Fault /SOAP-ENV:Body /SOAP-ENV:Envelope
Re: Sending faults from server
This seems to be a bug. SOAP faults on the server side are not well tested. On client side, there has been some testing. I also have come across in the past, where the server sends faults in invalid formats. Hence, this needs be fixed. Samisa... On Thu, 2005-05-05 at 20:35, Ian Harder wrote: Linux Mandrake 10.0 I've got a web service that needs to send a fault back under some conditions. It appears that the sample files for version 1.5 don't work, and neither does my app (undeclared namespace prefix in the fault message). I suspect this may be a bug, since the sample doclitfault fails in the same way as my webserver. The server send back an invalid fault message and the client segfaults on it. I asked this question on the dev list, but don't know if it got through... I don't see a record of it, and haven't had a response. Assuming this is a bug, is there a workaround? I'd like to be able to send a message back to the client with some informative text, plus an error code if possible. Thanks Ian Harder P.S. For reference, here are the doclitfault request and fault messages. Note the undeclared prefix ns1 in the fault detail. ---request--- POST /axis/doclitfault HTTP/1.1 Host: localhost:80 Content-Type: text/xml; charset=UTF-8 SOAPAction: doclitfault#div Content-Length: 387 ?xml version='1.0' encoding='utf-8' ? SOAP-ENV:Envelope xmlns:SOAP-ENV=http://schemas.xmlsoap.org/soap/envelope/; xmlns:xsd=http://www.w3.org/2001/XMLSchema; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; SOAP-ENV:Body ns1:div xmlns:ns1=http://soapinterop.org; ns1:arg_0_02/ns1:arg_0_0 ns1:arg_1_00/ns1:arg_1_0 /ns1:div /SOAP-ENV:Body /SOAP-ENV:Envelope ---fault--- HTTP/1.1 200 OK Date: Thu, 05 May 2005 20:31:26 GMT Server: Apache-AdvancedExtranetServer/2.0.48 (Mandrake Linux/6.8.100mdk) mod_ssl/2.0.48 OpenSSL/0.9.7c PHP/4.3.4 Content-Length: 633 Content-Type: text/xml ?xml version='1.0' encoding='utf-8' ? SOAP-ENV:Envelope xmlns:SOAP-ENV=http://schemas.xmlsoap.org/soap/envelope/; xmlns:xsd=http://www.w3.org/2001/XMLSchema; xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; SOAP-ENV:Body SOAP-ENV:Fault faultcodeAxisC++ Faultcode/faultcode faultstringCustom Out of bound exception/faultstring faultactorserver name:listen port/faultactor detailDivByZeroStructns1:varStringDivision by zero exception/ns1:varString ns1:varInt1/ns1:varInt ns1:varFloat10.52/ns1:varFloat /DivByZeroStruct /detail /SOAP-ENV:Fault /SOAP-ENV:Body /SOAP-ENV:Envelope -- Samisa Abeysinghe [EMAIL PROTECTED] Virtusa Corporation
RE: Newbie questions and some weird behavior
Looks to me as if there are serialization problems on the server side. I guess this is something to do with errors in the manipulation of the pointer data members of the class being serialized by server for response. One thing to figure out is to know whether the error is in generated code or in the user written code. Will have to generate the code and see. Thanks, Samisa... On Thu, 2005-05-05 at 19:09, Yampolsky, Robert wrote: Will have a look at you wsdl and see if I could get it working. Please try simple axis server in the mean time. Thanks, Samisa... Thanks. I tried simple axis server with gdb, and was able to debug my server. It now is able to log its inputs and outputs, and they look basically right. But the client still gets null pointers for all of the results. Then I used tcpdump to look at the SOAP that was passed back and forth. I've included it below. It looks like the input is correct, but the response is screwed up. Instead of what I expect to get: MSG_RECPT UID/UID TO_TP/TO_TP etc. /MSG_RECPT I'm getting: MSG_RECPTUID/MSG_RECPTUID MSG_RECPTTO_TP/MSG_RECPTTO_TP etc. Also, the data between the bad XML tags is garbage. Interestingly, I get binary garbage that grows by 4 bytes for each subsequent result 'string'. Anyway, progress. Here's the TCP dump of the SOAP: POST /axis/HUB_TO_HUB HTTP/11 Host: 172 1648 246:80 Content-Type: text/xml; charset=UTF-8 SOAPAction: HUB_TO_HUB#Hub_Request Content-Length: 571 ?xml version='1 0' encoding='utf-8' ? SOAP-ENV:Envelope xmlns:SOAP-ENV=http://schemas xmlsoap org/soap/envelope/ xmlns:xsd=http://3 org/2001/XMLSchema xmlns:xsi=http://www w3 org/2001/XMLSchema-instance SOAP-ENV:Body ns1:Hub_Request xmlns:ns1=http://localhost/axis/HUB_TO_HUB; ns1:TO_TPA/ns1:TO_TP ns1:FROM_TPB/ns1:FROM_TP ns1:TO_HUBC/ns1:TO_HUB ns1:FROM_HUBE/ns1:FROM_HUB ns1:UIDF/ns1:UID ns1:APIKEYG/ns1:APIKEY ns1:ROUTING/ns1:ROUTING ns1:MESSAGE/ns1:MESSAGE /ns1:Hub_Request /SOAP-ENV:Body /SOAP-ENV:Envelope HTTP/1 1 200 OK Date: Thu, 05 May 2005 18:26:37 GMT Server: Apache/2 0 46 (Red Hat) Content-Length: 689 Connection: close Content-Type: text/xml ?xml version='1 0' encoding='utf-8' ? SOAP-ENV:Envelope xmlns:SOAP-ENV=http://schemas xmlsoap org/soap/envelope/ xmlns:xsd=http://www w3 org/2001/XMLSchema xmlns:xsi=http://www w3 org/2001/XMLSchema-instance SOAP-ENV:Body ns1:Hub_Response xmlns:ns1=http://localhost/axis/HUB_TO_HUB; MSG_RECPTUID/MSG_RECPTUID MSG_RECPTTO_TP/MSG_RECPTTO_TP MSG_RECPTFROM_TP/MSG_RECPTFROM_TP MSG_RECPTSTATUSamp/MSG_RECPTSTATUS MSG_RECPTSTATUS_MSGamp/MSG_RECPTSTATUS_MSG MSG_RECPTTIMESTAMP.amp.../MSG_RECPTTIMESTAMP /ns1:Hub_Response /SOAP-ENV:Body /SOAP-ENV:Envelope Here's my server.wsdd entry: service name=HUB_TO_HUB provider=CPP:DOCUMENT description=TVB Hub-to-Hub Service parameter name=allowedMethods value=Hub_Request / parameter name=className value=/usr/local/axiscpp_deploy/lib/libhub2hub.so / /service Here's the wsdl: ?xml version=1.0 encoding=utf-8? wsdl:definitions xmlns:http=http://schemas.xmlsoap.org/wsdl/http/; xmlns:soap=http://schemas.xmlsoap.org/wsdl/soap/; xmlns:s=http://www.w3.org/2001/XMLSchema; xmlns:soapenc=http://schemas.xmlsoap.org/soap/encoding/; xmlns:tns=http://localhost/axis/HUB_TO_HUB; xmlns:tm=http://microsoft.com/wsdl/mime/textMatching/; xmlns:mime=http://schemas.xmlsoap.org/wsdl/mime/; targetNamespace=http://localhost/axis/HUB_TO_HUB; xmlns:wsdl=http://schemas.xmlsoap.org/wsdl/; wsdl:types s:schema elementFormDefault=qualified targetNamespace=http://localhost/axis/HUB_TO_HUB; s:element name=Hub_Request type=tns:HUB_IN / s:complexType name=HUB_IN s:sequence s:element minOccurs=0 maxOccurs=1 name=TO_TP type=s:string / s:element minOccurs=0 maxOccurs=1 name=FROM_TP type=s:string / s:element minOccurs=0 maxOccurs=1 name=TO_HUB type=s:string / s:element minOccurs=0 maxOccurs=1 name=FROM_HUB type=s:string / s:element minOccurs=0 maxOccurs=1 name=UID type=s:string / s:element minOccurs=0 maxOccurs=1 name=APIKEY type=s:string / s:element minOccurs=0 maxOccurs=1 name=ROUTING type=s:string / s:element minOccurs=0 maxOccurs=1 name=MESSAGE type=s:string / /s:sequence /s:complexType /s:schema s:schema elementFormDefault=qualified s:element name=Hub_Response nillable=true type=tns:MSG_RECPT / s:complexType name=MSG_RECPT s:sequence s:element minOccurs=0
RE: Apache 2.0 vs Apache 1.3
OK, Looks like the responses are more biased towards keeping both. One of the main reasons that I raised this was to cut down on maintenance efforts, not only the code, but also the docs. In some situations, such as in case of supporting attachments Rangika seem to have to update both modules. Anyway, if it is being used, we have to keep supporting Apache 1.3 despite these concerns. Thanks, Samisa... -Original Message- From: sanjaya gayan [mailto:[EMAIL PROTECTED] Sent: Friday, May 06, 2005 9:58 AM To: Apache AXIS C Developers List Subject: Re: Apache 2.0 vs Apache 1.3 Me too. The 1.3 family has been well tested very stable and widely accepted. Also we have had problems with Apache 2.0 (even without axis) on windows and 1.3 never troubled us. +1 to have both. sanjaya. - Original Message - From: Sanjiva Weerawarana [EMAIL PROTECTED] To: Apache AXIS C Developers List axis-c-dev@ws.apache.org Sent: Friday, May 06, 2005 6:20 AM Subject: RE: Apache 2.0 vs Apache 1.3 I have to vehemently agree .. there are many who are using 1.3 and dropping 1.3 will cut out a significant part of the customer base! Sanjiva. On Thu, 2005-05-05 at 13:06 -0600, Lilantha Darshana wrote: My -1 for dropping 1.3 support. I strongly believe, there are so many instances out there who still depends on 1.3 server and in need for web services to support their legacy services. thanks -Lilantha -Original Message- From: Samisa Abeysinghe [mailto:[EMAIL PROTECTED] Sent: Thursday, May 05, 2005 11:31 AM To: Apache AXIS C Developers List Subject: Apache 2.0 vs Apache 1.3 Hi all, I have noticed widespread use of Apache 2.0 and the number of queries we are getting on Apache 1.3 is near 0. Given this, would it be a bad idea to support only Apache 2 on server side? This will simplify the docs as well. Thoughts please. Thanks, Samisa... ___ Siebel IT'S ALL ABOUT THE CUSTOMER Visit www.siebel.com This e-mail message is for the sole use of the intended recipient(s) and contains confidential and/or privileged information belonging to Siebel Systems, Inc. or its customers or partners. Any unauthorized review, use, copying, disclosure or distribution of this message is strictly prohibited. If you are not an intended recipient of this message, please contact the sender by reply e-mail and destroy all soft and hard copies of the message and any attachments. Thank you for your cooperation. ___ Yahoo! Messenger - want a free and easy way to contact your friends online? http://uk.messenger.yahoo.com
Re: WebSphere 5.1 does not run Web Applications running Axis SOAP Engine
Hi, I know this is off topic, but I think it may help you. There is a much cleaner way to setup LogFactory on Websphere, without doing the PARENT-LAST trick. See http://www-1.ibm.com/support/docview.wss?uid=swg27004610 for details [EMAIL PROTECTED] wrote: I also had to specify a name-value pair assigning the fully-qualified class name of the LogFactory implementation to property org.apache.commons.logging.LogFactory in file commons-logging.properties, and place this file in the classpath to force WAS to use the Apache implementation of LogFactory instead of the IBM one - see http://www-1.ibm.com/support/docview.wss?uid=swg27004610 (but this could be just for WAS on the iSeries). I added the commons-logging.properties file to a config directory which was in a shared library associated with the application and Axis was happy and the web service worked.
java to wsdl
Good Afternoon to all, I'm happy about joining the group, looking forward for some help from you all. I've the following queries when i need to expose a java component into web service. I use axis for the task[using java2wsdl and wsdl2java] The following are my queries: 1. If i obtain a wsdl file from a class that has all the implementation in it, should I bother about the Interface and the Implementation obtained from wsdl2java? 2. Say the java file that i want to expose as webservice is a part of a big package, What should i do about the import stuff in the file that i have to convert to web service?? Has it got something to do with the classpath.. Eagerly Waiting for reply, Thank you.. Yahoo! India Matrimony: Find your life partner online Go to: http://yahoo.shaadi.com/india-matrimony
Re: second parameter is null when using wsdl with wsdlsoap:binding style=document
Hi, thanks for your help. I'll try to regenerate and rebuild my service with the WRAPPED style. I think i write my experiences to a little quick start and post it to the subject [CO] writing a tutorial. Best Regards Harri axis-user@ws.apache.org schrieb am 04.05.05 06:14:58: When using document style, you don't specify parameters in the message definition. Instead you have one message part, and that part points to a wrapped element. The wrapper element should be defined as a sequence of elements -- which are your parameters. If you want to create a parameterized interface, then you want to use the wrapped style. (which is what .NET uses by default) Anne On 5/3/05, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: Hi, in a futher message I read about a similar problem and it's solution. posted solution: change wsdlsoap:binding style=document to wsdlsoap:binding style=rpc But the solution posted there is not applicable to me. My little webservice has to be used in a IIS from MS. And the developer suite of MS has problems with WSDL files that use rpc style. Has anyone a idea to solve this? I am using tomcat 5.5.9 with java 1.5.0_02-b09 on windows xp. My axis release is 1.2 from yesterday evening (02.05.2005 18:12) Thanks Harri __ Mit WEB.DE FreePhone mit hoechster Qualitaet ab 0 Ct./Min. weltweit telefonieren! http://freephone.web.de/?mc=021201 __ Mit WEB.DE FreePhone mit hoechster Qualitaet ab 0 Ct./Min. weltweit telefonieren! http://freephone.web.de/?mc=021201
R: HashMap of HashMaps
Hello Everybody, I have the same Lyndon's problem, because I deploy a java webservice that incapsulate response data into a Hashmap (whose name is dati, please see below) using a wsdd file. The kind of response data into the Hashmap is of type Costruttore and doesn't appear in wsdl file, so the generation of stub and deserialization classes fails. Follow a snippet of mi wsdl file and a copy of the wsdd file. Thanks in advance for any help!!! Claudia FILE WSDD: service name=Costruttori provider=java:RPC parameter name=className value=it.seceti.coc.service.ws.jaxrpc.CostruttoriJaxRpc/ parameter name=allowedMethods value=*/ beanMapping qname=coc:BaseObject xmlns:coc=urn:coc languageSpecificType=java:org.appfuse.model.BaseObject/ beanMapping qname=coc:Costruttore xmlns:coc=urn:coc languageSpecificType=java:it.seceti.coc.model.Costruttore/ beanMapping qname=coc:IDOperatore xmlns:coc=urn:coc languageSpecificType=java:it.seceti.coc.model.IDOperatore/ beanMapping qname=coc:Esito xmlns:coc=urn:coc languageSpecificType=java:it.seceti.coc.model.esito.Esito/ beanMapping qname=coc:RisultatoOperazione xmlns:coc=urn:coc languageSpecificType=java:it.seceti.coc.model.esito.RisultatoOperazione / beanMapping qname=coc:Locale xmlns:coc=urn:coc languageSpecificType=java:it.seceti.coc.model.esito.Locale/ parameter name=wsdlServiceElement value=CostruttoriService/ parameter name=wsdlServicePort value=Costruttori/ parameter name=wsdlPortType value=Costruttori/ /service -- SNIPPET OF WSDL FILE: ... complexType name=Esito - sequence element name=dati nillable=true type=apachesoap:Map / element name=risultatoOperazione nillable=true type=tns1:RisultatoOperazione / /sequence /complexType /schema .. Subject:HashMap of HashMaps From: Lyndon Tiu ltiu () alumni ! sfu ! ca Date: 2004-11-23 22:03:12 Message-ID: 200411232203.iANM3CO2010215 () rm-rstar ! sfu ! ca [Download message RAW] Hello, I have a custom object I am trying to pass across the wire using AXIS wrapped style \ document-literal service. The complex object contains a HashMap of HashMaps (that is, the values of the \ HashMap, are HashMaps themselves). For reference, I have called this complex object \ ExternalDataWrapper. I have used the Java2WSDL tool to generate the WSDL for this class by supplying the \ Interface. Of course, the Interface does not specify that the HashMap's values will \ contain HashMaps, so it seems that the WSDL generated declares that the type of the \ value components of my HashMap will contain an xsd:string. A portion of the WSDL \ follows: schema targetNamespace=http://xml.apache.org/xml-soap; \ xmlns=http://www.w3.org/2001/XMLSchema; complexType name=mapItem sequence element name=key nillable=true type=xsd:string / element name=value nillable=true type=xsd:string / /sequence /complexType complexType name=Map sequence element maxOccurs=unbounded minOccurs=0 name=item \ type=apachesoap:mapItem / /sequence /complexType /schema schema targetNamespace=http://beans.xdb.geocortex.net; \ xmlns=http://www.w3.org/2001/XMLSchema; complexType name=ExternalDataWrapper sequence element name=data nillable=true type=apachesoap:Map / /sequence /complexType . . . I then used the WSDL2Java tool to generate the client stubs, server skeletons and \ bindings, and the .wsdd files. When I make a request to my webservice (which should \ return my complex object), I construct the HashMap of HashMaps in the Web Service \ implementation class. The response is serialized correctly as follows: \ soapenv:Envelope . soapenv:Body getDataResponse xmlns=my.namespace getDataReturn xmlns= data item xmlns:soapenc=http://schemas.xmlsoap.org/soap/encoding/; \ xmlns:nsl=http://xml.apache.org/xml-soap; key123/key value item keyOWNER/key valueMiller/value /item item keyAGE/key value42/value /item . . /value /item item key456/key value item . . . /data /getDataReturn /getDataResponse /soapenv:Body /soapenv:Envelope The problem is, that the client side does not seem to be able to deserialize my \ ojbect correctly. Perhaps it is expecting a string as the values of the HashMap as \ opposed to HashMaps. It is giving me this error: org.xml.sax.SAXException: SimpleDeserializer encountered a child element, which is \ NOT expected, in something it was trying to deserialize. My
Re:R: HashMap of HashMaps
Hi; why don't you use document instead of Hashmaps? In this way you can pass an XML rapresentation of your dati and then from the XML you can create your Java-structure. -- Initial Header --- From : Claudia Mavilio [EMAIL PROTECTED] To : axis-user@ws.apache.org Cc : Date : Thu, 5 May 2005 11:50:21 +0200 Subject : R: HashMap of HashMaps Hello Everybody, I have the same Lyndon's problem, because I deploy a java webservice that incapsulate response data into a Hashmap (whose name is dati, please see below) using a wsdd file. The kind of response data into the Hashmap is of type Costruttore and doesn't appear in wsdl file, so the generation of stub and deserialization classes fails. Follow a snippet of mi wsdl file and a copy of the wsdd file. Thanks in advance for any help!!! Claudia FILE WSDD: service name=Costruttori provider=java:RPC parameter name=className value=it.seceti.coc.service.ws.jaxrpc.CostruttoriJaxRpc/ parameter name=allowedMethods value=*/ beanMapping qname=coc:BaseObject xmlns:coc=urn:coc languageSpecificType=java:org.appfuse.model.BaseObject/ beanMapping qname=coc:Costruttore xmlns:coc=urn:coc languageSpecificType=java:it.seceti.coc.model.Costruttore/ beanMapping qname=coc:IDOperatore xmlns:coc=urn:coc languageSpecificType=java:it.seceti.coc.model.IDOperatore/ beanMapping qname=coc:Esito xmlns:coc=urn:coc languageSpecificType=java:it.seceti.coc.model.esito.Esito/ beanMapping qname=coc:RisultatoOperazione xmlns:coc=urn:coc languageSpecificType=java:it.seceti.coc.model.esito.RisultatoOperazione / beanMapping qname=coc:Locale xmlns:coc=urn:coc languageSpecificType=java:it.seceti.coc.model.esito.Locale/ parameter name=wsdlServiceElement value=CostruttoriService/ parameter name=wsdlServicePort value=Costruttori/ parameter name=wsdlPortType value=Costruttori/ /service -- SNIPPET OF WSDL FILE: ... complexType name=Esito - sequence element name=dati nillable=true type=apachesoap:Map / element name=risultatoOperazione nillable=true type=tns1:RisultatoOperazione / /sequence /complexType /schema .. Subject:HashMap of HashMaps From: Lyndon Tiu ltiu () alumni ! sfu ! ca Date: 2004-11-23 22:03:12 Message-ID: 200411232203.iANM3CO2010215 () rm-rstar ! sfu ! ca [Download message RAW] Hello, I have a custom object I am trying to pass across the wire using AXIS wrapped style \ document-literal service. The complex object contains a HashMap of HashMaps (that is, the values of the \ HashMap, are HashMaps themselves). For reference, I have called this complex object \ ExternalDataWrapper. I have used the Java2WSDL tool to generate the WSDL for this class by supplying the \ Interface. Of course, the Interface does not specify that the HashMap's values will \ contain HashMaps, so it seems that the WSDL generated declares that the type of the \ value components of my HashMap will contain an xsd:string. A portion of the WSDL \ follows: schema targetNamespace=http://xml.apache.org/xml-soap; \ xmlns=http://www.w3.org/2001/XMLSchema; complexType name=mapItem sequence element name=key nillable=true type=xsd:string / element name=value nillable=true type=xsd:string / /sequence /complexType complexType name=Map sequence element maxOccurs=unbounded minOccurs=0 name=item \ type=apachesoap:mapItem / /sequence /complexType /schema schema targetNamespace=http://beans.xdb.geocortex.net; \ xmlns=http://www.w3.org/2001/XMLSchema; complexType name=ExternalDataWrapper sequence element name=data nillable=true type=apachesoap:Map / /sequence /complexType . . . I then used the WSDL2Java tool to generate the client stubs, server skeletons and \ bindings, and the .wsdd files. When I make a request to my webservice (which should \ return my complex object), I construct the HashMap of HashMaps in the Web Service \ implementation class. The response is serialized correctly as follows: \ soapenv:Envelope . soapenv:Body getDataResponse xmlns=my.namespace getDataReturn xmlns= data item xmlns:soapenc=http://schemas.xmlsoap.org/soap/encoding/; \ xmlns:nsl=http://xml.apache.org/xml-soap; key123/key value item keyOWNER/key valueMiller/value /item item keyAGE/key value42/value /item . . /value /item item key456/key value item .
adding soap header
Hi all I've created a method that adds a soap header I'm not sure what to put here - new SOAPHeaderElement (http://) Also i'm testing this using eclipse and the wtp tool. But can't see the header being created Can anyone suggest how i test this to see the header? Do i have to use something like MessageContext messagecontext = MessageContext.getCurrentContext(); ??? Thanks for any help public static String addSOAPHeader(String token) throws Exception { Service service = new Service(); Call call = (Call)service.createCall(); SOAPHeaderElement tokenHeader = new SOAPHeaderElement(http://taxservice,TokenHeader;); tokenHeader.setObjectValue(token); call.addHeader(tokenHeader); return token; } _ Be the first to hear what's new at MSN - sign up to our free newsletters! http://www.msn.co.uk/newsletters
problem when sending passing long strings in axis 1.1?
I've generated stub functions from a wsdl file and most of the time invoking those methods runs correctly however when I pass a long string as one parameter I get the traceback at the foot of this message. The generated method is as follows public int sendMessage(java.lang.String username, java.lang.String password, java.lang.String deviceMSISDN, java.lang.String message, boolean deliveryReport, java.lang.String mtBearer) throws java.rmi.RemoteException, com.orange.telematics.otel.soap.MessageServiceException I can send messages like this (of the length that fails) using a C++ application which has used the Borland methods for generated stubs from the wsdl and previously I was attempting to use axis 1.2RC3 this also worked ok. Unfortunately RC3 gave me problems when running the code from inside Oracle (which 1.1 doesn't). It seems that strings of around 300 characters give problems (the message parameter). Are there any known workarounds for this or is likely that I'm doing something else wrong? Robert AxisFault faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException faultSubcode: faultString: com.orange.telematics.otel.soap.MessageServiceException: faultActor: faultNode: faultDetail: {http://xml.apache.org/axis/}stackTrace: AxisFault faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException faultSubcode: faultString: com.orange.telematics.otel.soap.MessageServiceException: faultActor: faultNode: faultDetail: com.orange.telematics.otel.soap.MessageServiceException: at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:260) at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:169) at org.apache.axis.encoding.DeserializationContextImpl.endElement(DeserializationContextImpl.java:1015) at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1712) at org.apache.crimson.parser.Parser2.content(Parser2.java:1963) at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691) at org.apache.crimson.parser.Parser2.content(Parser2.java:1963) at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691) at org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:667) at org.apache.crimson.parser.Parser2.parse(Parser2.java:337) at org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:448) at javax.xml.parsers.SAXParser.parse(SAXParser.java:345) at org.apache.axis.encoding.DeserializationContextImpl.parse(DeserializationContextImpl.java:242) at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:538) at org.apache.axis.Message.getSOAPEnvelope(Message.java:376) at org.apache.axis.client.Call.invokeEngine(Call.java:2583) at org.apache.axis.client.Call.invoke(Call.java:2553) at org.apache.axis.client.Call.invoke(Call.java:2248) at org.apache.axis.client.Call.invoke(Call.java:2171) at org.apache.axis.client.Call.invoke(Call.java:1691) at uk.co.orange.m2mconnect.orange_soap.services.MessageService.MessageServiceSoapBindingStub.sendMessage(MessageServiceSoapBindingStub.java:270) at com.Ubiquitis.MessageCentre.M2M.sendMessage(M2M.java:287) at com.Ubiquitis.MessageCentre.M2M.main(M2M.java:573) com.orange.telematics.otel.soap.MessageServiceException: at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:260) at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:169) at org.apache.axis.encoding.DeserializationContextImpl.endElement(DeserializationContextImpl.java:1015) at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1712) at org.apache.crimson.parser.Parser2.content(Parser2.java:1963) at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691) at org.apache.crimson.parser.Parser2.content(Parser2.java:1963) at org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691) at org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:667) at org.apache.crimson.parser.Parser2.parse(Parser2.java:337) at org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:448) at javax.xml.parsers.SAXParser.parse(SAXParser.java:345) at org.apache.axis.encoding.DeserializationContextImpl.parse(DeserializationContextImpl.java:242) at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:538) at org.apache.axis.Message.getSOAPEnvelope(Message.java:376) at org.apache.axis.client.Call.invokeEngine(Call.java:2583) at org.apache.axis.client.Call.invoke(Call.java:2553) at org.apache.axis.client.Call.invoke(Call.java:2248) at org.apache.axis.client.Call.invoke(Call.java:2171) at org.apache.axis.client.Call.invoke(Call.java:1691) at
Seeing soap response/request
Hi all I've created a method that creats a soap header and i want to test it to make sure the header is being created. Please can someone help me ahieve this. My method public static String addSOAPHeader(String token) throws Exception { Service service = new Service(); Call call = (Call)service.createCall(); SOAPHeaderElement tokenHeader = new SOAPHeaderElement(http://taxservice,TokenHeader;); tokenHeader.setObjectValue(token); call.addHeader(tokenHeader); //MessageContext messagecontext = MessageContext.getCurrentContext(); //Message message = messagecontext.getCurrentMessage(); return token; } _ Winks nudges are here - download MSN Messenger 7.0 today! http://messenger.msn.co.uk
Error: deploying Web service to Axis runtime
I get this error when creating a web service using eclipse wtp tools Can anyone enlighten me to what this means and how i fix it I've had no response from eclipse forums Many thanks for your help IWAB0489E Error when deploying Web service to Axis runtime axis-admin failed with {http://xml.apache.org/axis/}HTTP (404)/xxx/services/AdminService _ Be the first to hear what's new at MSN - sign up to our free newsletters! http://www.msn.co.uk/newsletters
RE: is it possible to change soapenc:string to xsd:string in generated WSDL?
Clint, hm, I have no Axis specific code in my web service. I just wrote a JAX-RPC compliant web service and added Axis to my web app and then let Axis generate the WSDL and all for me in the deploy (wsdd) step. I think I even did not try to write a client utilizing Axis, I just have But, maybe when they fix your issue my one is gone too :-) BTW: I tried to interest them to let the dotNetSoapEncFix to be controled on a per service base (in wsdd file for a service) but seems there's no audience for this ;-) http://issues.apache.org/jira/browse/AXIS-1879 Will have a look at this tomorrow again .. cu Merten -Original Message- From: Dovholuk, Clint [mailto:[EMAIL PROTECTED] Sent: Thursday, May 05, 2005 4:45 PM To: axis-user@ws.apache.org Subject: RE: is it possible to change soapenc:string to xsd:string in generated WSDL? Merten, I've opened a bug I think that is about your issue... http://issues.apache.org/jira/browse/AXIS-1976 it seems that the flag is being reset whenever you call a web service using the axis generated classes. to solve the issue myself, before I return anything I do: if(!TypeMappingImpl.dotnet_soapenc_bugfix) { TypeMappingImpl.dotnet_soapenc_bugfix = true; //or whichever value you need } it does the trick for me, but it's got to be a bug... Are you using any autogenerated classes to call some other web service and THEN seeing the issue? -Clint -Original Message- From: Merten Schumann [mailto:[EMAIL PROTECTED] Sent: Thursday, May 05, 2005 10:31 AM To: axis-user@ws.apache.org Subject: RE: is it possible to change soapenc:string to xsd:string in generated WSDL? Hello, just tried Axis 1.2 final instead of 1.2rc3. My web services still work fine :-) Found that the param dotNetSoapEncFix in server-config.wsdd obviously made it to the final 1.2 That's fine for my usage scenario. Seems, by default it's set to true. Anyway, I still have these strange behaviour with freshly deployed services, see below ... Again, anybody else experiencing this strange behaviour in Axis? Maybe it's just my usage scenario here with Tomcat in a Windows environment or so ... cu Merten -Original Message- From: Merten Schumann [mailto:[EMAIL PROTECTED] Sent: Wednesday, April 13, 2005 5:19 PM To: axis-user@ws.apache.org Subject: RE: is it possible to change soapenc:string to xsd:string in generated WSDL? Hello, I'm playing around with this dotNetSoapEncFix in Axis. It works fine so far, I have xsd:string instead of soapenc:string in my generated WSDL. But for rpc/enc web services, it works a bit funny: when I deploy my service and look at the WSDL, there are these soapenc:string beasts contained. I have to stop/start my web app (containing Axis), when I then retrieve the WSDL again (I do not undeploy/deploy my service again), it's correctly containing the xsd:string stuff. This feature works each time when I deploy my service for the first time ... It seems, for rpc/lit and doc/lit this issue doesn't appear. Anybody else experiencing this strange behaviour in Axis??? cu Merten -Original Message- From: Merten Schumann [mailto:[EMAIL PROTECTED] Sent: Friday, March 18, 2005 10:19 AM To: axis-user@ws.apache.org Subject: RE: is it possible to change soapenc:string to xsd:string in generated WSDL? as suggested, created an enhancement request http://issues.apache.org/jira/browse/AXIS-1879 :-) cu Merten
trying to use the typeMapping tag, to fix a problem with SOAP sent from Mac OS X, 10.3
Dear list, I'm new to Axis, but not to web-services development. I've developed web services clients for the Mac, which communicate to .NET based services. Now, I'm involved in ditching the .NET work, in favor of Axis. Anyway, we have a few Mac clients, which send some data Base64 encoded. So, when the data gets serialized into the SOAP packet, the parameter might look something like this: myTag xsi:type=xsd:base64/myTag For some reason, Mac OS X, 10.3, claims the type is base64, when it really should be base64Binary. Why it does this, I don't know. (For those who are curious, 10.4, or Tiger, does flag the parameter as a base64Binary) What I'm trying to tell Axis, is that if you see a param flagged as a base64, then treat it as a base64Binary. My guess is that I can accomplish this by adding a typeMapping tag in my deploy.wsdd file: typeMapping qname=xsd:base64 xmlns:xsd=http://www.w3.org/2001/XMLSchema; languageSpecificType=java:byte[] serializer=org.apache.axis.encoding.ser.Base64SerializerFactory deserializer=org.apache.axis.encoding.ser.Base64DeserializerFactory encodingStyle=http://schemas.xmlsoap.org/soap/encoding/; / But this seems to have no effect, as I still get a SOAP-fault message sent back. If anyone has done something like this, I'd really like to know how, as I'd like to continue to allow Mac OS X users to connect to my Web Service. Thanks for any help in this regard, -Dan. P.S. - I'm using Eclipse 3.1M6, with the latest Web Tools, which includes Axis 1.1.
Re: ANNOUNCE : Axis 1.2 RELEASE
Somebody should upgrade the http://ws.apache.org/axis/ main page: doesnt show the 1.2 release yet. Christian Faucher On 5/4/05, Glen Daniels [EMAIL PROTECTED] wrote: Hi folks: After *much* too long, the Axis team would like to announce the release of Axis 1.2 final. You can get it at: http://www.apache.org/dyn/closer.cgi/ws/axis/1_2/ (if your favorite mirror doesn't have it yet try another, it's propagating now) A few words about this release - * A LOT of things have been cleaned up/fixed since 1.1, but 1.2 is not yet a perfect beast. We know there are still issues that, although they didn't block this release, are important to our user base. We will be working to resolve these in the near term, which brings us to... * This took way too much time. We will (for the remainder of Axis 1.X's lifetime and hopefully all of Axis 2.0's...) be focusing much more aggressively on the release early and often mantra. Expect to see more fixes and more official releases near term. * Thanks to EVERYONE who submitted bug reports, patches, and (especially) good, concise test cases. Without your help we wouldn't have been able to make half the progress we did. * As always, please send questions/comments to axis-user@ws.apache.org, and development-related issues to [EMAIL PROTECTED] Issues may be checked and filed at http://issues.apache.org/jira/browse/AXIS Onwards to 1.Next... Thanks, --Glen on behalf of the Axis team
Re: is it possible to change soapenc:string to xsd:string in generated WSDL?
Merten, we are interested in fixing this...but there just so many things to do and so few hours in a day :) -- dims On 5/5/05, Merten Schumann [EMAIL PROTECTED] wrote: Clint, hm, I have no Axis specific code in my web service. I just wrote a JAX-RPC compliant web service and added Axis to my web app and then let Axis generate the WSDL and all for me in the deploy (wsdd) step. I think I even did not try to write a client utilizing Axis, I just have But, maybe when they fix your issue my one is gone too :-) BTW: I tried to interest them to let the dotNetSoapEncFix to be controled on a per service base (in wsdd file for a service) but seems there's no audience for this ;-) http://issues.apache.org/jira/browse/AXIS-1879 Will have a look at this tomorrow again .. cu Merten -Original Message- From: Dovholuk, Clint [mailto:[EMAIL PROTECTED] Sent: Thursday, May 05, 2005 4:45 PM To: axis-user@ws.apache.org Subject: RE: is it possible to change soapenc:string to xsd:string in generated WSDL? Merten, I've opened a bug I think that is about your issue... http://issues.apache.org/jira/browse/AXIS-1976 it seems that the flag is being reset whenever you call a web service using the axis generated classes. to solve the issue myself, before I return anything I do: if(!TypeMappingImpl.dotnet_soapenc_bugfix) { TypeMappingImpl.dotnet_soapenc_bugfix = true; //or whichever value you need } it does the trick for me, but it's got to be a bug... Are you using any autogenerated classes to call some other web service and THEN seeing the issue? -Clint -Original Message- From: Merten Schumann [mailto:[EMAIL PROTECTED] Sent: Thursday, May 05, 2005 10:31 AM To: axis-user@ws.apache.org Subject: RE: is it possible to change soapenc:string to xsd:string in generated WSDL? Hello, just tried Axis 1.2 final instead of 1.2rc3. My web services still work fine :-) Found that the param dotNetSoapEncFix in server-config.wsdd obviously made it to the final 1.2 That's fine for my usage scenario. Seems, by default it's set to true. Anyway, I still have these strange behaviour with freshly deployed services, see below ... Again, anybody else experiencing this strange behaviour in Axis? Maybe it's just my usage scenario here with Tomcat in a Windows environment or so ... cu Merten -Original Message- From: Merten Schumann [mailto:[EMAIL PROTECTED] Sent: Wednesday, April 13, 2005 5:19 PM To: axis-user@ws.apache.org Subject: RE: is it possible to change soapenc:string to xsd:string in generated WSDL? Hello, I'm playing around with this dotNetSoapEncFix in Axis. It works fine so far, I have xsd:string instead of soapenc:string in my generated WSDL. But for rpc/enc web services, it works a bit funny: when I deploy my service and look at the WSDL, there are these soapenc:string beasts contained. I have to stop/start my web app (containing Axis), when I then retrieve the WSDL again (I do not undeploy/deploy my service again), it's correctly containing the xsd:string stuff. This feature works each time when I deploy my service for the first time ... It seems, for rpc/lit and doc/lit this issue doesn't appear. Anybody else experiencing this strange behaviour in Axis??? cu Merten -Original Message- From: Merten Schumann [mailto:[EMAIL PROTECTED] Sent: Friday, March 18, 2005 10:19 AM To: axis-user@ws.apache.org Subject: RE: is it possible to change soapenc:string to xsd:string in generated WSDL? as suggested, created an enhancement request http://issues.apache.org/jira/browse/AXIS-1879 :-) cu Merten -- Davanum Srinivas - http://webservices.apache.org/~dims/
Using JDK5 enums with Axis 1.2
I have a web application with an embedded instance of Axis 1.2 final in it. We were using JDK 1.4.2, but in preparation for JDK 5, I started running some tests. One of those tests was to create a JDK5 enumeration and have my web service run/use it. Just a note, my web service now has both JDK 1.4-style enumerations (enum pattern) and JDK 5 enumerations. The service implementation looks something like this: public EnumPattern[] getEnumPatern( EnumPattern z ) {...} public EnumType[] getEnumType( EnumType z ) {...} The EnumPattern is the 1.4 implementation using the pattern, while EnumType is an instance of a JDK 5 enumeration type. I used both arrays and single instances so that the WSDL generators would generate definitions of both single and array. When I let Axis auto generate the WSDL file, I get definitions for EnumPattern[], EnumPattern and EnumType[], but not EnumType. There is also no warnings/errors in my logs (in 1.2-rc3, axis would warn me about classes without public constructors, etc). When I use the Ant Java2WSDL to generate the WSDL file, I get the following warning on the output stream: [axis-java2wsdl] - The class com.nci.common.enums.EnumType does not contain a default constructor, which is a requirement for a bean class. The class cannot be converted into an xml schema type. An xml schema anyType will be used to define this class in the wsdl file. Now this is VERY interesting, as the enum type definition in JDK 5 REQUIRES the enumeration's constructor to be private. But then of course, if I remember correctly, the ant tasks don't actually look at the typeMappings to help determine if a bean is actually a bean or an enumeration. So, I'm assuming that this is a false error. Now, it may be that I'm configuring the serializer/deserializer wrong. I mean, it's happened before, and I'm sure it'll happen again. So, here is what I'm using in my server-config.wsdd file: typeMapping qname=ns:EnumType xmlns:ns=urn:service.nci.com type=java:com.nci.common.enums.EnumType serializer=org.apache.axis.encoding.ser.EnumSerializerFactory deserializer=org.apache.axis.encoding.ser.EnumDeserializerFactory encodingStyle=http://schemas.xmlsoap.org/soap/encoding// I've done some extensive searching on the mailing lists (both user and developer), with rather muddied results. Some say things work, others say things don't. Many problems were identified with enumerations and Axis 1.2-rc1 or rc2, but nothing specific to the final 1.2. Can someone explicitly confirm or deny for me whether or not Axis supports JDK5 during runtime? Thanks JDG --- Jay Dickon Glanville
Re: trying to use the typeMapping tag, to fix a problem with SOAP sent from Mac OS X, 10.3
The fault string that I get back is this: org.xml.sax.SAXException: Deserializing parameter 'inPassword': could not find deserializer for type {http://www.w3.org/2001/ XMLSchema}base64 Don't know if that will help. Thanks for your help so far. -Dan. On May 5, 2005, at 12:56 PM, Jeff Greif wrote: It's a little hard to tell without seeing the fault, but somewhere there should be an accessible declaration of the type xsd:base64, for example as a trivial restriction of xsd:base64Binary to prevent failure based on no type definition being available. You may not be allowed to define new types in the XML Schema namespace, so this may be a trickier problem than it looks. Jeff Daniel Morrow wrote: Dear list, I'm new to Axis, but not to web-services development. I've developed web services clients for the Mac, which communicate to .NET based services. Now, I'm involved in ditching the .NET work, in favor of Axis. Anyway, we have a few Mac clients, which send some data Base64 encoded. So, when the data gets serialized into the SOAP packet, the parameter might look something like this: myTag xsi:type=xsd:base64/myTag For some reason, Mac OS X, 10.3, claims the type is base64, when it really should be base64Binary. Why it does this, I don't know. (For those who are curious, 10.4, or Tiger, does flag the parameter as a base64Binary) What I'm trying to tell Axis, is that if you see a param flagged as a base64, then treat it as a base64Binary. My guess is that I can accomplish this by adding a typeMapping tag in my deploy.wsdd file: typeMapping qname=xsd:base64 xmlns:xsd=http://www.w3.org/2001/XMLSchema; languageSpecificType=java:byte[] serializer=org.apache.axis.encoding.ser.Base64SerializerFactory deserializer=org.apache.axis.encoding.ser.Base64DeserializerFactory encodingStyle=http://schemas.xmlsoap.org/soap/encoding/; / But this seems to have no effect, as I still get a SOAP-fault message sent back. If anyone has done something like this, I'd really like to know how, as I'd like to continue to allow Mac OS X users to connect to my Web Service. Thanks for any help in this regard, -Dan. P.S. - I'm using Eclipse 3.1M6, with the latest Web Tools, which includes Axis 1.1.