Error deplyoing more than one process application referring default process engine

Hi! I’m trying to deploy a process application with a set of bpmn, so I get this error:

Could not register process application with shared process engine
Caused by: java.lang.ClassCastException: org.apache.xerces.parsers.XIncludeAwareParserConfiguration cannot be cast to org.apache.xerces.xni.parser.XMLParserConfiguration"}}"

A workaround is to delete last deployed archive from cockpit and redeploy, so what’s wrong?

Hi @devj87,

Please post the following:

  • the entire exception stacktrace
  • a list of all file names included in your process application

Edit: see How to format code blocks?
for a formatting help.

Cheers,
Thorben

thanks for reply @thorben!

Following stacktrace

016-11-15 10:35:53,426 ERROR [org.camunda.bpm.engine.context] (ServerService Thread Pool -- 81) ENGINE-16004 Exception while closing command context: org.apache.xerces.parsers.XIncludeAwareParserConfiguration cannot be cast to org.apache.xerces.xni.parser.XMLParserConfiguration: java.lang.ClassCastException: org.apache.xerces.parsers.XIncludeAwareParserConfiguration cannot be cast to org.apache.xerces.xni.parser.XMLParserConfiguration
    at org.apache.xerces.parsers.DOMParser.<init>(Unknown Source)
    at org.apache.xerces.parsers.DOMParser.<init>(Unknown Source)
    at org.apache.xerces.jaxp.DocumentBuilderImpl.<init>(Unknown Source)
    at org.apache.xerces.jaxp.DocumentBuilderFactoryImpl.newDocumentBuilder(Unknown Source)
    at __redirected.__DocumentBuilderFactory.newDocumentBuilder(__DocumentBuilderFactory.java:118)
    at org.camunda.bpm.model.xml.impl.util.DomUtil.parseInputStream(DomUtil.java:234)
    at org.camunda.bpm.model.xml.impl.parser.AbstractModelParser.parseModelFromStream(AbstractModelParser.java:65)
    at org.camunda.bpm.model.bpmn.impl.BpmnParser.parseModelFromStream(BpmnParser.java:61)
    at org.camunda.bpm.model.bpmn.Bpmn.doReadModelFromInputStream(Bpmn.java:235)
    at org.camunda.bpm.model.bpmn.Bpmn.readModelFromStream(Bpmn.java:126)
    at org.camunda.bpm.engine.impl.cmd.DeployCmd.retrieveProcessKeysFromResources(DeployCmd.java:596)
    at org.camunda.bpm.engine.impl.cmd.DeployCmd$1.call(DeployCmd.java:150)
    at org.camunda.bpm.engine.impl.cmd.DeployCmd$1.call(DeployCmd.java:127)
    at org.camunda.bpm.engine.impl.interceptor.CommandContext.runWithoutAuthorization(CommandContext.java:579)
    at org.camunda.bpm.engine.impl.cmd.DeployCmd.doExecute(DeployCmd.java:127)
    at org.camunda.bpm.engine.impl.cmd.DeployCmd.execute(DeployCmd.java:96)
    at org.camunda.bpm.engine.impl.cmd.DeployCmd.execute(DeployCmd.java:77)
    at org.camunda.bpm.engine.impl.interceptor.CommandExecutorImpl.execute(CommandExecutorImpl.java:24)
    at org.camunda.bpm.engine.impl.interceptor.CommandContextInterceptor.execute(CommandContextInterceptor.java:104)
    at org.camunda.bpm.engine.impl.interceptor.JtaTransactionInterceptor.execute(JtaTransactionInterceptor.java:58)
    at org.camunda.bpm.engine.impl.interceptor.ProcessApplicationContextInterceptor.execute(ProcessApplicationContextInterceptor.java:66)
    at org.camunda.bpm.engine.impl.interceptor.LogInterceptor.execute(LogInterceptor.java:30)
    at org.camunda.bpm.engine.impl.RepositoryServiceImpl.deploy(RepositoryServiceImpl.java:92)
    at org.camunda.bpm.engine.impl.repository.DeploymentBuilderImpl.deploy(DeploymentBuilderImpl.java:212)
    at org.camunda.bpm.engine.impl.repository.ProcessApplicationDeploymentBuilderImpl.deploy(ProcessApplicationDeploymentBuilderImpl.java:59)
    at org.camunda.bpm.container.impl.jboss.service.ProcessApplicationDeploymentService$3.run(ProcessApplicationDeploymentService.java:174)
    at org.camunda.bpm.container.impl.jboss.service.ProcessApplicationDeploymentService$3.run(ProcessApplicationDeploymentService.java:171)
    at org.camunda.bpm.container.impl.jboss.util.Tccl.runWithTccl(Tccl.java:53)
    at org.camunda.bpm.container.impl.jboss.util.Tccl.runUnderClassloader(Tccl.java:45)
    at org.camunda.bpm.container.impl.jboss.service.ProcessApplicationDeploymentService.performDeployment(ProcessApplicationDeploymentService.java:171)
    at org.camunda.bpm.container.impl.jboss.service.ProcessApplicationDeploymentService$1.run(ProcessApplicationDeploymentService.java:88)
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
    at org.jboss.threads.JBossThread.run(JBossThread.java:320)


