Re: [Axis2] read documentation but still lost
@Ajith Ranabahu it's just the wsdl from the Code Generator Wizard - Command Line Tool tutorial, however I have attached it. @Chinthaka - axis2 snaphot compile failed I have started a new thread 'junit tests on today svn build failed' thanks for your help! andreas > Hi, > Can you attach the WSDL ? > > Ajith > > On 2/22/06, Andreas Bohnert <[EMAIL PROTECTED]> wrote: >>> You could try >>> minOccurs = 0 on any new fields, and my guess is that since the service >>> doesn't require them to be part of then envelope, they won't be missed if >>> they are not there. IOW, they can't be mandatory fields. >> I tried it with XMLBean databinding and it even works if I do not set >> them to minOccurs=0. >> thats perfect for me! >> >> I would like to check out if adb works as well, but since wsdl2java does >> not support adb right now (gives me a nullpointer exception), I have to >> wait for the next release. >> tried to compile current axis2 snapshot, but it failed :( >> >> >> thanks very much for your help, robert! >> andreas >> >> > > > -- > Ajith Ranabahu > http://login"; xmlns:tns="http://login"; xmlns="http://schemas.xmlsoap.org/wsdl/"; xmlns:xsd="http://www.w3.org/2001/XMLSchema"; xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"; xmlns:ns2="http://login/types";> http://login/types"; xmlns:tns="http://login/types"; xmlns:soap11-enc="http://schemas.xmlsoap.org/soap/encoding/"; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"; xmlns="http://www.w3.org/2001/XMLSchema";> http://schemas.xmlsoap.org/soap/encoding/"/> http://schemas.xmlsoap.org/soap/http"; style="document"/> http://localhost:8080/axis2/services/LoginEndpoint"/>
Re: [Axis2] read documentation but still lost
Hi, Can you attach the WSDL ? Ajith On 2/22/06, Andreas Bohnert <[EMAIL PROTECTED]> wrote: > > You could try > > minOccurs = 0 on any new fields, and my guess is that since the service > > doesn't require them to be part of then envelope, they won't be missed if > > they are not there. IOW, they can't be mandatory fields. > > I tried it with XMLBean databinding and it even works if I do not set > them to minOccurs=0. > thats perfect for me! > > I would like to check out if adb works as well, but since wsdl2java does > not support adb right now (gives me a nullpointer exception), I have to > wait for the next release. > tried to compile current axis2 snapshot, but it failed :( > > > thanks very much for your help, robert! > andreas > > -- Ajith Ranabahu
Re: [Axis2] read documentation but still lost
Andreas Bohnert wrote: >tried to compile current axis2 snapshot, but it failed :( > > If you give us some information, may be we can help. Chinthaka > >thanks very much for your help, robert! >andreas > > > > signature.asc Description: OpenPGP digital signature
Re: [Axis2] read documentation but still lost
> You could try > minOccurs = 0 on any new fields, and my guess is that since the service > doesn't require them to be part of then envelope, they won't be missed if > they are not there. IOW, they can't be mandatory fields. I tried it with XMLBean databinding and it even works if I do not set them to minOccurs=0. thats perfect for me! I would like to check out if adb works as well, but since wsdl2java does not support adb right now (gives me a nullpointer exception), I have to wait for the next release. tried to compile current axis2 snapshot, but it failed :( thanks very much for your help, robert! andreas
Re: [Axis2] read documentation but still lost
Em Quinta 16 Fevereiro 2006 14:29, o Andreas Bohnert escreveu: > thanks a lot for your answer, robert! > > > This question comes up a lot recently. First, AFAIK you won't see the > > axis 1.x deserialization errors in axis2. As far as not syncing changes, > > I myself haven't found a compelling reason to not sync changes and so I > > haven't tried it. However, what you could do is trying to define your new > > elements as: > > > > element minOccurs="0" maxOccurs="1" > > I'm not sure what you mean with 'sync changes'.Is there a technique to > automatically sync wsdl changes to the webservice client? > Am I'm doing something wrong? > my situation is this: > > the webservice client asks for data and the service is returning an > array of complex data objects. the client displays the data or whatever. > > I give the client to different customers. some of them will use the > client, some of them will build their own solution based on my example > client. > now, if I have to change my webservice ( add fields to my complex data > object) our customers will be notified. some of them will update their > client, but some of them wont. > And I want to satisfy both with one webservice. > when I use wsdl2java generator to build up the client, a java bean is > generated for each complex type, so this beans (the old and the one > after the update) do not match after a change and that's why I was > asking for deserialization errors. That's what I meant by syncing changes - manually create new classes via wsdl2java on the new wsdl, on both the client and server sides, ie, asking the client to use a new jar or class based on the new wsdl. You could try minOccurs = 0 on any new fields, and my guess is that since the service doesn't require them to be part of then envelope, they won't be missed if they are not there. IOW, they can't be mandatory fields. > > > You can implement handlers to access the bodies and access all the > > elements, but I don't see how it solves your problem. If you have fewer > > fields arriving from the client because it hasn't been synced, how does > > modifying the body help you? Maybe I misunderstand the question. > > I don't want to modify the body. I just want to read the content on the > client side. > If I write the client in such a way, that it parse the returned soap > body (the returned array of data objects), in this case, I don't depend > on a static bean. this will still work after an update (adding fields) > to the service. Sure its not easier to just ask your clients to upgrade? I do it often enough and no one complains really. IOW, Embrace change. Try thinking of ways to make the upgrade easier if need be. Otherwise, sounds you need a client side handler and then convert the soap body to Document , use Element.appendChild() or something, and then convert back to soap message. > > please correct me, if I have someting wrong on my mind. > thanks again, andreas HTH, Robert http://www.braziloutsource.com/
Re: [Axis2] read documentation but still lost
thanks a lot for your answer, robert! > Do search for Axis2SampleDocLit.wsdl and you'll find that it is indeed rpc / > lit. You can find a simple doc / lit example in the code generation guide - > showing how to use ant with wsdl2java. ah, great, I missed that because I was working with the eclipse plugin instead. isn't it strange, that axis2 goes for document literal and provides a rpc literal example? > > This question comes up a lot recently. First, AFAIK you won't see the axis > 1.x > deserialization errors in axis2. As far as not syncing changes, I myself > haven't found a compelling reason to not sync changes and so I haven't tried > it. However, what you could do is trying to define your new elements as: > > element minOccurs="0" maxOccurs="1" I'm not sure what you mean with 'sync changes'.Is there a technique to automatically sync wsdl changes to the webservice client? Am I'm doing something wrong? my situation is this: the webservice client asks for data and the service is returning an array of complex data objects. the client displays the data or whatever. I give the client to different customers. some of them will use the client, some of them will build their own solution based on my example client. now, if I have to change my webservice ( add fields to my complex data object) our customers will be notified. some of them will update their client, but some of them wont. And I want to satisfy both with one webservice. when I use wsdl2java generator to build up the client, a java bean is generated for each complex type, so this beans (the old and the one after the update) do not match after a change and that's why I was asking for deserialization errors. > You can implement handlers to access the bodies and access all the elements, > but I don't see how it solves your problem. If you have fewer fields arriving > from the client because it hasn't been synced, how does modifying the body > help you? Maybe I misunderstand the question. I don't want to modify the body. I just want to read the content on the client side. If I write the client in such a way, that it parse the returned soap body (the returned array of data objects), in this case, I don't depend on a static bean. this will still work after an update (adding fields) to the service. please correct me, if I have someting wrong on my mind. thanks again, andreas
Re: [Axis2] read documentation but still lost
Hi Andreas, see below: Em Quinta 16 Fevereiro 2006 11:40, o Andreas Bohnert escreveu: > hello, > > I have downloaded 0.94, have had a look at the documentation and the > samples, but I have still a couple of questions and I hope the axis > community can help me out: > > 1.) Axis2SampleDocLit seems to be an example for document literal, so > why are the operations (echoString, echoStringArray..) inside the wsdl > are type rpc? Do search for Axis2SampleDocLit.wsdl and you'll find that it is indeed rpc / lit. You can find a simple doc / lit example in the code generation guide - showing how to use ant with wsdl2java. > > 2.) My webservice client has to be independant from further changes to > the wsdl. That means: if I do enhance my webservice and change the wsdl > (e.g.: add fields to a complex type structure) my client should still > run without modifications ( get the content minus the new fields) > Is that possible or do I get deserialization errors then (because the > complex type has changend)? This question comes up a lot recently. First, AFAIK you won't see the axis 1.x deserialization errors in axis2. As far as not syncing changes, I myself haven't found a compelling reason to not sync changes and so I haven't tried it. However, what you could do is trying to define your new elements as: element minOccurs="0" maxOccurs="1" And see what that does, ie, not syncing the changes. And let us know. > > 3.) the best thing for me would be, if I'm able to deal with the soap > body entries directly. it seems to be easy to iterate through the > entries and get what I want. so I would not run into the problems I > descriped in 2.) > a.) is there a technique for doing so? You can implement handlers to access the bodies and access all the elements, but I don't see how it solves your problem. If you have fewer fields arriving from the client because it hasn't been synced, how does modifying the body help you? Maybe I misunderstand the question. > b.) how can I do this with axis or shouldn't I use axis in this case? > There's probably an easier way. > I'm really thankfull for any advices!! > andreas HTH, Robert http://www.braziloutsource.com/
[Axis2] read documentation but still lost
hello, I have downloaded 0.94, have had a look at the documentation and the samples, but I have still a couple of questions and I hope the axis community can help me out: 1.) Axis2SampleDocLit seems to be an example for document literal, so why are the operations (echoString, echoStringArray..) inside the wsdl are type rpc? 2.) My webservice client has to be independant from further changes to the wsdl. That means: if I do enhance my webservice and change the wsdl (e.g.: add fields to a complex type structure) my client should still run without modifications ( get the content minus the new fields) Is that possible or do I get deserialization errors then (because the complex type has changend)? 3.) the best thing for me would be, if I'm able to deal with the soap body entries directly. it seems to be easy to iterate through the entries and get what I want. so I would not run into the problems I descriped in 2.) a.) is there a technique for doing so? b.) how can I do this with axis or shouldn't I use axis in this case? I'm really thankfull for any advices!! andreas