I wondered about using Tuscany PolicyBuilders and Interceptors to help with
E4X support for the work required in TUSCANY-418, TUSCANY-419, and
TUSCANY-420. Right now the E4X code isn't so elegant with the way it works
out when and how to convert the Java objects in a message into E4X XML, and
with the current code i can't get E4X XML as parameters on reference
invocations working.

Looking at how the code for async works, it seems like for E4X support there
could be source and target policy builders that look at the wires and when
required (*) insert an interceptor that converts the message objects from/to
XmlObjects, and then the JavaScript container would simply always convert
XmlObjects from/to E4X XML objects.

(*) the when required would be something like when the wire target is a
JavaScript component with interface described by a WSDL portType, or a wire
source is a JavaScript component and the wire target has an interface
described with WSDL.

Does this sound like a reasonable use of PolicyBuilders and Interceptors? It
seems like something like this may also be a step on the way to the
efficient streaming of messages in TUSCANY-104?

  ...ant

Reply via email to