[ 
https://issues.apache.org/jira/browse/ODE-518?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Karthick Sankarachary resolved ODE-518.
---------------------------------------

       Resolution: Fixed
    Fix Version/s: 2.0

> Initialized endpoint is required by ODEProcess during deployment despite 
> initializePartnerRole="no" 
> ----------------------------------------------------------------------------------------------------
>
>                 Key: ODE-518
>                 URL: https://issues.apache.org/jira/browse/ODE-518
>             Project: ODE
>          Issue Type: Bug
>          Components: Deployment
>    Affects Versions: 2.0
>         Environment: ServiceMix 3.3
>            Reporter: Mark Ford
>            Assignee: Karthick Sankarachary
>            Priority: Minor
>             Fix For: 2.0
>
>
> Setting initializePartnerLink="no" on a partnerLink with a partnerRole should 
> indicate to the engine that this partnerLink's endpoint reference will be set 
> through the execution of the process (via an assign) as opposed to configured 
> by the deployer. It appears that ODE doesn't support this.
> 1. create a BPEL with a scope that has a partner link declared
> 2. use an assign activity to set the endpoint reference for this partner link
> 3 have an invoke activity that uses this partner link
> 4. create a deploy.xml for the BPEL but omit the scope's partner link
> 5. deploy to service mix
> 6. see stacktrace:
> Caused by: java.lang.IllegalArgumentException: ResourceManagerPartnerLinkType 
> must be bound to an endpoint in deloy.xml
>       at org.apache.ode.bpel.engine.ODEProcess.setRoles(ODEProcess.java:675)
>       at 
> org.apache.ode.bpel.engine.ODEProcess.access$1000(ODEProcess.java:101)
>       at 
> org.apache.ode.bpel.engine.ODEProcess$HydrationLatch.doHydrate(ODEProcess.java:1250)
>       at 
> org.apache.ode.bpel.engine.ODEProcess$HydrationLatch.access$200(ODEProcess.java:1215)
>       at 
> org.apache.ode.bpel.engine.ODEProcess$HydrationLatch$2.run(ODEProcess.java:1226)
>       at org.apache.ode.bpel.engine.NStateLatch.latch(NStateLatch.java:89)
>       at org.apache.ode.bpel.engine.ODEProcess.hydrate(ODEProcess.java:847)
>       at 
> org.apache.ode.bpel.engine.BpelServerImpl.register(BpelServerImpl.java:383)
>       at org.apache.ode.jbi.OdeServiceUnit.start(OdeServiceUnit.java:104)
>       at org.apache.ode.jbi.OdeSUManager.start(OdeSUManager.java:115)
>       ... 10 more
> from ODEProcess.java lines 672-678:
>             if (pl.hasPartnerRole()) {
>               Endpoint endpoint = 
> _pconf.getInvokeEndpoints().get(pl.getName());
>                 if (endpoint == null)
>                     throw new IllegalArgumentException(pl.getName() + " must 
> be bound to an endpoint in deloy.xml");
>               PartnerLinkPartnerRoleImpl partnerRole = new 
> PartnerLinkPartnerRoleImpl(this, pl, endpoint);
>                 _partnerRoles.put(pl, partnerRole);
>             }
> Seems like the null check on the endpoint should not be done if the 
> initializePartnerRole=no. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to