You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ode.apache.org by "Vallender, Mike" <Mi...@COGNOS.com> on 2007/11/29 09:57:36 UTC

WS-addressing EPR's

I've just deployed my first BPEL process and have just tried setting
EPRS dynamically following the examples in the user-guide. If I do a 

      <assign name="AssignAgentPartnerLinkWSA">
         <copy>
          <from>
             <literal>
               <sref:service-ref>
                 <soap:address
location="http://localhost:9300/p2pd/servlet/dispatch"/>
               </sref:service-ref>
             </literal>
           </from>
           <to partnerLink="AgentServicePartnerLink"/>
         </copy>      
     </assign>

Everything is fine - but if I use the WS-addressing style 

      <assign name="AssignAgentPartnerLinkWSA">
         <copy>
           <from>
             <literal>
                   <addr:EndpointReference
xmlns:addr="http://www.w3.org/2005/08/addressing">
 
<addr:Address>http://localhost:9300/p2pd/servlet/dispatch</addr:Address>
                     <addr:Action>runAgent</addr:Action>
                   </addr:EndpointReference>
             </literal>
           </from>
           <to partnerLink="AgentServicePartnerLink"/>
         </copy>      
     </assign>

I get the following error when the process executes 

ERROR - GeronimoLog.error(104) | Couldn't find endpoint for partner EPR
<?xml version="1.0" encoding="UTF-8"?>
<service-ref xmlns="http://docs.oasis-open.org/wsbpel/2.0/serviceref">
                      <addr:Address
xmlns:addr="http://www.w3.org/2005/08/addressing">http://localhost:9300/
p2pd/servlet/dispatch</addr:Address>
                      <addr:Action
xmlns:addr="http://www.w3.org/2005/08/addressing">runAgent</addr:Action>
                    </service-ref>

Is there something wrong with my definition of the WS-addressing style
EPR? Also does WS-addressing EPRs support reference properties/reference
parameters? I was hoping to use those as a way to put information into
soap-headers rather than use the non-standard extension mechanism to the
<assign> operator. Would this be a possible way or is there a better way
for setting soap-headers? 

Thanks 

Mike
 
       This message may contain privileged and/or confidential information.  If you have received this e-mail in error or are not the intended recipient, you may not use, copy, disseminate or distribute it; do not open any attachments, delete it immediately from your system and notify the sender promptly by e-mail that you have done so.  Thank you.

RE: WS-addressing EPR's

Posted by "Vallender, Mike" <Mi...@COGNOS.com>.
Matthieu, 

Thanks for the reply. I just tried adding the <sref:service-ref> element
and am now getting the following

DEBUG - GeronimoLog.debug(66) | Resolving endpoint reference <?xml
version="1.0" encoding="UTF-8"?>

<literal
xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable">
                <sref:service-ref
xmlns:sref="http://docs.oasis-open.org/wsbpel/2.0/serviceref">
                    <addr:EndpointReference
xmlns:addr="http://www.w3.org/2005/08/addressing">
 
<addr:Address>http://localhost:9300/p2pd/servlet/dispatch</addr:Address>
                      <addr:Action>runAgent</addr:Action>
                    </addr:EndpointReference>
                </sref:service-ref>
              </literal>
WARN - GeronimoLog.warn(92) | Couldnt create any endpoint for element
<?xml version="1.0" encoding="UTF-8"?>
<literal
xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable">
                <sref:service-ref
xmlns:sref="http://docs.oasis-open.org/wsbpel/2.0/serviceref">
                    <addr:EndpointReference
xmlns:addr="http://www.w3.org/2005/08/addressing">
 
<addr:Address>http://localhost:9300/p2pd/servlet/dispatch</addr:Address>
                      <addr:Action>runAgent</addr:Action>
                    </addr:EndpointReference>
                </sref:service-ref>
              </literal>
ERROR - GeronimoLog.error(108) | Method "run" in class
"org.apache.ode.bpel.runtime.INVOKE" threw an unexpected exception.
java.lang.NullPointerException
        at
org.apache.ode.axis2.ExternalService.invoke(ExternalService.java:104)
        at
org.apache.ode.axis2.MessageExchangeContextImpl.invokePartner(MessageExc
hangeContextImpl.java:52)
        at
org.apache.ode.bpel.engine.BpelRuntimeContextImpl.invoke(BpelRuntimeCont
extImpl.java:794)
        at org.apache.ode.bpel.runtime.INVOKE.run(INVOKE.java:96)
        at sun.reflect.GeneratedMethodAccessor69.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
Source)eply. I just tried adding the <sref:service-ref> element and now
get the following

Mike  

-----Original Message-----
From: matthieu.riou@gmail.com [mailto:matthieu.riou@gmail.com] On Behalf
Of Matthieu Riou
Sent: 29 November 2007 16:35
To: user@ode.apache.org
Subject: Re: WS-addressing EPR's

Hi Mike,

Your WS-Addressing endpoint should also be wrapped around a
<service-ref> element, just like you did for the SOAP address. This
wrapper is always mandated by BPEL when you do partnerLink endpoint
assignments.

Cheers,
Matthieu

On Nov 29, 2007 12:57 AM, Vallender, Mike <Mi...@cognos.com>
wrote:

