AnsweredAssumed Answered

Camel and Osgi

Question asked by rvi on Apr 11, 2012
Latest reply on May 10, 2012 by nils1
Hi,

I want deploy a process with some camel servicetasks in a osgi container.

I get this problem:
the osgi engine bundle looks for JavaDelegate services,
but CamelBehavior implements ActivityBehavior.

It seems to work if we expose the CamelBehavior as a JavaDelegate with this implementation:
public class CamelDelegate extends CamelBehaviour implements JavaDelegate {

   public CamelDelegate(Collection<ContextProvider> camelContext) {
      super(camelContext);
   }

   public void execute(DelegateExecution execution) throws Exception {
      if(execution instanceof ActivityExecution) {
         super.execute((ActivityExecution)execution);
      } else {
         throw new UnsupportedOperationException("cannot execute execution of type "+execution.getClass().getName()+" , "+execution.getEventName() );
      }
   }

}

is it correct ? what is the difference between a JavaDelegate and and ActivityBehavior ?

would it be possible to better support camel with a osgi container in the activiti code:
- CamelBehavior implements directly JavaDelegate
- or BlueprintELResolver looks for ActivitiBehavior
?

thanks for help
Richard

Outcomes