ode-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "binh nguyen" <linhtinh0...@gmail.com>
Subject Re: Error of null value after having assigned
Date Wed, 19 Nov 2008 00:36:23 GMT
Hi Ratha,

Actually, the partnerLinkType  StringWSLinkType is defined in another WSDL
file that I forgot not to attach in the last mail. Here is the file:

file StringWSServiceWrapper.wsdl

<?xml version="1.0" encoding="UTF-8"?>

<definitions
    name="StringWSServiceWrapper"
    targetNamespace="
http://enterprise.netbeans.org/bpel/StringWSServiceWrapper"
    xmlns="http://schemas.xmlsoap.org/wsdl/"
    xmlns:tns="http://enterprise.netbeans.org/bpel/StringWSServiceWrapper"
    xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype"
    xmlns:ns="http://MyWS/">

    <import location="StringWSService.wsdl" namespace="http://MyWS/"/>
    <plnk:partnerLinkType name="StringWSLinkType">
        <plnk:role name="StringWSRole" portType="ns:StringWS"/>
    </plnk:partnerLinkType>
</definitions>
--------------------

Thank you very much for your attention and suggestions.
Please check it again for me, because I really need to fix this issue!

Cheers,
Binh.


2008/11/19 ratha <rathav@wso2.com>

> Hi Binh,
> I can find an error in your partnerlink definition. You defined as,
> /<partnerLinks>
>       <partnerLink name="StringPL"
>  partnerLinkType="tns:StringWSLinkType"partnerRole="StringWSRole"
>           initializePartnerRole="yes" xmlns:tns="
> http://enterprise.netbeans.org/bpel/StringWSServiceWrapper"/>
>       <partnerLink name="TestPartnerLink"            xmlns:tns="
> http://j2ee.netbeans.org/wsdl/testBP"
>           partnerLinkType="tns:testBPLT" myRole="testBPPortTypeRole"/>
>   </partnerLinks>
>
> /StringPL is wrong.. Name space should be the relevant WSDL files name
> space..You need to define at the start (with <bpel:process name> tag)
> So your StringPL doesnt have partnerlinktype or partner role...May cause an
> error..
>
> Thanks.
> regards,
> ratha.
>
> binh nguyen wrote:
>
>> Hi everyone,
>> I have a trouble with the assign activity, when the value of a variable is
>> always NULL after having been assigned NOT NULL value.
>> Here I show the bpel and wsdl files:
>>
>> bpel file: testBP.bpel
>>
>> <?xml version="1.0" encoding="UTF-8"?>
>> <process
>>    name="testBP"
>>    targetNamespace="http://enterprise.netbeans.org/bpel/StringBP/testBP"
>>    xmlns:tns="http://enterprise.netbeans.org/bpel/StringBP/testBP"
>>    xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
>>    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>>    xmlns:str="http://MyWS/"
>>    xmlns:ns0="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
>>    xmlns:ns1="http://j2ee.netbeans.org/wsdl/testBP">
>>
>>    <import namespace="http://j2ee.netbeans.org/wsdl/testBP"
>>        location="testBP.wsdl"
>>        importType="http://schemas.xmlsoap.org/wsdl/"/>
>>    <import namespace="
>> http://enterprise.netbeans.org/bpel/StringWSServiceWrapper"
>>        location="StringWSServiceWrapper.wsdl"
>>        importType="http://schemas.xmlsoap.org/wsdl/"/>
>>    <import namespace="http://MyWS/"
>>        location="StringWSService.wsdl"
>>        importType="http://schemas.xmlsoap.org/wsdl/"/>
>>
>>    <partnerLinks>
>>        <partnerLink name="StringPL"
>>            xmlns:tns="
>> http://enterprise.netbeans.org/bpel/StringWSServiceWrapper"
>>            partnerLinkType="tns:StringWSLinkType"
>> partnerRole="StringWSRole"
>>            initializePartnerRole="yes"/>
>>        <partnerLink name="TestPartnerLink"
>>            xmlns:tns="http://j2ee.netbeans.org/wsdl/testBP"
>>            partnerLinkType="tns:testBPLT" myRole="testBPPortTypeRole"/>
>>    </partnerLinks>
>>    <variables>
>>        <variable name="TestOneWayOut"
>> messageType="str:testOneWayResponseMsg"/>
>>        <variable name="TestOneWayIn" messageType="str:testOneWayMsg"/>
>>
>>        <variable name="TestStringOut"
>> messageType="str:testStringResponseMsg"/>
>>        <variable name="TestStringIn" messageType="str:testStringMsg"/>
>>
>>        <variable name="TestBPOperationOut" xmlns:tns="
>> http://j2ee.netbeans.org/wsdl/testBP"
>>            messageType="tns:testBPOperationResponseMsg"/>
>>        <variable name="TestBPOperationIn" xmlns:tns="
>> http://j2ee.netbeans.org/wsdl/testBP"
>>            messageType="tns:testBPOperationRequestMsg"/>
>>    </variables>
>>    <sequence>
>>        <receive name="Receive1" createInstance="yes"
>>            partnerLink="TestPartnerLink"
>>            operation="testBPOperation"
>>            xmlns:tns="http://j2ee.netbeans.org/wsdl/testBP"
>>            portType="tns:testBPPortType"
>>            variable="TestBPOperationIn"/>
>>        <assign name="InitMainVars">
>>
>>            <copy>
>>                <from>
>>                    <literal>
>>                        <tns:testBPOperationResponse xmlns:tns="
>> http://j2ee.netbeans.org/wsdl/testBP">
>>                            <tns:return/>
>>                        </tns:testBPOperationResponse>
>>                    </literal>
>>                </from>
>>                <to>$TestBPOperationOut.partOut</to>
>>            </copy>
>>
>>        </assign>
>>
>>        <assign name="InitTestOneWayVars">
>>            <copy>
>>                <from>
>>                    <literal>
>>                        <tns:testOneWay xmlns:tns="http://MyWS/">
>>
>>                        </tns:testOneWay>
>>                    </literal>
>>                </from>
>>                <to>$TestOneWayIn.parameters</to>
>>            </copy>
>>
>>            <copy>
>>                <from>
>>                    <literal>
>>                        <tns:testOneWayResponse xmlns:tns="http://MyWS/">
>>                            <tns:return>NoChange</tns:return>
>>                        </tns:testOneWayResponse>
>>                    </literal>
>>                </from>
>>                <to>$TestOneWayOut.parameters</to>
>>            </copy>
>>
>>            <copy>
>>                <from variable="TestBPOperationIn" part="partIn"/>
>>                <to>$TestOneWayIn.parameters</to>
>>            </copy>
>>        </assign>
>>
>>        <invoke name="InvokeTestOneWay" partnerLink="StringPL"
>>            operation="testOneWay"
>>            portType="str:StringWS"
>>            inputVariable="TestOneWayIn"
>>            outputVariable="TestOneWayOut"/>
>>
>>
>>        <assign name="InitTestStringVars">
>>            <copy>
>>                <from>
>>                    <literal>
>>                        <tns:testString xmlns:tns="http://MyWS/">
>>                            <tns:input></tns:input>
>>                        </tns:testString>
>>                    </literal>
>>                </from>
>>                <to>$TestStringIn.parameters</to>
>>            </copy>
>>            <copy>
>>                <from>
>>                    <literal>
>>                        <tns:testStringResponse xmlns:tns="http://MyWS/">
>>                            <tns:return></tns:return>>
>>                        </tns:testStringResponse>
>>                    </literal>
>>                </from>
>>                <to>$TestStringOut.parameters</to>
>>            </copy>
>>
>> *<!-- Error from this assign, the variable TestStringIn is always NULL
>> after
>> this asign -->*
>>
>>            <copy>
>>                <!--<from part="partIn" variable="TestBPOperationIn"
>> query="/partIn/input"/>
>>                -->
>>                <from>$TestBPOperationIn.partIn/ns1:input</from>
>>                <to part="parameters" variable="TestStringIn" />
>> <!--
>>                <from>
>>                    <literal>
>>                        <tns:input xmlns:tns="http://MyWS/">
>>
>> <![CDATA[$TestBPOperationIn.parameters/ns1:input]]>
>>                        </tns:input>
>>                    </literal>
>>                </from>
>>  -->
>>
>>            </copy>
>>
>>        </assign>
>>
>> *<!-- TestStringIn is NULL in this INVOKE -->*
>>
>>        <invoke name="InvokeTestString" partnerLink="StringPL"
>>            operation="testString"
>>            portType="str:StringWS"
>>            inputVariable="TestStringIn"
>>            outputVariable="TestStringOut"/>
>>
>>        <assign name="Assign2">
>>
>>            <copy>
>>                <from>concat($TestBPOperationIn.partIn/ns1:input, '-&gt;',
>>                    $TestOneWayOut.parameters, '-&gt;',
>>                    $TestStringOut.parameters, '-&gt;', ' OK!')
>>                </from>
>>                <to variable="TestBPOperationOut" part="partOut"></to>
>>            </copy>
>>
>>        </assign>
>>
>>        <reply name="Reply1" partnerLink="TestPartnerLink"
>>            operation="testBPOperation"
>>            xmlns:tns="http://j2ee.netbeans.org/wsdl/testBP"
>>            portType="tns:testBPPortType"
>>            variable="TestBPOperationOut"/>
>>    </sequence>
>> </process>
>> --------------------
>>
>> wsdl file: testBP.wsdl
>>
>> <?xml version="1.0" encoding="UTF-8"?>
>> <definitions name="testBP"
>>    targetNamespace="http://j2ee.netbeans.org/wsdl/testBP"
>>    xmlns="http://schemas.xmlsoap.org/wsdl/"
>>    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>>    xmlns:tns="http://j2ee.netbeans.org/wsdl/testBP"
>>    xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype"
>>    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
>>    <!--
>> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>>
>>
>>
>>     TYPE DEFINITION - List of types participating in this BPEL process
>>     The BPEL Designer will generate default request and response types
>>     but you can define or import any XML Schema type and use them as part
>>     of the message types.
>>     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> -->
>>    <types>
>>        <schema attributeFormDefault="unqualified"
>> elementFormDefault="qualified"
>>                targetNamespace="http://j2ee.netbeans.org/wsdl/testBP"
>>                xmlns="http://www.w3.org/2001/XMLSchema">
>>
>>            <element name="testBPOperationRequest">
>>                <complexType>
>>                    <sequence>
>>                        <element name="input" type="xsd:string"/>
>>                    </sequence>
>>                </complexType>
>>            </element>
>>
>>            <element name="testBPOperationResponse">
>>                <complexType>
>>                    <sequence>
>>                        <element name="return" type="xsd:string"/>
>>                    </sequence>
>>                </complexType>
>>            </element>
>>
>>        </schema>
>>    </types>
>>
>>    <message name="testBPOperationRequestMsg">
>>        <part name="partIn" element="tns:testBPOperationRequest"/>
>>    </message>
>>    <message name="testBPOperationResponseMsg">
>>        <part name="partOut" element="tns:testBPOperationResponse"/>
>>    </message>
>>
>>    <portType name="testBPPortType">
>>        <operation name="testBPOperation">
>>            <input name="input1" message="tns:testBPOperationRequestMsg"/>
>>            <output name="output1"
>> message="tns:testBPOperationResponseMsg"/>
>>        </operation>
>>    </portType>
>>    <binding name="testBPBinding" type="tns:testBPPortType">
>>        <soap:binding style="document" transport="
>> http://schemas.xmlsoap.org/soap/http"/>
>>        <operation name="testBPOperation">
>>            <soap:operation/>
>>            <input name="input1">
>>                <soap:body use="literal" />
>>            </input>
>>            <output name="output1">
>>                <soap:body use="literal" />
>>            </output>
>>        </operation>
>>    </binding>
>>    <service name="testBPService">
>>        <port name="testBPPort" binding="tns:testBPBinding">
>>            <soap:address location="
>> http://localhost:8080/ode/processes/testBP"/>
>>            <!--<soap:address location="
>> http://localhost:8080/active-bpel/services/testBP"/>-->
>>        </port>
>>    </service>
>>    <plnk:partnerLinkType name="testBPLT">
>>
>>        <plnk:role name="testBPPortTypeRole"
>> portType="tns:testBPPortType"/>
>>    </plnk:partnerLinkType>
>> </definitions>
>> ------------
>> more wsdl file StringWSService.wsdl
>>
>> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
>> <!-- Generated by JAX-WS RI at http://jax-ws.dev.java.net. RI's version
>> is
>> JAX-WS RI 2.1.4-b01-. -->
>> <definitions targetNamespace="http://MyWS/"
>>    name="StringWSService"
>>    xmlns="http://schemas.xmlsoap.org/wsdl/"
>>    xmlns:tns="http://MyWS/"
>>    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>>    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
>>  <types>
>>    <xsd:schema>
>>      <xsd:import namespace="http://MyWS/"
>> schemaLocation="StringWSService_schema1.xsd"/>
>>    </xsd:schema>
>>  </types>
>>  <message name="testStringMsg">
>>    <part name="parameters" element="tns:testString"/>
>>  </message>
>>  <message name="testStringResponseMsg">
>>    <part name="parameters" element="tns:testStringResponse"/>
>>  </message>
>>  <message name="testOneWayMsg">
>>    <part name="parameters" element="tns:testOneWay"/>
>>  </message>
>>  <message name="testOneWayResponseMsg">
>>    <part name="parameters" element="tns:testOneWayResponse"/>
>>  </message>
>>  <portType name="StringWS">
>>    <operation name="testString">
>>      <input message="tns:testStringMsg"/>
>>      <output message="tns:testStringResponseMsg"/>
>>    </operation>
>>    <operation name="testOneWay">
>>      <input message="tns:testOneWayMsg"/>
>>      <output message="tns:testOneWayResponseMsg"/>
>>    </operation>
>>  </portType>
>>  <binding name="StringWSPortBinding" type="tns:StringWS">
>>    <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
>> style="document"/>
>>    <operation name="testString">
>>      <soap:operation soapAction=""/>
>>      <input>
>>        <soap:body use="literal"/>
>>      </input>
>>      <output>
>>        <soap:body use="literal"/>
>>      </output>
>>    </operation>
>>    <operation name="testOneWay">
>>      <soap:operation soapAction=""/>
>>      <input>
>>        <soap:body use="literal"/>
>>      </input>
>>      <output>
>>        <soap:body use="literal"/>
>>      </output>
>>    </operation>
>>  </binding>
>>  <service name="StringWSService">
>>    <port name="StringWSPort" binding="tns:StringWSPortBinding">
>>      <soap:address location="http://localhost:8080/MyWS/StringWS"/>
>>    </port>
>>  </service>
>> </definitions>
>> --------------------
>>
>> In the testBP.bpel file, the value of variable TestStringIn is always NULL
>> event after it has been assigned by Non NULL value.
>> I do not know how to assign it correctly?
>> Any advice is appreciated!
>> Binh.
>>
>>  ------------------------------------------------------------------------
>>
>>
>> No virus found in this incoming message.
>> Checked by AVG - http://www.avg.com Version: 8.0.175 / Virus Database:
>> 270.9.4/1791 - Release Date: 11/15/2008 6:57 PM
>>
>>
>>
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message