> I've just deployed my first BPEL process and have just tried setting 
> EPRS dynamically following the examples in the user-guide. If I do a
>
>      <assign name="AssignAgentPartnerLinkWSA">
>         <copy>
>          <from>
>             <literal>
>               <sref:service-ref>
>                 <soap:address
> location="http://localhost:9300/p2pd/servlet/dispatch"/>
>               </sref:service-ref>
>             </literal>
>           </from>
>           <to partnerLink="AgentServicePartnerLink"/>
>         </copy>
>     </assign>
>
> Everything is fine - but if I use the WS-addressing style
>
>      <assign name="AssignAgentPartnerLinkWSA">
>         <copy>
>           <from>
>             <literal>
>                   <addr:EndpointReference 
> xmlns:addr="http://www.w3.org/2005/08/addressing">
>
>
<addr:Address>http://localhost:9300/p2pd/servlet/dispatch</addr:Address>
>                     <addr:Action>runAgent</addr:Action>
>                   </addr:EndpointReference>
>             </literal>
>           </from>
>           <to partnerLink="AgentServicePartnerLink"/>
>         </copy>
>     </assign>
>
> I get the following error when the process executes
>
> ERROR - GeronimoLog.error(104) | Couldn't find endpoint for partner 
> EPR <?xml version="1.0" encoding="UTF-8"?> <service-ref 
> xmlns="http://docs.oasis-open.org/wsbpel/2.0/serviceref">
>                      <addr:Address
> xmlns:addr="http://www.w3.org/2005/08/addressing">http://localhost:930
> 0/
> p2pd/servlet/dispatch</addr:Address>
>                      <addr:Action
>
xmlns:addr="http://www.w3.org/2005/08/addressing">runAgent</addr:Action>
>                    </service-ref>
>
> Is there something wrong with my definition of the WS-addressing style

> EPR? Also does WS-addressing EPRs support reference 
> properties/reference parameters? I was hoping to use those as a way to

> put information into soap-headers rather than use the non-standard 
> extension mechanism to the <assign> operator. Would this be a possible

> way or is there a better way for setting soap-headers?
>
> Thanks
>
> Mike
>
>       This message may contain privileged and/or confidential
information.
>  If you have received this e-mail in error or are not the intended 
> recipient, you may not use, copy, disseminate or distribute it; do not

> open any attachments, delete it immediately from your system and 
> notify the sender promptly by e-mail that you have done so.  Thank
you.
>

Re: WS-addressing EPR's

Posted by Matthieu Riou <ma...@offthelip.org>.
Hi Mike,

Your WS-Addressing endpoint should also be wrapped around a <service-ref>
element, just like you did for the SOAP address. This wrapper is always
mandated by BPEL when you do partnerLink endpoint assignments.

Cheers,
Matthieu

On Nov 29, 2007 12:57 AM, Vallender, Mike <Mi...@cognos.com> wrote:

> I've just deployed my first BPEL process and have just tried setting
> EPRS dynamically following the examples in the user-guide. If I do a
>
>      <assign name="AssignAgentPartnerLinkWSA">
>         <copy>
>          <from>
>             <literal>
>               <sref:service-ref>
>                 <soap:address
> location="http://localhost:9300/p2pd/servlet/dispatch"/>
>               </sref:service-ref>
>             </literal>
>           </from>
>           <to partnerLink="AgentServicePartnerLink"/>
>         </copy>
>     </assign>
>
> Everything is fine - but if I use the WS-addressing style
>
>      <assign name="AssignAgentPartnerLinkWSA">
>         <copy>
>           <from>
>             <literal>
>                   <addr:EndpointReference
> xmlns:addr="http://www.w3.org/2005/08/addressing">
>
> <addr:Address>http://localhost:9300/p2pd/servlet/dispatch</addr:Address>
>                     <addr:Action>runAgent</addr:Action>
>                   </addr:EndpointReference>
>             </literal>
>           </from>
>           <to partnerLink="AgentServicePartnerLink"/>
>         </copy>
>     </assign>
>
> I get the following error when the process executes
>
> ERROR - GeronimoLog.error(104) | Couldn't find endpoint for partner EPR
> <?xml version="1.0" encoding="UTF-8"?>
> <service-ref xmlns="http://docs.oasis-open.org/wsbpel/2.0/serviceref">
>                      <addr:Address
> xmlns:addr="http://www.w3.org/2005/08/addressing">http://localhost:9300/
> p2pd/servlet/dispatch</addr:Address>
>                      <addr:Action
> xmlns:addr="http://www.w3.org/2005/08/addressing">runAgent</addr:Action>
>                    </service-ref>
>
> Is there something wrong with my definition of the WS-addressing style
> EPR? Also does WS-addressing EPRs support reference properties/reference
> parameters? I was hoping to use those as a way to put information into
> soap-headers rather than use the non-standard extension mechanism to the
> <assign> operator. Would this be a possible way or is there a better way
> for setting soap-headers?
>
> Thanks
>
> Mike
>
>       This message may contain privileged and/or confidential information.
>  If you have received this e-mail in error or are not the intended
> recipient, you may not use, copy, disseminate or distribute it; do not open
> any attachments, delete it immediately from your system and notify the
> sender promptly by e-mail that you have done so.  Thank you.
>