The WS-BPEL 2.0 specification doesn't allow for this type of message variable initialization. I should have prefaced my comments below with respect to what the specification permits as opposed to what's possible in ODE. If you build processes with this pattern then there are no guarantees that it'll work on other platforms.
Inline variable initialization is a good feature to add to ODE but supporting element style variables for web service exchanges is more valuable in my opinion. If ODE supports this then you'd never have to deal with message type variables. Of course that assumes that you're interacting with WS-I Basic Profile compliant services. On 3/30/09 4:08 PM, "Madars Vitolins" <m...@silodev.eu> wrote: I am working on support for inline variable initialization :) Seems something works, I will have to do some more testing and figure out the error handling. I have also tried to initialize full message type variable, for example: <variables> <variable name="getNameDayVar" messageType="day:getNameDay" > <from> <literal> <message><parameters xmlns=""> <day:getNameDay> <arg0>8</arg0> <arg1>7</arg1> </day:getNameDay> </parameters></message> </literal> </from> </variable> </variables> This way works. Only here is nasty thing with "<message><parameters xmlns="">" - they must be together (if not then WS invocation fails - it cannot cast, seems because it at some point finds newlines, tabs, etc), and that xmlns="" must be such. What do you think, is this acceptable for full message type variable initialization (does standard allows this)? If OK, I could try fix that <message><part> thing. Also for me looks like this construction doesn't work for <assign><copy><from /><to /></copy></assign> because of some extra validation. Thanks, Madars On Mon, 2009-03-30 at 09:09 -0400, Ford, Mark wrote: > ODE doesn't support variable initialization yet. See here: > http://ode.apache.org/ws-bpel-20-specification-compliance.html > > The only way to initialize a message variable is through a copy operation > within an assign activity. You can initialize all of the parts of a message > at once if you are copying from another message variable of the same message > type. If you are copying from an expression, literal, or other variable type > then you need to specify the message part in the to specification. > > On 3/30/09 1:10 AM, "Madars Vitolins" <m...@silodev.eu> wrote: > > Hello! > > Is it possible to initialize message type variable fully using literal > with out specifying to-part? > > <assing> > <copy> > <from> > <literal> > ... > </literal> > </from> > <to variable="msgVar1"> > </copy> > </assing> > > For assing/copy that is not problem, but how with inline variable > initialization? Should such way be supported? > > Thanks, > Madars > > > > > > -- > Mark Ford > MIT Lincoln Laboratory > 244 Wood Street > Lexington MA 02420 > (781) 981-1843 -- Mark Ford MIT Lincoln Laboratory 244 Wood Street Lexington MA 02420 (781) 981-1843