ode-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Madars Vitolins...@silodev.eu>
Subject Re: Complex variable initialization and namespaces
Date Wed, 21 Jan 2009 07:06:18 GMT
OK, Found way out:

If I code following:

      <assign name="assign1">
          <copy>
            <from>
                <literal>
                    <ns:getUsername xmlns:ns="http://logon.firma.lv/">
                        <personCode xmlns="">8888</personCode>
                    </ns:getUsername>
                </literal>
            </from>
           <to variable="getUsernameRequestVar"
                    part="parameters"/>
          </copy>
      </assign>


it will generate something like this:

<soapenv:Body>
        <axis2ns68:getUsername xmlns:axis2ns68="http://logon.firma.lv/">
            <personCode xmlns="">8888</personCode>
        </axis2ns68:getUsername>
    </soapenv:Body>


And this is acceptable by web service.


Hopes someone this will help!


Madars
Madars Vitolins wrote:
> Hello!
>
> I Have created simple web service (document style) in NetBeans 6.5 and 
> it takes complex variable (so generated).
> I can call this web service from ode BPEL proces, but problem is that 
> I cannot pass parameter value to this web service. It all the times 
> gets null.
> Mainly seems that problem is that Ode puts those namespaces for each 
> tag of the SOAP message content.
> This parameter (variable) message gets initialized in BPEL code.
>
>
> I have tried various ways to initialize variable, but cannot get one 
> that works with my web service:
>
> 1)In BPEL code:
>
>      <assign name="assign1">
>          <copy>
>            <from>
>                <literal>
>                    <*ns*:getUsername *xmlns:ns*="http://logon.firma.lv/">
>                        <*ns:*personCode>8888</*ns:*personCode>
>                    </*ns:*getUsername>
>                </literal>
>          </from>
>           <to variable="getUsernameRequestVar"
>                    part="parameters"/>
>          </copy>
>      </assign>
> sent to ws :
> <?xml version='1.0' encoding='utf-8'?>
> <soapenv:Envelope 
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
>    <soapenv:Header>
>        <addr:To 
> xmlns:addr="http://www.w3.org/2005/08/addressing">http://localhost:8080/logon/LogonWS

>
>        </addr:To>
>        <addr:Action 
> xmlns:addr="http://www.w3.org/2005/08/addressing"></addr:Action>
>        <addr:ReplyTo xmlns:addr="http://www.w3.org/2005/08/addressing">
>            <addr:Address>http://www.w3.org/2005/08/addressing/anonymous
>            </addr:Address>
>        </addr:ReplyTo>
>        <addr:MessageID 
> xmlns:addr="http://www.w3.org/2005/08/addressing">uuid:hqejbhcnphr3xa7t5tlj11 
>
>        </addr:MessageID>
>    </soapenv:Header>
>    <soapenv:Body>
> *        <axis2ns96:getUsername xmlns:axis2ns96="http://logon.firma.lv/"
>            xmlns:ns="http://logon.firma.lv/">
>            <ns:personCode>8888</ns:personCode>
>        </axis2ns96:getUsername>
> *    </soapenv:Body>
> </soapenv:Envelope>
>
> And outcome is bad: INFO: Requested user info for *null*
>
> 2) I have tried this way:
>
> <assign name="assign1">
>          <copy>
>            <from>
>                <literal>
>                    <getUsername *xmlns*="http://logon.firma.lv/">
>                        <personCode 
> *xmlns*="http://logon.firma.lv/">8888</personCode>
>                    </getUsername>*
> *                </literal>
>            </from>
>           <to variable="getUsernameRequestVar"
>                    part="parameters"/>
>          </copy>
>      </assign>
>
>
> sent to ws:
> ...
>    <soapenv:Body>
>        <axis2ns90:getUsername xmlns:axis2ns90="http://logon.firma.lv/"
>            xmlns="http://logon.firma.lv/">
>            <personCode>8888</personCode>
>        </axis2ns90:getUsername>
>    </soapenv:Body>
> ...
>
> result is bad: INFO: Requested user info for *null*
>
> 3) I have tried also this way:
> <assign name="assign1">
>          <copy>
>            <from>
>                <literal>
>                    <*log*:getUsername>
>                        <personCode 
> *xmlns*="http://logon.firma.lv/">8888</personCode>
>                    </*log*:getUsername>
>                </literal>
>            </from>
>           <to variable="getUsernameRequestVar"
>                    part="parameters"/>
>          </copy>
>      </assign>
>
> Sent to ws:
> ...
> <soapenv:Body>
>        <axis2ns92:getUsername xmlns:axis2ns92="http://logon.firma.lv/"
>            xmlns:log="http://logon.firma.lv/">
>            <log:personCode 
> xmlns="http://logon.firma.lv/">8888</log:personCode>
>        </axis2ns92:getUsername>
>    </soapenv:Body>
> ...
> result is bad: INFO: Requested user info for *null
>
> *4) Also this way:
> <assign name="assign1">
>          <copy>
>            <from>
>                <literal>
>                    <getUsername *xmlns*="http://logon.firma.lv/">
>                        <*log*:personCode>8888</log:personCode>
>                    </getUsername>
>                </literal>
>            </from>
>           <to variable="getUsernameRequestVar"
>                    part="parameters"/>
>          </copy>
>      </assign>
> Sent to ws:
> <soapenv:Body>
>        <axis2ns94:getUsername xmlns:axis2ns94="http://logon.firma.lv/"
>            xmlns="http://logon.firma.lv/">
>            <log:personCode 
> xmlns:log="http://logon.firma.lv/">8888</log:personCode>
>        </axis2ns94:getUsername>
>    </soapenv:Body>
> result is bad: INFO: Requested user info for *null*
>
> One way that works with SoapUI is following, but I cannot get such 
> generated by Ode:
>
>    <soapenv:Body>
>        <axis2ns68:getUsername xmlns:axis2ns68="http://logon.firma.lv/">
>            <personCode>8888</personCode>
>        </axis2ns68:getUsername>
>    </soapenv:Body>
>
>
> Could somebody please help to sort out this? It gets very annoying, I 
> have spent already day on this....
>
>
> Thanks a lot in advance!
> Madars
>
>
>
>
>
>


Mime
View raw message