views:

131

answers:

3

I have not found any convinient way to create something like a jaxws wrapperclass for an existing Soap Webservice - like in full Java. Jaxws is unfortunately not avaliable in the sdk.

Is there any was to do this without using any external libs? Are there any external libs at all yet?

A: 

The short answer is that no, there isn't any way to do exactly what you want. However, there is a DOM and SAX implementation. If you know what the incoming XML looks like (which you should anyways) then you could write a custom unmarshaller.

fiXedd
Hopefully something like ksoap (which I need to evaluate anyways) could provide tools to generate wrappers automatically.To write your own xml decoders is not doable for larger projects with more complex objects to marschall through webservices. At least its not affordable (if you dont get paid from that work) ;)
Obiwan007
I had to do this very thing for a pretty complex project recently. I ended up using JAXB to generate the class files then writing a SAX parser by hand. It was a nightmare (and took forever), but it worked.
fiXedd
A: 

You can modify your message in a SOAP intermediary that is placed between your client and service. What exactly do you what to do?

baranco
A: 

I really don't want to manually write/decode any soap messages. I just want to consume an external webservice. Its really easy to do that with full blown java libs and tools (wsimport) and create the corresponding wrapper-classes to access the ws as "normal" java classes. The usual ws client programmer will never need to touch any backend soap stuff at all... Thats what the jaxws client classes are for. ksoap is unfortunately only a first step to access soap stuff at all - no wsdl-based codegeneration so far as I know... Hopefully the sdk will adress this issua in one of the next versions as many ws are out there and handcoding this stuff is really messy...

Markus