On Jul 29, 2006, at 1:26 AM, ant elder wrote:

On 7/29/06, Raymond Feng <[EMAIL PROTECTED]> wrote:

<snip/>

4) For those who implements service/reference binding extensions, how do you
want to leverage the databinding framework to deal with transformations such
as SDO-->AXIOM or JAXB-->SOAP?


I've not looked at the databinding framework in much detail yet, but
sometime ago there was discussion [1] about extensions just declaring what
data formats they can support and the runtime would take care of any
necessary transformations based on whats at each end of a wire. So like that, the Axis2 binding would somehow declare it supports AXIOM and just put
the SOAP body OMElement into the Tuscany message payload.

Is this still the intention for how this is going to work with the new
databinding framework?

That was what I was expecting things to be able to do. Things declared what they could put on the wire outbound and accept inbound - that may be one format, it might be multiple ones.

Chatting with Raymond in Portland, we were talking about describing the data using three identifiers: 1) the actual Java class that would be in the message. This might be a user class, it might be some other class that provided access to the data (e.g. some form of stream or event sink). It is always Java because the runtime is written in Java.

2) the logical data format that the class represents, commonly the name of a Java class or an XML type. If the user data is in the message this will likely be the same; if we have something like a stream head then it would describe what is on the stream.

3) Additional metadata about the data. This would include things like the type of binding to use (for example, when the physical and logical format refer to a Java interface but the user also wants a specific implementation of that interface), whether the format is a stream and if so if it is a source or a sink, estimates of the size, and so on. This is additional information that helps decide which transformers to use.

So in you example, the Axis2 binding would say at a minimum "I can put data into requests that will be an OMElement that represents a {insert QName here} XML type"

--
Jeremy


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

Reply via email to