Ok, so from "unless the binding interface contract is a wrapper style WSDL
portType" does that mean it really must have a WSDL portType and thats baked
deep into the design or is it more "unless the binding interface contract is
a wrapper style" and it would be possible to just set that up with a Java
interface? Something like setting a WrapperInfo with
o.a.t.s.interfacedef.Operation.setWrapper? Which I guess is assuming its
straightforward to create a WrapperInfo object?

   ...ant

On Dec 14, 2007 5:39 PM, Raymond Feng <[EMAIL PROTECTED]> wrote:

>  Hi,
>
> I just use JMS as an example for bindings that are not naturally
> RPC-style.
>
> Using AXIOM as the databinding will only give you an array of OMElements
> representing the parameters unless the binding interface contract is a
> wrapper style WSDL portType (then you'll receive the wrapper OMElement). We
> can enhance the XMLStringDataBinding to handle wrappers but we still need to
> express that the binding interface contract is wrapper style in the first
> place.
>
> Thanks,
> Raymond
>
> ----- Original Message -----
> *From:* ant elder <[EMAIL PROTECTED]>
> *To:* Raymond Feng <[EMAIL PROTECTED]>
> *Cc:* [email protected]
> *Sent:* Friday, December 14, 2007 9:12 AM
> *Subject:* Re: How to set a specific data binding to be used by a binding?
>
> I'm completely missing the point sorry and I'm not sure I understand why
> JMS comes into this? I've a binding and I want the wrapped XML. I want it as
> a String but I could use DOM or OMElement or what ever else. Right now I
> (think?) it would work if I just use the Axiom data binding which gives the
> wrapped style of XML and then I'd receive OMElements as the payload which I
> could call toString on to get a String, but I'd prefer not to have the
> dependency on Axiom.
>
> I still don't understand why there couldn't be a version of
> XMLStringDataBinding that returns wrapped style XML?
>
>    ...ant
>
> On Dec 14, 2007 4:55 PM, Raymond Feng < [EMAIL PROTECTED]> wrote:
>
> > There are two independent factors in the operation-level data
> > transformation
> > (i.e., converting the payload from one structure to another). In the
> > JMSBinding case, if a java interface is used, it's from Object[] to
> > JMSMessage (or the text for JMS TextMessage).
> >
> > 1) The data conversion (from example, a Customer SDO to String)
> > 2) The wrapping/unwrapping process. Wrapper style is just a special
> > pattern
> > for PRC-style payload to messge-style. Other mapping can be used too,
> > for
> > example, you can create a JMS MapMessage and set the arguments into the
> > Map.
> >
> > Since there are two separate concerns, we don't want to have
> > XMLStringDataBinding to support this combination only.
> >
> > Looking at operation-level, we have two high-level transformers
> > (idl:input
> > <--> idl:input and idl:output <--> idl:output) to deal with payload
> > transformation. The transformers handle wrapping/unwrapping and then
> > delegate to parameter-level transformers. If the JMS binding wants to
> > control how to package the input/output payload, you can register
> > special
> > transformers  (idl:iput --> jms:input, jms:input --> idl:input,
> >  idl:output --> jms:output and jms:output --> idl:ouput). Then in your
> > transformers, you can wrap/unwrap the XML elements.
> >
> > Thanks,
> > Raymond
> >
> > ----- Original Message -----
> > From: "ant elder" <[EMAIL PROTECTED]>
> > To: < [email protected]>
> > Sent: Friday, December 14, 2007 3:01 AM
> > Subject: Re: How to set a specific data binding to be used by a binding?
> >
> >
> >  > On Dec 13, 2007 10:36 PM, ant elder < [EMAIL PROTECTED]> wrote:
> > >
> > >>
> > >>
> > >> On Dec 13, 2007 7:22 PM, Raymond Feng <[EMAIL PROTECTED]> wrote:
> > >>
> > >> <snip>
> > >>
> > >> Anthoer way you could do is to set the databinding to DOM or AXIOM.
> > The
> > >> > databinding interceptor will pass you an array of elements
> > >> > corresponding
> > >> > to
> > >> > the java arguments.  You can then create the wrapper from the child
> > >> > args
> > >> >
> > >> > when it reaches the JMS binding code.
> > >> >
> > >>
> > >> If its possible to fix this like that (by manually adding a wrapper
> > >> element) then would another way be to have a new data binding that
> > does
> > >> this
> > >> and use that in the binding. Something like a
> > >> WrappedXMLStringDataBinding.NAME which is just like the
> > >> XMLStringDataBinding.NAME but is implemented to use DOM and manually
> > >> create a wrapper around the child args? (asking to confirm I'm
> > >> understanding
> > >> what you're suggesting) If thats possible it seems like it would be a
> > >> cleaner approach for binding or implementation type writers.
> > >>
> > >> If we can do that i'd also use it for implementation.script which
> > needs
> > >> similar functionality.
> > >>
> > >>    ...ant
> > >>
> > >>
> > > No replies yet so I had a quick look at doing this...
> > >
> > > Ideally the WrappedXMLStringDataBinding would be just the same as the
> > > existing XMLStringDataBinding but that doesn't look like it would work
> > -
> > > is
> > > it possible to have multiple databindings coexisting using the same
> > > physical
> > > type?
> > >
> > > So a question from earlier again: Why is XMLStringDataBinding
> > producing
> > > unwrapped XML? All the uses for this that I have would use wrapped
> > style
> > > xml
> > > so having XMLStringDataBinding produce that would be more convenient.
> > >
> > >   ...ant
> > >
> >
> >
>

Reply via email to