If I remember correctly, the javadoc in the WSIF package does not include the packages in the wsdl4j library which is part of the distribution. That library contains the classes for analyzing a WSDL document and extracting the information you want. I don't remember where that project is currently being maintained, but if you find it via Google, you can get the documentation for the relevant classes. The other piece that may be useful is the org.apache.wsif.schema package, which has a relatively superficial representation of a schema useful for web service invocation.

Jeff

Eugeny N Dzhurinsky wrote:
On Wed, Oct 17, 2007 at 09:44:31AM -0700, Jeff Greif wrote:
You can do dynamic invocation using WSIF even if complex types are involved. You just can't do simple data binding.

Suppose without loss of generality that the web service requests and responses are in the form of SOAP messages. The complex types included in a response will correspond to some XML elements in the message. If you are doing dynamic invocation, you're not going to have Java classes defined corresponding to each of the complex types unless you generate code from the WSDL. Presuming that you're not going to do that in a dynamic invocation, you can work with the org.w3c.dom.Element itself or some wrapper class you build around it. Thus, any complex type is deserialized into an Element or your ComplexTypeWrapper. In the latter case, the type name extracted from the wsdls corresponding to the element can be included in the wrapper instance, and then the information extracted from the wsdl and schemas about the type can be applied during processing by the client. Similarly, when building a web service request, you'll have to assemble Elements corresponding to the complex types needed in the input. Nothing is really lost here because again, you don't have a class around in your application corresponding to that complex type anyway.

The only special WSIF machinery you need for this is a type mapping for each complex type to ComplexTypeWrapper or Element. These type mappings would be created on each invocation based on information in the wsdl and schemas. They are usually only needed for the complex types corresponding to the "parts" of the input and output messages.

Hello, Jeff Greif!
Thank you for prompt response, however it's still not clear for me:

1) could you please explain how can I get list of available methods using
WSIF?

2) is it possible to get type definitions for the parameters and return values
for certain method using WSIF somehow?

3) if I will know such information, will I be able to prepare SOAP call and
invoke remote method with WSIF?

Thank you in advance!



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to