i’m trying to figure out the best way to make Javaobjects out of the IData-Object passed to my JavaService-Method.
So far the only way i found is to use the Generate Code Feature in Developer, which generates some Javacode that i can paste in my Java class.
Since we have roughly 100 Doctypes in our project, this code does not really help me a lot. I estimated that I would end up with thousands of lines of code. On top the code generated is more or less just a template that needs mayor modifications.
So my question is what is the best way to bind the XML in the SOAP-message to Java-objects ? Is there a way to integrate JAXB or JIBX or any other binding tool ?
I’m going to have to ask because I’m curious, why would you be trying to do this in webMethods IS? It’s not a Java Application server, it’s primary language is flow.
If you have SOAP requests coming in and you want to deserialize them into java objects and vice versus, why wouldn’t you be using something like Axis? webMethods IS is already deserializing the XML for you through the default SOAP processor and presented the results within your flow service. Why additional Java objects?
We would like to expose existing Java classes which contain our business logic using web services. And our understanding was, that we can use the JavaServices to do that.
I’m beginning to realize that this might not be the right approach. If i understand your reply correctly, it might be more suitable to make our logic available over HTTP/SOAP using some other tool (like AXIS) and import it in Integration server, adding some additional flow steps if necessary.
Would that be the right approach ?
Ah I seeing where you are trying to go now. No I don’t think that would be my first choice. There are multiple ways to accomplish what you are trying to do here are a couple of suggestions.
If you want to use webMethods to host your services then I would redesign them using webMethods IS flow and not try and fit your existing Java classes into it. There really isn’t any benefit that webMethods IS would be providing you at that point, and it would be a lot of work. If you don’t want to or don’t have time to then I would go with one of the many open source solutions to host your existing classes that would be much easier. You could then gradually move your business logic over into webMethods if that is your ultimate goal as you have time.
Of course the beauty of the services interfaces is that if you did them correctly where you host them should not matter to your calling apps.