2016-11-15 10:35:53,640 ERROR [org.jboss.msc.service.fail] (ServerService Thread Pool -- 81) MSC000001: Failed to start service org.camunda.bpm.platform.process-application-module.myDeploy.war".DEPLOY.myDeploy: org.jboss.msc.service.StartException in service org.camunda.bpm.platform.process-application-module."myDeploy.war".DEPLOY.myDeploy: Could not register process application with shared process engine 
    at org.camunda.bpm.container.impl.jboss.service.ProcessApplicationDeploymentService.performDeployment(ProcessApplicationDeploymentService.java:185)
    at org.camunda.bpm.container.impl.jboss.service.ProcessApplicationDeploymentService$1.run(ProcessApplicationDeploymentService.java:88)
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
    at org.jboss.threads.JBossThread.run(JBossThread.java:320)
Caused by: java.lang.ClassCastException: org.apache.xerces.parsers.XIncludeAwareParserConfiguration cannot be cast to org.apache.xerces.xni.parser.XMLParserConfiguration
    at org.apache.xerces.parsers.DOMParser.<init>(Unknown Source)
    at org.apache.xerces.parsers.DOMParser.<init>(Unknown Source)
    at org.apache.xerces.jaxp.DocumentBuilderImpl.<init>(Unknown Source)
    at org.apache.xerces.jaxp.DocumentBuilderFactoryImpl.newDocumentBuilder(Unknown Source)
    at __redirected.__DocumentBuilderFactory.newDocumentBuilder(__DocumentBuilderFactory.java:118)
    at org.camunda.bpm.model.xml.impl.util.DomUtil.parseInputStream(DomUtil.java:234)
    at org.camunda.bpm.model.xml.impl.parser.AbstractModelParser.parseModelFromStream(AbstractModelParser.java:65)
    at org.camunda.bpm.model.bpmn.impl.BpmnParser.parseModelFromStream(BpmnParser.java:61)
    at org.camunda.bpm.model.bpmn.Bpmn.doReadModelFromInputStream(Bpmn.java:235)
    at org.camunda.bpm.model.bpmn.Bpmn.readModelFromStream(Bpmn.java:126)
    at org.camunda.bpm.engine.impl.cmd.DeployCmd.retrieveProcessKeysFromResources(DeployCmd.java:596)
    at org.camunda.bpm.engine.impl.cmd.DeployCmd$1.call(DeployCmd.java:150)
    at org.camunda.bpm.engine.impl.cmd.DeployCmd$1.call(DeployCmd.java:127)
    at org.camunda.bpm.engine.impl.interceptor.CommandContext.runWithoutAuthorization(CommandContext.java:579)
    at org.camunda.bpm.engine.impl.cmd.DeployCmd.doExecute(DeployCmd.java:127)
    at org.camunda.bpm.engine.impl.cmd.DeployCmd.execute(DeployCmd.java:96)
    at org.camunda.bpm.engine.impl.cmd.DeployCmd.execute(DeployCmd.java:77)
    at org.camunda.bpm.engine.impl.interceptor.CommandExecutorImpl.execute(CommandExecutorImpl.java:24)
    at org.camunda.bpm.engine.impl.interceptor.CommandContextInterceptor.execute(CommandContextInterceptor.java:104)
    at org.camunda.bpm.engine.impl.interceptor.JtaTransactionInterceptor.execute(JtaTransactionInterceptor.java:58)
    at org.camunda.bpm.engine.impl.interceptor.ProcessApplicationContextInterceptor.execute(ProcessApplicationContextInterceptor.java:66)
    at org.camunda.bpm.engine.impl.interceptor.LogInterceptor.execute(LogInterceptor.java:30)
    at org.camunda.bpm.engine.impl.RepositoryServiceImpl.deploy(RepositoryServiceImpl.java:92)
    at org.camunda.bpm.engine.impl.repository.DeploymentBuilderImpl.deploy(DeploymentBuilderImpl.java:212)
    at org.camunda.bpm.engine.impl.repository.ProcessApplicationDeploymentBuilderImpl.deploy(ProcessApplicationDeploymentBuilderImpl.java:59)
    at org.camunda.bpm.container.impl.jboss.service.ProcessApplicationDeploymentService$3.run(ProcessApplicationDeploymentService.java:174)
    at org.camunda.bpm.container.impl.jboss.service.ProcessApplicationDeploymentService$3.run(ProcessApplicationDeploymentService.java:171)
    at org.camunda.bpm.container.impl.jboss.util.Tccl.runWithTccl(Tccl.java:53)
    at org.camunda.bpm.container.impl.jboss.util.Tccl.runUnderClassloader(Tccl.java:45)
    at org.camunda.bpm.container.impl.jboss.service.ProcessApplicationDeploymentService.performDeployment(ProcessApplicationDeploymentService.java:171)
    ... 7 more

process.xml

<?xml version="1.0" encoding="UTF-8"?>
     ...
    <process-archive name="myDeployArchive">
        <process-engine>default</process-engine>
        <properties>
            <property name="isDeleteUponUndeploy">false</property>
            <property name="isScanForProcessDefinitions">true</property>
        </properties>
    </process-archive>
 
</process-application>

application-context.xml:

     ...
    <context:annotation-config />
    <!-- bootstrap the process application -->
    <bean id="processApplication"
        class="org.camunda.bpm.engine.spring.application.SpringServletProcessApplication" />

</beans>

Thanks. Could you put the application sources (or a simplified version with which you can reproduce the problem) up on github?

Cheers,
Thorben

Sorry I can’t do it, is a more compex project and protected by policy restrictions :frowning:
But redeploying after deleting archive from cockpit or rename it before deploy it works…

What can be the problem deploying two process applications referring the same process engine?

We are having the same problem in our application. Is there a solution for this? Because, deleting archive from cockpit should not be a frequent process to be done