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

Rafal Rusin resolved ODE-501.
-----------------------------

       Resolution: Fixed
    Fix Version/s: 2.0

Committed and added test case to trunk and branch 1.X.


> ExtVar support in JBI
> ---------------------
>
>                 Key: ODE-501
>                 URL: https://issues.apache.org/jira/browse/ODE-501
>             Project: ODE
>          Issue Type: Bug
>          Components: JBI Integration
>    Affects Versions: 1.3.2
>         Environment: ServiceMix 3.3
>            Reporter: Rafal Rusin
>            Assignee: Rafal Rusin
>             Fix For: 1.3.3, 2.0
>
>         Attachments: extvar-sa.zip, extvars-in-jbi.diff
>
>
> I tried to run ExtVar test case in ServiceMix. I got error:
> 21:21:42,756 | ERROR | Timer-3    | ExternalVariableManager  | 
> extvar.ExternalVariableManager   79 | External variable engine 
> "{http://ode.apache.org/externalVariables/jdbc}jdbc"; referenced by external 
> variable "costPerCustomer" not registered.
> 21:21:42,757 | ERROR | Timer-3    | ExternalVariableManager  | 
> extvar.ExternalVariableManager  109 | The "__PROCESS_SCOPE:ExtVar2" scope 
> declared an unknown external variable "costPerCustomer"; check the deployment 
> descriptor.
> 21:21:42,757 | ERROR | Timer-3    | ExternalVariableManager  | 
> extvar.ExternalVariableManager  120 | Error initializing external variables. 
> See log for details.
> 21:21:42,758 | ERROR | Timer-3    | NStateLatch              | 
> he.ode.bpel.engine.NStateLatch  110 | Latch error, was releasing for state 1 
> but actually in -1
> 21:21:42,758 | ERROR | Timer-3    | OdeServiceUnit           | 
> .apache.ode.jbi.OdeServiceUnit  108 | Unable to load 
> {http://ode/bpel/unit-test}ExtVar2-1
> org.apache.ode.bpel.iapi.BpelEngineException: Error initializing external 
> variables. See log for details.
>       at 
> org.apache.ode.bpel.engine.extvar.ExternalVariableManager.<init>(ExternalVariableManager.java:121)
>       at 
> org.apache.ode.bpel.engine.BpelProcess.initExternalVariables(BpelProcess.java:146)
>       at 
> org.apache.ode.bpel.engine.BpelProcess$HydrationLatch.doHydrate(BpelProcess.java:828)
>       at 
> org.apache.ode.bpel.engine.BpelProcess$HydrationLatch.access$100(BpelProcess.java:786)
>       at 
> org.apache.ode.bpel.engine.BpelProcess$HydrationLatch$2.run(BpelProcess.java:796)
>       at org.apache.ode.bpel.engine.NStateLatch.latch(NStateLatch.java:89)
>       at org.apache.ode.bpel.engine.BpelProcess.hydrate(BpelProcess.java:661)
>       at 
> org.apache.ode.bpel.engine.BpelServerImpl.register(BpelServerImpl.java:285)
>       at org.apache.ode.jbi.OdeServiceUnit.start(OdeServiceUnit.java:104)
>       at org.apache.ode.jbi.OdeSUManager.start(OdeSUManager.java:115)
>       at 
> org.apache.servicemix.jbi.framework.ServiceUnitLifeCycle.start(ServiceUnitLifeCycle.java:103)
>       at 
> org.apache.servicemix.jbi.framework.ServiceAssemblyLifeCycle.start(ServiceAssemblyLifeCycle.java:132)
>       at 
> org.apache.servicemix.jbi.framework.DeploymentService.start(DeploymentService.java:378)
>       at 
> org.apache.servicemix.jbi.framework.AutoDeploymentService.updateServiceAssembly(AutoDeploymentService.java:355)
>       at 
> org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive(AutoDeploymentService.java:256)
>       at 
> org.apache.servicemix.jbi.framework.AutoDeploymentService.monitorDirectory(AutoDeploymentService.java:667)
>       at 
> org.apache.servicemix.jbi.framework.AutoDeploymentService.access$800(AutoDeploymentService.java:62)
>       at 
> org.apache.servicemix.jbi.framework.AutoDeploymentService$1.run(AutoDeploymentService.java:631)
>       at java.util.TimerThread.mainLoop(Timer.java:512)
>       at java.util.TimerThread.run(Timer.java:462)
> 21:21:42,769 | ERROR | Timer-3    | OdeSUManager             | 
> rg.apache.ode.jbi.OdeSUManager  118 | Error starting service unit 
> "hello-ode-su".
> org.apache.ode.bpel.iapi.BpelEngineException: Error initializing external 
> variables. See log for details.
>       at 
> org.apache.ode.bpel.engine.extvar.ExternalVariableManager.<init>(ExternalVariableManager.java:121)
>       at 
> org.apache.ode.bpel.engine.BpelProcess.initExternalVariables(BpelProcess.java:146)
>       at 
> org.apache.ode.bpel.engine.BpelProcess$HydrationLatch.doHydrate(BpelProcess.java:828)
>       at 
> org.apache.ode.bpel.engine.BpelProcess$HydrationLatch.access$100(BpelProcess.java:786)
>       at 
> org.apache.ode.bpel.engine.BpelProcess$HydrationLatch$2.run(BpelProcess.java:796)
>       at org.apache.ode.bpel.engine.NStateLatch.latch(NStateLatch.java:89)
>       at org.apache.ode.bpel.engine.BpelProcess.hydrate(BpelProcess.java:661)
>       at 
> org.apache.ode.bpel.engine.BpelServerImpl.register(BpelServerImpl.java:285)
>       at org.apache.ode.jbi.OdeServiceUnit.start(OdeServiceUnit.java:104)
>       at org.apache.ode.jbi.OdeSUManager.start(OdeSUManager.java:115)
>       at 
> org.apache.servicemix.jbi.framework.ServiceUnitLifeCycle.start(ServiceUnitLifeCycle.java:103)
>       at 
> org.apache.servicemix.jbi.framework.ServiceAssemblyLifeCycle.start(ServiceAssemblyLifeCycle.java:132)
>       at 
> org.apache.servicemix.jbi.framework.DeploymentService.start(DeploymentService.java:378)
>       at 
> org.apache.servicemix.jbi.framework.AutoDeploymentService.updateServiceAssembly(AutoDeploymentService.java:355)
>       at 
> org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive(AutoDeploymentService.java:256)
>       at 
> org.apache.servicemix.jbi.framework.AutoDeploymentService.monitorDirectory(AutoDeploymentService.java:667)
>       at 
> org.apache.servicemix.jbi.framework.AutoDeploymentService.access$800(AutoDeploymentService.java:62)
>       at 
> org.apache.servicemix.jbi.framework.AutoDeploymentService$1.run(AutoDeploymentService.java:631)
>       at java.util.TimerThread.mainLoop(Timer.java:512)
>       at java.util.TimerThread.run(Timer.java:462)
> 21:21:42,776 | WARN  | Timer-3    | ServiceAssemblyLifeCycle | 
> ework.ServiceAssemblyLifeCycle  407 | Could not parse result exception
> org.xml.sax.SAXParseException: Content is not allowed in prolog.
>       at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
>       at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)
>       at 
> org.apache.servicemix.jbi.framework.ServiceAssemblyLifeCycle.parse(ServiceAssemblyLifeCycle.java:423)
>       at 
> org.apache.servicemix.jbi.framework.ServiceAssemblyLifeCycle.getComponentFailure(ServiceAssemblyLifeCycle.java:404)
>       at 
> org.apache.servicemix.jbi.framework.ServiceAssemblyLifeCycle.start(ServiceAssemblyLifeCycle.java:134)
>       at 
> org.apache.servicemix.jbi.framework.DeploymentService.start(DeploymentService.java:378)
>       at 
> org.apache.servicemix.jbi.framework.AutoDeploymentService.updateServiceAssembly(AutoDeploymentService.java:355)
>       at 
> org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive(AutoDeploymentService.java:256)
>       at 
> org.apache.servicemix.jbi.framework.AutoDeploymentService.monitorDirectory(AutoDeploymentService.java:667)
>       at 
> org.apache.servicemix.jbi.framework.AutoDeploymentService.access$800(AutoDeploymentService.java:62)
>       at 
> org.apache.servicemix.jbi.framework.AutoDeploymentService$1.run(AutoDeploymentService.java:631)
>       at java.util.TimerThread.mainLoop(Timer.java:512)
>       at java.util.TimerThread.run(Timer.java:462)
> 21:21:42,782 | INFO  | Timer-3    | DeploymentService        | 
> bi.framework.DeploymentService  380 | Error in start
> I figured out that JdbcExternalVariableModule was not added on init. 
> I did a patch for ode1x branch, which resolved this problem. 
> I'm also attaching example Service Assembly.. 

-- 
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