Either the original class name would have to be passed on the
wire by the sender, or the receiver would have to tell the Tuscany
databinding framework what class to use for each interface type
that's received.  The former isn't very interoperable (e.g., if
talking to a non-Java environment), and the latter couldn't cope
with multiple classes being passed through the same interface.

I am sure JAXB has some solution to this, but it wasn't revealed
by a casual glance through the spec.  I'll try harder to find this
information.  Can anyone else provde a pointer?

  Simon

Bentley Johnson wrote:

I found another modification that will have to be done, unless there is alternative, however, this may be related to Javabeans being used for object serialization. In many instances, the parameters or return types of our service methods are java interfaces and there are implementations of these interfaces being created and used. When the XML is created for sending over the binding, it attempts to use the interface as the java class that must be created on the receiving end. The reflection being used can of course not create an instance of the interface and it throws an exception. Is there any way to specific for it to use the actual class implementation when converted to and from XML?
Thanks, Bentley

-----Original Message-----

From: Simon Nash <[EMAIL PROTECTED]>

To: [email protected]

Date: Mon, 26 Nov 2007 21:56:55 +0000

Subject: Re: SCA & WS Binding Wrapper Style




Bentley,

What modifications are needed to your code to make it conform to the

doc/lit/wrapped standard?  Is this just the removal of overloaded

nethod names, or something else?



   Simon



Bentley Johnson wrote:




Hello, thanks for the response and input.



One thing I realized was that I didn't make clear in my original post was


that I am working with the distributed domain/node system which seems to

use

only the SCA binding by default with the Remotable annotation. This does

not

allow me to use the WSDL configurations. This assumption is based on the



sample distributed code and  testing I have attempted.



Using the default SCA binding of that configuration seems to always use

the

wrapper (document/literal) mode. This is not a large issue, as my code can



be modified to conform to its standards. If there is some other way to

have

the services register within the domain that I have not seen, that


information would be appreciated.



Thanks



Bentley



-----Original Message-----



From: "Simon Laws" <[EMAIL PROTECTED]>



To: [email protected]



Date: Thu, 22 Nov 2007 11:28:24 +0000



Subject: Re: SCA & WS Binding Wrapper Style






Hi Bentley





Some comments/questions below





Regards





Simon





On Nov 21, 2007 7:04 PM, Bentley Johnson <[EMAIL PROTECTED]>

wrote:






It seems that both the default SCA binding for Remotable Interfaces and




the




basic WS binding are being restricted to the services following the




wrapper






It certainly use doc/lit/wrapped by default and WSDL generated by Tuscany



Java2WSDL will use this style. The SCA WebService spec says that, when

the



web services binding points to separately authored WSDL files, it allows



anything that is valid in the WSDL binding. I can't guarantee that this



actually works at the moment as I would need to try it but the



specifications intention is that it is supported.







style. This is being set within the




org.apache.tuscany.sca.binding.ws.axis2.Java2WSDLHelper class in the




createWSDLInterfaceContract method. From my understanding, this implies




that




all methods in the service must have a return type that is not void and




that






You should be able to have a void return type. There is an itest that

shows



an example (



http://svn.apache.org/repos/asf/incubator/tuscany/java/sca/itest/ws-void-args-return/ [http://svn.apache.org/repos/asf/incubator/tuscany/java/sca/itest/ws-void-args-return/]


[http://svn.apache.org/repos/asf/incubator/tuscany/java/sca/itest/ws-void-args-return/ [http://svn.apache.org/repos/asf/incubator/tuscany/java/sca/itest/ws-void-args-return/]]



)







overloaded methods are not allowed.






Do you mean WSDL operations with the same name but with different



parameters?







Is there a way to set it to not use the wrapper style or is it just the




standard that is used by the SCA binding and must be followed?






I think the intention is that any web services communications that go on



under Tuscany's control, e.g. where the remote version of the SCA binding

is



in use, choose the doc/lit/wrapped style and stick with that. If

alternative



styles are required then this would be configured using a



separately/manually authored WSDL to describe what style is required.  I



would imagine this would very likely to be the case if SCA is configured

to



talk to web services that are provided by other, non-SCA, systems. Here

you



would expect to be able to get the WSDL from the service provided. Do you



have a scenario that requires the use of something other than the



doc/lit/wrapped style in the case that one SCA component is talking to



another SCA component with the same domain?








Thanks





-Bentley









---------------------------------------------------------------------

To unsubscribe, e-mail: [EMAIL PROTECTED]

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





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

Reply via email to