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