[
https://issues.apache.org/jira/browse/ODE-947?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Denis Weerasiri updated ODE-947:
--------------------------------
Attachment: ODE-947-v1.patch
Attached the patch (ODE-947-v1.patch) as the fix.
> NPE thrown when an unavailable XSD is imported in BPEL
> ------------------------------------------------------
>
> Key: ODE-947
> URL: https://issues.apache.org/jira/browse/ODE-947
> Project: ODE
> Issue Type: Improvement
> Components: BPEL Compilation/Parsing
> Affects Versions: 1.3.5
> Environment: ode-axis2-war-1.3.5 distro in tomcat-6.0.32
> Reporter: Denis Weerasiri
> Attachments: ODE-947-v1.patch
>
>
> How to reproduce the issue.
> 1. Use the following construct ina BPEL in order to import the mentioned XSD
> <bpel:import namespace="http://apache.org/2011/10/ode"
> location="SubscriptionService2.xsd"
> importType="http://www.w3.org/2001/XMLSchema"></bpel:import>
> 2. Note that the SubscriptionService2.xsd is not available in the process
> artifact.
> Exception thrown is
> ERROR [DeploymentPoller] Deployment of Q2CProcess failed, aborting for now.
> java.lang.NullPointerException
> at
> org.apache.ode.bpel.compiler.BpelCompiler.addXsdImport(BpelCompiler.java:226)
> at
> org.apache.ode.bpel.compiler.BpelCompiler.compile(BpelCompiler.java:881)
> at
> org.apache.ode.bpel.compiler.BpelCompiler.compile(BpelCompiler.java:706)
> at org.apache.ode.bpel.compiler.BpelC.compile(BpelC.java:263)
> at org.apache.ode.bpel.compiler.BpelC.compile(BpelC.java:333)
> at
> org.apache.ode.store.DeploymentUnitDir$5.run(DeploymentUnitDir.java:204)
> at org.apache.ode.utils.InternPool.runBlock(InternPool.java:57)
> at
> org.apache.ode.store.DeploymentUnitDir.compile(DeploymentUnitDir.java:201)
> at
> org.apache.ode.store.DeploymentUnitDir.compile(DeploymentUnitDir.java:162)
> at
> org.apache.ode.store.ProcessStoreImpl.deploy(ProcessStoreImpl.java:204)
> at
> org.apache.ode.store.ProcessStoreImpl.deploy(ProcessStoreImpl.java:172)
> at
> org.apache.ode.axis2.deploy.DeploymentPoller.check(DeploymentPoller.java:160)
> at
> org.apache.ode.axis2.deploy.DeploymentPoller.access$300(DeploymentPoller.java:60)
> at
> org.apache.ode.axis2.deploy.DeploymentPoller$PollingThread.run(DeploymentPoller.java:251)
> Here I've attached a patch to generate a more context sensitive compilation
> error.
> After adding the patch, the error log would be as follows.
> org.apache.ode.bpel.compiler.api.CompilationException: error:
> [CompilationErrors] Compilation completed with 3 error(s):
>
> file:/opt/installations/apache/tomcat/apache-tomcat-6.0.32/webapps/ode-axis2-war-1.3.5/WEB-INF/processes/Q2CProcess/Q2CProcess.bpel:26:
> error: [XsdImportNotFound] The XSD
> "file:/opt/installations/apache/tomcat/apache-tomcat-6.0.32/webapps/ode-axis2-war-1.3.5/WEB-INF/processes/Q2CProcess/SubscriptionService2.xsd"
> not found.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira