RE: Two build questions
If you do not specify the lib names in conf then Axis relies on defaults which should get picked up from lib path. Samisa Abeysinghe [EMAIL PROTECTED] 24/08/2005 05:34 Please respond to Apache AXIS C User List To Apache AXIS C User List axis-c-user@ws.apache.org cc Subject RE: Two build questions Hi Kevin, -Original Message- From: Kevin Rogers [mailto:[EMAIL PROTECTED] Sent: Wednesday, August 24, 2005 3:20 AM To: Apache AXIS C User List Subject: Re: Two build questions Hey Samisa, thanks for the response. See my notes below: Samisa Abeysinghe wrote: We seem to have few problems with Xerces 2.6 with some test cases. However, I was able to run the samples both on Linux and Windows using Xerces 2.6 I am, unfortunately, unable to upgrade to 2.6 at this time because of dependencies of other tools in my work envirnoment on Xerces. I'll keep trying, or maybe try to set up my environment to fall back to the 2.2 version that Axis 1.5.0 was built against. Xerces 2.0 doe not seem to have any problems at the moment. Hence you will have fewer issues with it. axisapp.conf file is not pointing to the Xerces parser. Rather it is ponting to the Axis C++ implementation of the Xerces based paser abstraction layer lib. The libs such as Xerces are infact are picked from the lib path. We need the axiscpp.conf file to specify the location of the paser, transport and cannel abstraction implementations. Yes, this is true. However, isn't this why you copy libaxis_xercesc.so (the default parser library) to libaxis_xmlparser.so (or create a simlink to accomplish the same thing)? Am I misunderstanding in thinking that these two libs are supposed to be exactly the same, only with different names? Well you do not have to have different names. You can use libaxis_xercesc.so directly in axiscpp.conf file If I am understanding correctly, this requires a step (post-build) on the user's part to make sure that they have either copied or linked the appropriate XML parser lib so that it is represented by the name 'axis_xmlparser', which is just an abstraction you have placed on top of it. If this is the case, why not just do the same thing for the transport and channel libs? Meaning, why don't you provide generic lib names as an abstraction on top of the libraries, and then rely on the user to either copy or link them post-build? This would do away with the need for the conf file, correct? The only reason that I can think of to have a conf file is to have the possibility of switching the transport and parser libs. However, as we build shared libs, as you are suggesting, we would be able to pick the libs from the lib path and use it. I have never tried it but you have a valid point here. As of now the code is written to locate it from conf file and load it - may be this can be changed, but someone needs to look into the viability. Thanks, Samisa... Second, for right now, I need to have the axiscpp.conf file located somewhere other that /etc, and was wondering what needs to be done to make that happen? You do not need to have the conf file in /etc. All that you have to do is to define the AXISCPP_DEPLOY environment variable. Then both the server and clients will try to locate the conf file from $AXISCPP_DEPLOY/etc. Obviously, if AXISCPP_DEPLOY is not set, it will look in /etc. Thanks! That hint just helped me track that down to the common/AxisConfig.cpp file. I'll try that out now. Best, Kevin -- Kevin Rogers PDI / Dreamworks ext.29163 | 650.562.9163 [EMAIL PROTECTED]
RE: Two build questions
Oh I did not know that. In fact I never tried without conf file entry. -Original Message- From: John Hawkins [mailto:[EMAIL PROTECTED] Sent: Wednesday, August 24, 2005 1:39 PM To: Apache AXIS C User List Subject: RE: Two build questions If you do not specify the lib names in conf then Axis relies on defaults which should get picked up from lib path. Samisa Abeysinghe [EMAIL PROTECTED] 24/08/2005 05:34 Please respond to Apache AXIS C User List To Apache AXIS C User List axis-c-user@ws.apache.org cc Subject RE: Two build questions Hi Kevin, -Original Message- From: Kevin Rogers [mailto:[EMAIL PROTECTED] Sent: Wednesday, August 24, 2005 3:20 AM To: Apache AXIS C User List Subject: Re: Two build questions Hey Samisa, thanks for the response. See my notes below: Samisa Abeysinghe wrote: We seem to have few problems with Xerces 2.6 with some test cases. However, I was able to run the samples both on Linux and Windows using Xerces 2.6 I am, unfortunately, unable to upgrade to 2.6 at this time because of dependencies of other tools in my work envirnoment on Xerces. I'll keep trying, or maybe try to set up my environment to fall back to the 2.2 version that Axis 1.5.0 was built against. Xerces 2.0 doe not seem to have any problems at the moment. Hence you will have fewer issues with it. axisapp.conf file is not pointing to the Xerces parser. Rather it is ponting to the Axis C++ implementation of the Xerces based paser abstraction layer lib. The libs such as Xerces are infact are picked from the lib path. We need the axiscpp.conf file to specify the location of the paser, transport and cannel abstraction implementations. Yes, this is true. However, isn't this why you copy libaxis_xercesc.so (the default parser library) to libaxis_xmlparser.so (or create a simlink to accomplish the same thing)? Am I misunderstanding in thinking that these two libs are supposed to be exactly the same, only with different names? Well you do not have to have different names. You can use libaxis_xercesc.so directly in axiscpp.conf file If I am understanding correctly, this requires a step (post-build) on the user's part to make sure that they have either copied or linked the appropriate XML parser lib so that it is represented by the name 'axis_xmlparser', which is just an abstraction you have placed on top of it. If this is the case, why not just do the same thing for the transport and channel libs? Meaning, why don't you provide generic lib names as an abstraction on top of the libraries, and then rely on the user to either copy or link them post-build? This would do away with the need for the conf file, correct? The only reason that I can think of to have a conf file is to have the possibility of switching the transport and parser libs. However, as we build shared libs, as you are suggesting, we would be able to pick the libs from the lib path and use it. I have never tried it but you have a valid point here. As of now the code is written to locate it from conf file and load it - may be this can be changed, but someone needs to look into the viability. Thanks, Samisa... Second, for right now, I need to have the axiscpp.conf file located somewhere other that /etc, and was wondering what needs to be done to make that happen? You do not need to have the conf file in /etc. All that you have to do is to define the AXISCPP_DEPLOY environment variable. Then both the server and clients will try to locate the conf file from $AXISCPP_DEPLOY/etc. Obviously, if AXISCPP_DEPLOY is not set, it will look in /etc. Thanks! That hint just helped me track that down to the common/AxisConfig.cpp file. I'll try that out now. Best, Kevin -- Kevin Rogers PDI / Dreamworks ext.29163 | 650.562.9163 [EMAIL PROTECTED]
Re: [Axis2] Build problem with Maven 1.1-beta-1
I can't run the build still.. I have a commit wating to do :(( ~ThilinaOn 8/24/05, Eran Chinthaka [EMAIL PROTECTED] wrote: Hi, Today I installed maven 1.1-beta-1 and got some errors with the build, saying can't upload jars. The fix to this was to update to the new maven artifact plugin 1.6. If you also encounter this, just type the following to get the artifact plugin updated to 1.6. maven plugin:download -DgroupId=maven -DartifactId=maven-artifact-plugin -Dversion=1.6 (thanks Dims for the help on this) -- Chinthaka -- May the SourcE be with u http://www.bloglines.com/blog/thilina http://webservices.apache.org/~thilina/
Re: soap:headers and explicit service context
Hi, But it doesn't expose these headers are part of the method signature. This is what I thought as well, hence my question, but it turns out my wsdl was incorrect. If you want your soap:headers be part of the method signature (explicit service context) then as far as I understand it you need to set the part attribute of the soap:header to a wsdl:part in the wsdl:message that is refered to by the wsdl:input/wsdl:output of the wsdl:operation. If the part attribute refers to a part in a message not refered to by the input or output of the message then the header parts will not be part of the method signature and you need to write custom handlers in order to deal with headers (implicit service context). However there are still a couple of strange things I encountered when using soap:headers in document/literal style documents: - the parameters generated from the wsdl:input parts are wrapped in a java object, while when not using headers they are not; - when combining explicit and implicit soap:headers in one wsdl document the wrapped java object mentioned above is not generated but is actually refered to by the generated stub. Regards, Hans But it doesn't expose these headers are part of the method signature. You're left to call setHeader yourself (and therefore have to manualy copy over the element names namespaces from the WSDL, which is error prone). I think I logged a bug for this a while back. Cheers Simon -Original Message- From: Davanum Srinivas [mailto:[EMAIL PROTECTED] Sent: Tuesday, August 23, 2005 7:35 AM To: axis-user@ws.apache.org Subject: Re: soap:headers and explicit service context If you set up the wsdl correctly, then the generated code has the addition java objects for the stuff in soap headers. -- dims On 8/23/05, Hans Planting (CWEU-USERS/CWNL) [EMAIL PROTECTED] wrote: Hi there, Is there support planned for explicit soap headers as described in JAX-RPC 1.1 chapter 11.2.2? With explicit soap headers I'd expect Axis to append additional parameters for soap:headers following the service endpoint defined paramers in the remote method signature. Also no custom parsing/deserialization would need to be implemented. Currently in order to process soap:headers you need to implement a handler or use the setHeader and getHeader methods in org.apache.axis.client.Stub and in both cases implement code to parse/deserialize the soap elements; Axis does not deserialize the contents of soap:headers to Java objects (correct me if I'm wrong - is there a way to do this?). Thanx! Hans -- Davanum Srinivas : http://wso2.com/ - Oxygenating The Web Service Platform
[Axis] Serializer for classes which implement java.io.Serializable
Hi all, I have to use an asset of classes implementing java.io.Serializable in my web service. For the WSDL generation of my deployed Web Service I would like to know which Serializer to use or do I have to write my own one? When testing the Web Service as .jws, Axis is able to generate the WSDL file with all types and messages. When deploying the Web Service via a WSDD the types and messages in the WSDL are missing. Any hint is highly appreciated! Thanks! Denis
Download archives for Axis 1.1?
What's happened to the archives of the Axis 1.1 jars? All the download sites I've tried today claim to have them but the links don't work. Guy Rixon [EMAIL PROTECTED] Institute of Astronomy Tel: +44-1223-337542 Madingley Road, Cambridge, UK, CB3 0HA Fax: +44-1223-337523
Re: Download archives for Axis 1.1?
try http://archive.apache.org/dist/ws/axis/1_1/ The links on the news page seem to be broken. - venkat On 8/24/05, Guy Rixon [EMAIL PROTECTED] wrote: What's happened to the archives of the Axis 1.1 jars? All the download sites I've tried today claim to have them but the links don't work. Guy Rixon [EMAIL PROTECTED] Institute of Astronomy Tel: +44-1223-337542 Madingley Road, Cambridge, UK, CB3 0HA Fax: +44-1223-337523
RE: SOApMonitor
Refer to user guide, it shows how to enable SOAP Monitor -Original Message- From: Kirti Bodhmage [mailto:[EMAIL PROTECTED] Sent: 2005年8月24日 20:02 To: axis-user@ws.apache.org Subject: SOApMonitor SOAPMonitor on welcome page of the Axis is not working , it says disabled by default for security reasons and to enable the disabled features, uncomment the appropriate declarations in WEB-INF/web.xml in the webapplication and restart it. But there is no security entry to in WEB.xml to enable SOAPMonitor. How to we enable it ?
Re: Handling custom exceptions
my-opinionAny production service should be sourced from a WSDL!/my-opinion You will need to define a fault message on your port bindings of the WSDL: wsdl:definitions wsdl:types xsd:schema xsd:import !-- type definition in here-- /xsd:schema /wsdl:types wsdl:message name=CustomException wsdl:port name=fault1 element=typefromschema:CustomExceptionElement/ /wsdl:message . .!-- other messages -- . wsdl:portType name=ThePort wsdl:operation name=getFoo wsdl:input name=in message=tns:FooInMsg/ wsdl:output name=out message=tns:FooOutMsg/ wsdl:fault name=CustomEx message=tns:CustomException/ /wsdl:portType . . . /wsdl:definitions Quoting Yashavanth Prakash [EMAIL PROTECTED]: Hi I want to know how to send custom exceptions from server side to client other than cathcing custom exception and throwing the Axis Fault Any related documentation or earlier mails about this would be very helpful Background: we are building a webservice based component. As the webservice interacts with other applications which throw app specific error, we want to pass the same to the client for further handling Any help/suggestions in this regard would be really helpful Thanks Yash __ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com
Consuming web services over SSL using AXIS 1.2.1 -- How to?
Hi all, I have a need to consume .NET web services over SSL using AXIS 1.2.1. What are the steps involved in accomplishing this? My systems look like this: Apache WebServer 2.0.52 together with mod_jk for loadbalancing, tomcat 5.5.9 cluster where AXIS 1.2.1 and webservices are deployed. Where should the trust certificate go? What code modifications are needed? Is this the same thing as making connection to an URL through HTTPS in Java? Thanks in advance. Gary
Re: Consuming web services over SSL using AXIS 1.2.1 -- How to?
1. import the service provider certificate in ur trust store. 2. set below properties in ur web services client program: System.setProperty(java.protocol.handler.pkgs,com.ibm.net.ssl.internal.www.protocol); Security.addProvider(new JSSEProvider()); System.setProperty(javax.net.ssl.trustStore,mykeystore.ks); System.setProperty(javax.net.ssl.trustStorePassword, mystorepassword); // if u behind a firewall proxy then set below System.setProperty(http.proxyHost, 140.4236.2435.47); System.setProperty(http.proxyPort, 31248);
Re: SOApMonitor
Hi By refering to UserGuide you can get good idea about how t enable and use this SOAP Monitor. Best Regards Thushantha SOAPMonitor on welcome page of the Axis is not working , it says disabled by default for security reasons and to enable the disabled features, uncomment the appropriate declarations in WEB-INF/web.xml in the webapplication and restart it. But there is no security entry to in WEB.xml to enable SOAPMonitor. How to we enable it ?
Re: [Axis2] Build problem with Maven 1.1-beta-1
What's the error message? i tried on 2 different systems. works for me. -- dims On 8/24/05, Thilina Gunarathne [EMAIL PROTECTED] wrote: I can't run the build still.. I have a commit wating to do :(( ~Thilina On 8/24/05, Eran Chinthaka [EMAIL PROTECTED] wrote: Hi, Today I installed maven 1.1-beta-1 and got some errors with the build, saying can't upload jars. The fix to this was to update to the new maven artifact plugin 1.6. If you also encounter this, just type the following to get the artifact plugin updated to 1.6. maven plugin:download -DgroupId=maven -DartifactId=maven-artifact-plugin -Dversion=1.6 (thanks Dims for the help on this) -- Chinthaka -- May the SourcE be with u http://www.bloglines.com/blog/thilina http://webservices.apache.org/~thilina/ -- Davanum Srinivas : http://wso2.com/ - Oxygenating The Web Service Platform
RE: Consuming web services over SSL using AXIS 1.2.1 -- How to?
Thank you very much. Gary -Original Message- From: Kr [mailto:[EMAIL PROTECTED] Sent: August 24, 2005 8:53 AM To: axis-user@ws.apache.org Subject: Re: Consuming web services over SSL using AXIS 1.2.1 -- How to? 1. import the service provider certificate in ur trust store. 2. set below properties in ur web services client program: System.setProperty(java.protocol.handler.pkgs,com.ibm.net.ssl.interna l.www.protocol); Security.addProvider(new JSSEProvider()); System.setProperty(javax.net.ssl.trustStore,mykeystore.ks); System.setProperty(javax.net.ssl.trustStorePassword, mystorepassword); // if u behind a firewall proxy then set below System.setProperty(http.proxyHost, 140.4236.2435.47); System.setProperty(http.proxyPort, 31248);
[Axis 1.2] Implementing Serializers for complex types
Hi all, I need to implement some (de)serializers for an asset of Java classes as these are not implemented in bean style. The Java classes themselves may contain other complex types (classes) again. I dont know how to start as I only found examples for Java classes with simple type members. Please help! Denis
[Axis2] Generating WSDL files from Java classes
Hi! After I have implemented my web service classes I wonder how to generate the WSDL files from these with Axis2. In Axis 1.2 it was possible via Java2WSDL or the dynamic generation when adding ?wsdl to the web service URL. Any help appreciated! Denis
1.2.1 autogen WSDL seems to be wrong
I've written a simple web service (JWS) that includes a method that returns a complex type (well hardly complex, just a couple of strings and booleans). The auto-generated WSDL (using Axis 1_2_1 final) for this web service makes no sense to me. For example, I have two booleans in my complex type, something like this: class Person { public boolean istall; public boolean isrich; }; Yet the WSDL indicates: element name=istall type=xsd:anyType / element name=isrich type=tns3:boolean / Note the two different WSDL types for identical (boolean) Java types. Is this likely to be a bug in Axis 1_2_1 final? Should I be using a different version (which?) Thanks. _ Dont just search. Find. Check out the new MSN Search! http://search.msn.click-url.com/go/onm00200636ave/direct/01/
RE: 1.2.1 autogen WSDL seems to be wrong
Your class should be more consistent with the JavaBeans standard with private members that are 'tall' and 'rich' with getters 'isTall' and 'isRich' and setters 'setTall' and 'setRich' and I wager the Java2WSDL will be more consistent as well. Michael Oliver CTO Alarius Systems LLC 6800 E. Lake Mead Blvd, #1096 Las Vegas, NV 89156 Phone:(702)643-7425 Fax:(702)974-0341 *Note new email changed from [EMAIL PROTECTED] -Original Message- From: Jarmo Doc [mailto:[EMAIL PROTECTED] Sent: Wednesday, August 24, 2005 7:29 AM To: axis-user@ws.apache.org Subject: 1.2.1 autogen WSDL seems to be wrong I've written a simple web service (JWS) that includes a method that returns a complex type (well hardly complex, just a couple of strings and booleans). The auto-generated WSDL (using Axis 1_2_1 final) for this web service makes no sense to me. For example, I have two booleans in my complex type, something like this: class Person { public boolean istall; public boolean isrich; }; Yet the WSDL indicates: element name=istall type=xsd:anyType / element name=isrich type=tns3:boolean / Note the two different WSDL types for identical (boolean) Java types. Is this likely to be a bug in Axis 1_2_1 final? Should I be using a different version (which?) Thanks. _ Don't just search. Find. Check out the new MSN Search! http://search.msn.click-url.com/go/onm00200636ave/direct/01/
RE: 1.2.1 autogen WSDL seems to be wrong
Thanks for the quick reply Michael. I made that change but there is no improvement. Here are the relevant parts of my server-side class: public class MyMessage implements java.io.Serializable { private String uid; private String content; public MyMessage() {} public String getUid() { return uid; } public void setUid(String uid) { this.uid = uid; } public String getContent() { return content; } public void setContent(String content) { this.content = content; } }; I updated my JWS source file (and deleted the corresponding class file, just to be safe), restarted Tomcat, and requested the WSDL by invoking http://localhost:8080/axis/MyWebService.jws?wsdl and here are the (unexpected) results: complexType name=MyMessage sequence element name=content nillable=true type=xsd:anyType / element name=uid nillable=true type=tns2:String / /sequence /complexType Am I still writing my Java class incorrectly? From: Michael Oliver [EMAIL PROTECTED] Reply-To: [EMAIL PROTECTED] To: axis-user@ws.apache.org Subject: RE: 1.2.1 autogen WSDL seems to be wrong Date: Wed, 24 Aug 2005 07:34:23 -0700 Your class should be more consistent with the JavaBeans standard with private members that are 'tall' and 'rich' with getters 'isTall' and 'isRich' and setters 'setTall' and 'setRich' and I wager the Java2WSDL will be more consistent as well. Michael Oliver CTO Alarius Systems LLC 6800 E. Lake Mead Blvd, #1096 Las Vegas, NV 89156 Phone:(702)643-7425 Fax:(702)974-0341 *Note new email changed from [EMAIL PROTECTED] -Original Message- From: Jarmo Doc [mailto:[EMAIL PROTECTED] Sent: Wednesday, August 24, 2005 7:29 AM To: axis-user@ws.apache.org Subject: 1.2.1 autogen WSDL seems to be wrong I've written a simple web service (JWS) that includes a method that returns a complex type (well hardly complex, just a couple of strings and booleans). The auto-generated WSDL (using Axis 1_2_1 final) for this web service makes no sense to me. For example, I have two booleans in my complex type, something like this: class Person { public boolean istall; public boolean isrich; }; Yet the WSDL indicates: element name=istall type=xsd:anyType / element name=isrich type=tns3:boolean / Note the two different WSDL types for identical (boolean) Java types. Is this likely to be a bug in Axis 1_2_1 final? Should I be using a different version (which?) Thanks. _ Don't just search. Find. Check out the new MSN Search! http://search.msn.click-url.com/go/onm00200636ave/direct/01/ _ Dont just search. Find. Check out the new MSN Search! http://search.msn.click-url.com/go/onm00200636ave/direct/01/
Sample calculator cannot deserialize int
Given the other problems I've been having with Axis 1.2.1 final on Tomcat 5.5.9, I decided to go back to basics and test the sample calculator program. It fails to run, as follows: SAXException: Deserializing parameter 'op1': could not find deserializer for type {http://www.w3.org/2001/XMLSchema}int I note in the calculator client source that it expects 'op1' to be of type XMLType.XSD_INT and the WSDL auto-generated by Axis returned the following: wsdl:message name=addRequest wsdl:part name=i1 type=xsd:int / wsdl:part name=i2 type=xsd:int / /wsdl:message I followed the instructions at http://ws.apache.org/axis/java/user-guide.html for this. Why does it fail? PS I am using JDK 1.4.2_05. _ Dont just search. Find. Check out the new MSN Search! http://search.msn.click-url.com/go/onm00200636ave/direct/01/
send a xml document ¿as parameter or attachment?
Hi all!, I'm developing a webservice, my first webservice :)) . I'm anovice in webservices. I want to return a xml document. How to do that?. As a string parameter?,attachment?. Can you help me?. Thanks, Antonio.
mustUnderstand fault even after setProcessed(true)
Hi. I have deployed a (message) web service with axis 1.1, but the service is answering http/500, mustUnderstand failed. I find this extremely weird, since I have marked the header as processed, like this: SOAPHeaderElement soapHeaderElement; try { Iterator it = req.getHeader().getChildElements(); while (it.hasNext()) { soapHeaderElement = (SOAPHeaderElement) it.next(); if (soapHeaderElement.getMustUnderstand()) { soapHeaderElement.setProcessed(true); } } } catch (Exception e) { log.error(Error al obtener el Header del mensaje recibido); throw new MM7Exception(MM7Exception.SERVER, The header from the received message couldn't be get., MM7_RES.SC_SERVERROR, e.getMessage()); } The code executes (there is no exception raised) but the service returns that it didn't understand the header with mustUnderstand=1. This is the incoming message: ?xml version=1.0 encoding=UTF-8? env:Envelope xmlns:env=http://schemas.xmlsoap.org/soap/envelope/; env:Header mm7:TransactionID env:mustUnderstand=1 xmlns:mm7=http://www.3gpp.org/ftp/Specs/archive/23_series/23.140/schema/REL-5-MM7-1-2;[EMAIL PROTECTED]/mm7:TransactionID /env:Header env:Body DeliverReq xmlns=http://www.3gpp.org/ftp/Specs/archive/23_series/23.140/schema/REL-5-MM7-1-2; MM7Version5.3.0/MM7Version Sender Number1234567890/Number /Sender Recipients To Number1234/Number /To /Recipients SubjectTest/Subject Content href=cid:mms_cid/ /DeliverReq /env:Body /env:Envelope And this is what is going back through the wire: ?xml version=1.0 encoding=UTF-8? 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:MustUnderstand/faultcode faultstringDid not understand quot;MustUnderstandquot; header(s):/faultstring detail/ /soapenv:Fault /soapenv:Body /soapenv:Envelope This is Axis 1.1 running on Tomcat 5.5/Linux. Any help is appreciated. -- Javier Gonzalez Nicolini
RE: soap:headers and explicit service context
I'm not sure I follow, given these fragments, why don't any of the headers specified in the binding appear in the method signature ? Is this another JAX-RPC snafu ? Cheers Simon message name=resetPasswordRequest part element=tns:resetPassword name=parameters/ /message message name=resetPasswordResponse part element=tns:resetPasswordResponse name=parameters/ /message message name=Header part element=tns:SessionHeader name=SessionHeader/ part element=tns:CallOptions name=CallOptions/ part element=tns:QueryOptions name=QueryOptions/ part element=tns:AssignmentRuleHeader name=AssignmentRuleHeader/ part element=tns:MruHeader name=MruHeader/ part element=tns:ifModifiedBefore name=ifModifiedBefore/ part element=tns:ifModifiedSince name=ifModifiedSince/ /message !-- portType -- operation name=resetPassword documentationReset a user's password/documentation input message=tns:resetPasswordRequest/ output message=tns:resetPasswordResponse/ fault message=tns:InvalidIdFault name=InvalidIdFault/ fault message=tns:UnexpectedErrorFault name=UnexpectedErrorFault/ /operation !-- binding -- operation name=resetPassword soap:operation soapAction=/ input soap:header use=literal message=tns:Header part=SessionHeader/ soap:header use=literal message=tns:Header part=CallOptions/ soap:body parts=parameters use=literal/ /input output soap:body use=literal/ /output fault name=InvalidIdFault soap:fault name=InvalidIdFault use=literal/ /fault fault name=UnexpectedErrorFault soap:fault name=UnexpectedErrorFault use=literal/ /fault /operation -Original Message- From: Hans Planting (CWEU-USERS/CWNL) [mailto:[EMAIL PROTECTED] Sent: Wednesday, August 24, 2005 2:25 AM To: axis-user@ws.apache.org Subject: Re: soap:headers and explicit service context Hi, But it doesn't expose these headers are part of the method signature. This is what I thought as well, hence my question, but it turns out my wsdl was incorrect. If you want your soap:headers be part of the method signature (explicit service context) then as far as I understand it you need to set the part attribute of the soap:header to a wsdl:part in the wsdl:message that is refered to by the wsdl:input/wsdl:output of the wsdl:operation. If the part attribute refers to a part in a message not refered to by the input or output of the message then the header parts will not be part of the method signature and you need to write custom handlers in order to deal with headers (implicit service context). However there are still a couple of strange things I encountered when using soap:headers in document/literal style documents: - the parameters generated from the wsdl:input parts are wrapped in a java object, while when not using headers they are not; - when combining explicit and implicit soap:headers in one wsdl document the wrapped java object mentioned above is not generated but is actually refered to by the generated stub. Regards, Hans But it doesn't expose these headers are part of the method signature. You're left to call setHeader yourself (and therefore have to manualy copy over the element names namespaces from the WSDL, which is error prone). I think I logged a bug for this a while back. Cheers Simon -Original Message- From: Davanum Srinivas [mailto:[EMAIL PROTECTED] Sent: Tuesday, August 23, 2005 7:35 AM To: axis-user@ws.apache.org Subject: Re: soap:headers and explicit service context If you set up the wsdl correctly, then the generated code has the addition java objects for the stuff in soap headers. -- dims On 8/23/05, Hans Planting (CWEU-USERS/CWNL) [EMAIL PROTECTED] wrote: Hi there, Is there support planned for explicit soap headers as described in JAX-RPC 1.1 chapter 11.2.2? With explicit soap headers I'd expect Axis to append additional parameters for soap:headers following the service endpoint defined paramers in the remote method signature. Also no custom parsing/deserialization would need to be implemented. Currently in order to process soap:headers you need to implement a handler or use the setHeader and getHeader methods in org.apache.axis.client.Stub and in both cases implement code to parse/deserialize the soap elements; Axis does not deserialize the contents of soap:headers to Java objects (correct me if I'm wrong - is there a way to do this?). Thanx! Hans -- Davanum Srinivas : http://wso2.com/ - Oxygenating The Web Service Platform
RE: 1.2.1 autogen WSDL seems to be wrong
OK, good idea. I inserted a private String blah member above uid and added simple getter/setter methods and the deployed JWS yielded the following WSDL: complexType name=MyMessage sequence element name=blah nillable=true type=xsd:anyType / element name=content nillable=true type=tns2:String / element name=uid nillable=true type=tns2:String / /sequence /complexType So, that's obviously wrong and conceivably a significant bug in Axis 1_2_1 final. Then I ran java2wsdl manually with --style WRAPPED --use LITERAL options and it generated the following: complexType name=MyMessage sequence element name=blah nillable=true type=xsd:string/ element name=content nillable=true type=xsd:string/ element name=uid nillable=true type=xsd:string/ /sequence /complexType And that seems to be correct, given my nascent understanding of WSDL. So I'll continue to use java2wsdl rather than JWS deployment and see where it leads me. I'm quite sure that the ugly 'cannot deserialize java.lang.string' issue will be the next showstopper but we can discuss that in a new thread ;-) Thanks a lot for your help. From: Michael Oliver [EMAIL PROTECTED] Reply-To: [EMAIL PROTECTED] To: 'Jarmo Doc' [EMAIL PROTECTED] Subject: RE: 1.2.1 autogen WSDL seems to be wrong Date: Wed, 24 Aug 2005 09:40:43 -0700 Wow, it looks like a bug. Make one small change to your class and add a new member variable String any and the accessors getAny() and setAny() and see what happens. My guess is that the first variable no matter what it is, is getting the any type, but the rest are getting interpreted correctly. I don't use JWS myself and prefer to use ant and Java2WSDL and WSDL2Java for the added control and a more persistent implementation. Michael Oliver CTO Alarius Systems LLC 6800 E. Lake Mead Blvd, #1096 Las Vegas, NV 89156 Phone:(702)643-7425 Fax:(702)974-0341 *Note new email changed from [EMAIL PROTECTED] -Original Message- From: Jarmo Doc [mailto:[EMAIL PROTECTED] Sent: Wednesday, August 24, 2005 8:34 AM To: [EMAIL PROTECTED]; axis-user@ws.apache.org Subject: RE: 1.2.1 autogen WSDL seems to be wrong Thanks for the quick reply Michael. I made that change but there is no improvement. Here are the relevant parts of my server-side class: public class MyMessage implements java.io.Serializable { private String uid; private String content; public MyMessage() {} public String getUid() { return uid; } public void setUid(String uid) { this.uid = uid; } public String getContent() { return content; } public void setContent(String content) { this.content = content; } }; I updated my JWS source file (and deleted the corresponding class file, just to be safe), restarted Tomcat, and requested the WSDL by invoking http://localhost:8080/axis/MyWebService.jws?wsdl and here are the (unexpected) results: complexType name=MyMessage sequence element name=content nillable=true type=xsd:anyType / element name=uid nillable=true type=tns2:String / /sequence /complexType Am I still writing my Java class incorrectly? From: Michael Oliver [EMAIL PROTECTED] Reply-To: [EMAIL PROTECTED] To: axis-user@ws.apache.org Subject: RE: 1.2.1 autogen WSDL seems to be wrong Date: Wed, 24 Aug 2005 07:34:23 -0700 Your class should be more consistent with the JavaBeans standard with private members that are 'tall' and 'rich' with getters 'isTall' and 'isRich' and setters 'setTall' and 'setRich' and I wager the Java2WSDL will be more consistent as well. Michael Oliver CTO Alarius Systems LLC 6800 E. Lake Mead Blvd, #1096 Las Vegas, NV 89156 Phone:(702)643-7425 Fax:(702)974-0341 *Note new email changed from [EMAIL PROTECTED] -Original Message- From: Jarmo Doc [mailto:[EMAIL PROTECTED] Sent: Wednesday, August 24, 2005 7:29 AM To: axis-user@ws.apache.org Subject: 1.2.1 autogen WSDL seems to be wrong I've written a simple web service (JWS) that includes a method that returns a complex type (well hardly complex, just a couple of strings and booleans). The auto-generated WSDL (using Axis 1_2_1 final) for this web service makes no sense to me. For example, I have two booleans in my complex type, something like this: class Person { public boolean istall; public boolean isrich; }; Yet the WSDL indicates: element name=istall type=xsd:anyType / element name=isrich type=tns3:boolean / Note the two different WSDL types for identical (boolean) Java types. Is this likely to be a bug in Axis 1_2_1 final? Should I be using a different version (which?) Thanks. _ Don't just search. Find. Check out the new MSN Search! http://search.msn.click-url.com/go/onm00200636ave/direct/01/ _ Don't just search. Find. Check out the new MSN Search! http://search.msn.click-url.com/go/onm00200636ave/direct/01/ _
Re: [Axis2] Generating WSDL files from Java classes
Hi Denis, Java2WSDL support in Axis2 is yet to be implemented. BTW you can use ?wsdl option to see the wsdl of service IF the relevant WSDL file was made available within the service.aar as service.wsdl Thanks, Ruchith On 8/24/05, Denis Schlesinger [EMAIL PROTECTED] wrote: Hi! After I have implemented my web service classes I wonder how to generate the WSDL files from these with Axis2. In Axis 1.2 it was possible via Java2WSDL or the dynamic generation when adding ?wsdl to the web service URL. Any help appreciated! Denis -- Ruchith
Schemas for customized serializers
I need to return the schema of some of my serialized objects as part of the soap message. An example of this is below. I am using a custom serializer to handle the root tag. So, is there an easy way for me to put the schema inside the message. Is there an object I can create, set up, and return to do this? Or will I have to create my own schema object and custom serializer for that. Anil ?xml version=1.0 encoding=utf-8? soap:Envelope xmlns:soap=http://schemas.xmlsoap.org/soap/envelope/ xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance xmlns:xsd=http://www.w3.org/2001/XMLSchema soap:Body DiscoverResponse xmlns=urn:schemas-microsoft-com:xml-analysis return root xmlns=urn:schemas-microsoft-com:xml-analysis:rowset xsd:schema xmlns:sql=urn:schemas-microsoft-com:xml-sql elementFormDefault=qualified targetNamespace=urn:schemas-microsoft-com:xml-analysis:rowset xsd:element name=root xsd:complexType xsd:sequence minOccurs=0 maxOccurs=unbounded xsd:element name=row type=row / /xsd:sequence /xsd:complexType /xsd:element ... /xsd:schema row DataSourceNameTest Server/DataSourceName DataSourceDescriptionTest Provider for OLAP /DataSourceDescription /row /root /return /DiscoverResponse /soap:Body /soap:Envelope
getting client DN in axis
I want to get client DN out of the public key certificate after mutual authentication with tomcat in axis application. Please help. Thanks in advance, Tuan Anh
RE: Sample calculator cannot deserialize int
I notice the following logged by Tomcat: - ConfigurationException: org.apache.axis.deployment.wsdd.WSDDException: javax.xml.rpc.JAXRPCException: Null qualified name specified. javax.xml.rpc.JAXRPCException: Null qualified name specified. at org.apache.axis.encoding.TypeMappingImpl.internalRegister(TypeMappingImpl.java:238) at org.apache.axis.encoding.TypeMappingImpl.register(TypeMappingImpl.java:220) at org.apache.axis.encoding.TypeMappingDelegate.register(TypeMappingDelegate.java:73) ... I have no idea if it's related to my calculator test or what it indicates (perhaps invalid WSDD file, but what exactly?) From: Jarmo Doc [EMAIL PROTECTED] Reply-To: axis-user@ws.apache.org To: axis-user@ws.apache.org Subject: Sample calculator cannot deserialize int Date: Wed, 24 Aug 2005 09:16:48 -0700 Given the other problems I've been having with Axis 1.2.1 final on Tomcat 5.5.9, I decided to go back to basics and test the sample calculator program. It fails to run, as follows: SAXException: Deserializing parameter 'op1': could not find deserializer for type {http://www.w3.org/2001/XMLSchema}int I note in the calculator client source that it expects 'op1' to be of type XMLType.XSD_INT and the WSDL auto-generated by Axis returned the following: wsdl:message name=addRequest wsdl:part name=i1 type=xsd:int / wsdl:part name=i2 type=xsd:int / /wsdl:message I followed the instructions at http://ws.apache.org/axis/java/user-guide.html for this. Why does it fail? PS I am using JDK 1.4.2_05. _ Dont just search. Find. Check out the new MSN Search! http://search.msn.click-url.com/go/onm00200636ave/direct/01/ _ Express yourself instantly with MSN Messenger! Download today - it's FREE! http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/
Deploy/undeploy Webservices from another Webservice
Hi, I have a question for the experts... I'm trying to find information on how to have one webservice deploy or undeploy other web services. My scenario is I want to represent the availability of a high speed connection between 2 or more endpoints as a web service that someone could potentially use. One of the port types on this web service will be a partition function where the high speed connection could be split into multiple connections of smaller bandwidth. So the parent Web service will have to deploy two or more new web services to represent the new connection sizes. The ports types, etc. for each new service will be identical (except for unique name spaces and some details about the connections). I also want the original web service to be able to re-connect the partitioned connection resulting in undeploying the child web services. I'm not sure if what I'm describing falls under deploying web services on the fly or not. I know that the ClientAdmin class can be used to deploy and undeploy services from within a program but I'm not sure if will do what I'm describing. Any feedback would be much appreciated. Thanks, Scott.
Axis with more than 4GB data transfer.
Hello, I am new to Axis.I have a questing for the experts. I am doing a Web Services projects. I am trying to find information for using Axis to transfer more than 4GB data such like big movie. My scenario is I want to upload and download big movies between server and client using Web Service. I am not sure if I can solve this using SOAP with attachments .I do not know if SOAP can solve this kind of problem. Any ideas and any feedback would be much appreciated Thank you in advance.
Re: Axis with more than 4GB data transfer.
kidding me? :) no, soap is not designed for this. (see other protocols - http://www.google.com/search?q=%22Data+Space+Transfer+Protocol%22) -- dims On 8/24/05, Peter [EMAIL PROTECTED] wrote: Hello, I am new to Axis.I have a questing for the experts. I am doing a Web Services projects. I am trying to find information for using Axis to transfer more than 4GB data such like big movie. My scenario is I want to upload and download big movies between server and client using Web Service. I am not sure if I can solve this using SOAP with attachments .I do not know if SOAP can solve this kind of problem. Any ideas and any feedback would be much appreciated Thank you in advance. -- Davanum Srinivas : http://wso2.com/ - Oxygenating The Web Service Platform
RE: Axis with more than 4GB data transfer.
I would recommend Bit Torrent http://azureus.sourceforge.net/ Michael Oliver CTO Alarius Systems LLC 6800 E. Lake Mead Blvd, #1096 Las Vegas, NV 89156 Phone:(702)643-7425 Fax:(702)974-0341 *Note new email changed from [EMAIL PROTECTED] -Original Message- From: Davanum Srinivas [mailto:[EMAIL PROTECTED] Sent: Wednesday, August 24, 2005 4:05 PM To: axis-user@ws.apache.org Subject: Re: Axis with more than 4GB data transfer. kidding me? :) no, soap is not designed for this. (see other protocols - http://www.google.com/search?q=%22Data+Space+Transfer+Protocol%22) -- dims On 8/24/05, Peter [EMAIL PROTECTED] wrote: Hello, I am new to Axis.I have a questing for the experts. I am doing a Web Services projects. I am trying to find information for using Axis to transfer more than 4GB data such like big movie. My scenario is I want to upload and download big movies between server and client using Web Service. I am not sure if I can solve this using SOAP with attachments .I do not know if SOAP can solve this kind of problem. Any ideas and any feedback would be much appreciated Thank you in advance. -- Davanum Srinivas : http://wso2.com/ - Oxygenating The Web Service Platform
Re: SOApMonitor
Hi all,I did exact the same with user guide, I can enable the SOAPMontitor, or TCPMonitor. But It did not work.But we can use other SOAP monitorssee http://www.spikesource.com/docs/cs_1.6.0-linux/doc/axis/axis_troubleshoot.htmlhope it help Peter On 8/24/05, Thushantha De Alwis [EMAIL PROTECTED] wrote: Hi By refering to UserGuide you can get good idea about how t enable and use this SOAP Monitor. Best Regards Thushantha SOAPMonitor on welcome page of the Axis is not working , it says disabled by default for security reasons and to enable the disabled features, uncomment the appropriate declarations in WEB-INF/web.xml in the webapplication and restart it. But there is no security entry to in WEB.xml to enable SOAPMonitor. How to we enable it ?
URGENT !!! - Deserializer issue with a web method returning an interface as opposed to POJO
Hi ! Iam having problem deserializing a soap response for a method which returns an interface. What deserializer should I use for a complexType java interface? Thanks Arun
Field with second letter capitalized problem
Hello all, I am attempting to use Axis 1.2.1 to generate a client stub to the Systinet UDDI registry. For most of the API I used the OASIS WSDLs and WSDL2Java. Aside from some minor problems, it appeared to work. However now that I am using the client stub, I am running into a problem. UDDI defines the type tModel in the schema. There are many operations that return tModels. For example, in a Taxonomy object, there is a tModel. What this means is that Axis is generating a Taxonomy class that looks like: Taxonomy { public void setTModel() { } public TModel getTModel() { } } The problem comes when a response message comes back from the UDDI server in which the tModel element is tModel. The BeanDeserializer on the client side is throwing an exception that the tModel element was unexpected. After stepping through the code, I found that the tModel property in Taxonomy is getting returned as TModel by bean introspection, therefore not matching the element with name tModel. Looking at the JavaBeans spec, the introspection and property name are correct. Is there some way around this with Axis? It seems like a major problem, since and field with a second capital letter will not match the XML elements defined in the schema because of bean introspection. Note that this is the standard UDDI WSDL. Im a bit worried that Axis cant properly talk to UDDI, one of the leading technologies in web service registration and discovery. Thanks for any help, -mike
RE: Sample calculator cannot deserialize int
I've moved my web services from Tomcat/Windows to Tomcat/Linux and the samples now work fine. I have no idea yet why they didn't work on Windows though no doubt someone will helpfully respond with a diatribe about Windows ;-) From: Jarmo Doc [EMAIL PROTECTED] Reply-To: axis-user@ws.apache.org To: axis-user@ws.apache.org Subject: Sample calculator cannot deserialize int Date: Wed, 24 Aug 2005 09:16:48 -0700 Given the other problems I've been having with Axis 1.2.1 final on Tomcat 5.5.9, I decided to go back to basics and test the sample calculator program. It fails to run, as follows: SAXException: Deserializing parameter 'op1': could not find deserializer for type {http://www.w3.org/2001/XMLSchema}int I note in the calculator client source that it expects 'op1' to be of type XMLType.XSD_INT and the WSDL auto-generated by Axis returned the following: wsdl:message name=addRequest wsdl:part name=i1 type=xsd:int / wsdl:part name=i2 type=xsd:int / /wsdl:message I followed the instructions at http://ws.apache.org/axis/java/user-guide.html for this. Why does it fail? PS I am using JDK 1.4.2_05. _ Dont just search. Find. Check out the new MSN Search! http://search.msn.click-url.com/go/onm00200636ave/direct/01/ _ On the road to retirement? Check out MSN Life Events for advice on how to get there! http://lifeevents.msn.com/category.aspx?cid=Retirement