Dear Ian,
when I deploy the BPEL process, I get following warnings:
WARN - GeronimoLog.warn(92) | Unrecognized element in BPEL dom: literal
WARN - GeronimoLog.warn(92) | null:62: warning: [XPath20Syntax] The string "
" is not a valid XPath 2.0 expression: empty string
WARN - GeronimoLog.warn(92) | Unrecognized element in BPEL dom: literal
WARN - GeronimoLog.warn(92) | null:77: warning: [XPath20Syntax] The string "
" is not a valid XPath 2.0 expression: empty string
Both concern your assigns. I fixed the first assign as follows:
<assign name="assign1">
<copy>
<from>
<literal>
<create:outLine> Initial value </create:outLine>
</literal>
</from>
<to variable="logInMsg" part="parameters" />
</copy>
</assign>
Be aware of XML namespaces! I know it's simple in theory and tricky in
practice. However, with some experience you'll get this done. literal is
a BPEL "command", therefore it is still in the BPEL namespace. You MUST
NOT override this with xmlns="". However, the XML-tags for your part
must have the correct namespace. I hope I got this one right, but I do
not have the time to test it atm (i.e. running the process).
One little remark: You should clean up your variables. In your example
you should only need 4 message-type variables: one for the receive, two
for the invoke (in and out), and one for the reply. Currently, you have
declared 9 variables (probably due to experimenting). You should clean
this up and then fix your second assign like the first one and add a new
copy that copies the elements to your output message (createOutMsg) that
your process shall return.
Daniel
[email protected] schrieb:
> Hi Daniel,
>
> I modified the assign element as you suggested to assign to variable
> message parts for both logInMsg and createOutMsg, to try to initialize them
> correctly.
> (The assign element in your message has an extra </to>, which I removed. I
> hope this doesn't affect anything.)
>
> When I start the process, ODE reports that the variable logInMsg is not
> properly initialized.
>
> ERROR - GeronimoLog.error(104) | org.apache.ode.bpel.common.FaultException:
> The variable logInMsg isn't properly initialized.
>
> 10:55:24,485 ERROR [INVOKE] org.apache.ode.bpel.common.FaultException: The
> variable logInMsg isn't properly initialized.
>
> I have attached a .zip with the Tomcat log and the process. The .zip also
> includes the implementation of the simpleLogService that I'm trying to
> invoke, in case this is relevant. It is an Axis web service that runs
> under Tomcat. The ant build.xml file has targets to install and deploy the
> service.
>
> (See attached file: initvar02.zip)
> Ian Griggs
> Integration Architect
> Applied Materials Canada Inc.
> AGS Manufacturing Automation Services
> [email protected] <<-- New mail address
> [email protected] <<-- personal mail address
> 647 288 5298 -- Direct dial number in office
> (416) 977-0599 x85298 -- office, note new extension
> (416) 465 9389 -- home
>
> The content of this message is Applied Materials Confidential. If you are
> not the intended recipient and have received this message in error, any use
> or distribution is prohibited. Please notify me immediately by reply
> e-mail and delete this message from your computer system. Thank you.
>
>
>
>
>
> To
> Daniel Luebke [email protected]
> <[email protected] cc
> ver.de>
> Subject
> 01/17/2009 06:35 AM Re: Problem invoking a service
> using style="document"
>
> Please respond to
> [email protected]
>
>
>
>
>
>
>
>
>
> Dear Ian,
>
> I just had a quick glance over your process. I saw that your assign
> targets an expression ($variableName). When initializing a variable, you
> should copy the contents to variable, not an expression. For example,
> instead of your assign with copys you can copy directly:
>
> <assign name="assign1">
> <copy>
> <from>
> <literal xmlns="" >
> <outLine> Initial value </outLine>
> </literal>
> </from>
> <to variable="logInMsg" part="parameters" />
> </to>
> </copy>
> </assign>
>
> I don't had the time to really test your process, but I saw that your
> variable that you use to store the reply-message (createOutMsg) isn't
> initialized, too. So you will get an error message there as well until
> you make an assignment to this variable as well.
>
> Daniel
>
> [email protected] schrieb:
>
>> I modified the service I am trying to invoke so that the document/literal
>> part is a single element. The element is of a complexType,
>> logLineInputType. Hopefully this makes the service WS-I compliant.
>>
>> I tested the service with soapUI. The request message looks like this:
>>
>> <soapenv:Envelope xmlns:soapenv="
>>
> http://schemas.xmlsoap.org/soap/envelope/"
>
>> xmlns:sim="http://simpleLogService.examples/">
>> <soapenv:Header/>
>> <soapenv:Body>
>> <sim:logLineInputElement>
>> <outLine>foobar</outLine>
>> </sim:logLineInputElement>
>> </soapenv:Body>
>> </soapenv:Envelope>
>>
>> I modified the assign to try copy a literal to a variable,
>> logInMsgParameters, of type logLineInputType. Based on the SOAP message,
>> and various earlier messages to the ode group about complex types, I
>> guessed that the namespace for an <outLine> element within the literal
>> should be empty. But this guess might be totally wrong.
>>
>>
>> The assign tries to copy this variable to a message part.
>> This copy fails.
>> The Tomcat log contains the following error message:
>>
>> ERROR - GeronimoLog.error(104) | Assignment Fault:
>>
>>
> {http://docs.oasis-open.org/wsbpel/2.0/process/executable}uninitializedVariable,lineNo=71,faultExplanation=The
>
>
>> variable logInMsgParameters isn't properly initialized.
>>
>> I've attached a .zip with the Tomcat log and the process.
>>
>> (See attached file: initvar.zip)
>>
>> Can you help me understand what I'm doing wrong?
>>
>>
>>
>>
>>
>>
>>
>> Ian Griggs
>> Integration Architect
>> Applied Materials Canada Inc.
>> AGS Manufacturing Automation Services
>> [email protected] <<-- New mail address
>> [email protected] <<-- personal mail address
>> 647 288 5298 -- Direct dial number in office
>> (416) 977-0599 x85298 -- office, note new extension
>> (416) 465 9389 -- home
>>
>> The content of this message is Applied Materials Confidential. If you
>>
> are
>
>> not the intended recipient and have received this message in error, any
>>
> use
>
>> or distribution is prohibited. Please notify me immediately by reply
>> e-mail and delete this message from your computer system. Thank you.
>>
>>
>>
>>
>
>
>
>
>
>
> To
>
>> "Matthieu Riou" "Alex Boisvert"
>>
>
>
>> <[email protected]> <[email protected]>
>>
>
>
> cc
>
>> 01/14/2009 11:09 AM [email protected]
>>
>
>
> Subject
>
>> Re: Problem invoking a service
>>
>
>
>> Please respond to using style="document"
>>
>
>
>> [email protected]
>>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>>
>>
>> On Wed, Jan 14, 2009 at 8:00 AM, Alex Boisvert <[email protected]>
>> wrote:
>>
>>
>>
>>> On Wed, Jan 14, 2009 at 7:39 AM, Matthieu Riou
>>>
>>>
>> <[email protected]>wrote:
>>
>>
>>>> Can you give it a try this way? That being said it's entirely possible
>>>> that
>>>> we would have a bug with simple typed parts in doc/lit, it's not a very
>>>> common use case (usually people use element parts). But I'd like you to
>>>> try
>>>> with the correct assignment first and if that fails, then I'll create a
>>>> Jira
>>>> issue for it.
>>>>
>>>>
>>> WS-I BasicProfile 1.1 requires Doc/Lit parts need to be elements (not
>>> types).
>>>
>>>
>>>
>> Ah that's why I was finding the use case strange ;) Somehow I managed to
>> totally forget about it.
>>
>> Matthieu
>>
>>
>>
>>
>>> alex
>>>
>>>
>>>
>>>
>
>