You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by Aleksander Slominski <as...@cs.indiana.edu> on 2004/05/12 09:24:45 UTC

Super Dynamic Invocations [Re: Dynamic invocation of web services with complex types

rosely kumoi wrote:

>I already highlight this issue long ago and no one until now have the
>solution. The aforementioned JROM is obselete (last updated June 7, 2002), I
>think the guy who create the API already drop the project which is sad. I
>already try JROM but its using an obselete version of AXIS so part of the
>API is not compatible with the current release of AXIS.
>
>However someone already suggest a more crude technique on how to overcome
>the creation of client stub by generating the complex type on the fly by
>analysing and parsing the WSDL information. You can view the page here
>http://www-106.ibm.com/developerworks/webservices/library/ws-udax.html
>
>I also try many different methods like dynamic class loading  but failed.
>  
>
if you need a truly dynamic interface i.e. working with unknown WSDL 
then you can use one of exsiting WSDL invokers such as Xydra 
<http://www.extreme.indiana.edu/xgws/xydra/>.

>informed me if you manage to overcome this problem
>  
>
i was thinking about this problem for long long time (since i wrote 
original DynamicInvoker for first version of WSIF about four years ago 
...) and it became clear to me that what one need is ability to create 
XML Infoset that can be *mixed* with Java types.

actual conversion of Java types to XML (and back) i.e. XML-Java binding 
is left to the time that invocation is executed and XML message is put 
on the wire. so that means that you should be able to put some 
parameters as DOM (or toher Infoset) or XmlBeans generated classes, or 
JavaBeans, or whatnot.

that it hink allows to do both dynamic invocations (such as Xydra) and 
also to have comfortable and type safe Java classes or anything in 
betweemn meeting exactly what are the needs and not forcing developer to 
commit to one particular API ...

i wrote down some more thoughth about what i called "Super Dynamic 
Invoker" at
http://www.extreme.indiana.edu/~aslom/bnp/sdi/

thanks,

alek

>cheers
>
>rosely
>
>----- Original Message -----
>From: <Ex...@nokia.com>
>To: <ax...@ws.apache.org>
>Sent: Friday, February 13, 2004 8:59 AM
>Subject: Dynamic invocation of web services with complex types
>
>
>Hi people,
>
>I was looking into dynamic invocation of web services for some time. Dynamic
>invocation would have the advantage of using the wsdl to construct the soap
>message dynamically, meaning that changes in wsdl could be automatically
>picked up by the soap executor.
>
>What I have found until now is that both Axis and the Web Service Invocation
>Framework (originally created by ibm but now also an apache project,
>http://ws.apache.org/wsif/) allow dynamic invocation. The DynamicInvoker
>sample demonstrates how it can be done in Axis.
>
>However, there is one caveat for both DynamicInvoker and WSIF: they work, as
>they are, only with simple java types. If you want to use complex types, you
>have to have a corresponding Java class created on the client side - which
>makes dynamic invocation much less 'dynamic' : if the complex types in the
>wsdl change, you have to change and recompile the corresponding java class.
>
>JROM (Java Record Object Model; http://www.alphaworks.ibm.com/tech/jrom)
>from alphaworks addresses exactly this problem, and it contains samples
>which demonstrate Axis and WSIF used together with JROM.
>
>However,  I would prefer using Axis alone to solve the problem of Dynamic
>Invocation with complex types. Anybody solved this using Axis alone and
>without pre-creating client side java classes to represent the complex
>types?
>
>Thanks for any hints,
>
>Zoltan Schreter
>NOKIA, Finland
>
>
>  
>


-- 
The best way to predict the future is to invent it - Alan Kay