Issues deploying a switchyard war file containing ip.json in Fuse 6.2.1
Issue
We are deploying a war file which contains a switchyard component as well as ip.json definition file for RT-Gov. As part of the build process, we add an entry to the MANIFEST.MF file of the war with the following dependencies in pom.xml:
<manifestEntries>
<Dependencies>deployment.overlord-rtgov.war</Dependencies>
</manifestEntries>
The packaged ip.json file contains some transformer definitions such as this one:
"transformer": {
"type": "serialize"
},
But when we are deploying it seems that ip.json is not registered. We can see the activities in Kibana but we can not see the properties defined in ip.json as well as the payload.
I have created another war file which just contains the ip.json file and its dependencies are as follows:
<manifestEntries>
<Dependencies>deployment.overlord-rtgov.war export services</Dependencies>
</manifestEntries>
Once this war file is deployed, I can see the payload and properties.
But when we try to append export services
in the war file containing both switchyard.xml and ip.json, the deployment fails with the following exception
13:40:16,919 INFO [org.jboss.weld.deployer] (MSC service thread 1-12) JBAS016005: Starting Services for CDI deployment: switchyard-rtgov-sample.war
13:40:16,921 INFO [org.switchyard] (MSC service thread 1-12) Deploying SwitchYard application 'switchyard-rtgov-sample.war'
13:40:16,926 INFO [org.jboss.weld.deployer] (MSC service thread 1-5) JBAS016008: Starting weld service for deployment switchyard-rtgov-sample.war
13:40:17,149 WARN [org.jboss.as.weld] (MSC service thread 1-11) JBAS016017: Using deployment classloader to load proxy classes for module org.switchyard.component.bean:main. Package-private access will not work. To fix this the module should declare dependencies on [org.jboss.weld.core, org.javassist]
13:40:17,154 WARN [org.jboss.as.weld] (MSC service thread 1-11) JBAS016017: Using deployment classloader to load proxy classes for module org.drools:main. Package-private access will not work. To fix this the module should declare dependencies on [org.jboss.weld.core, org.javassist]
13:40:17,155 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-11) MSC000001: Failed to start service jboss.deployment.unit."switchyard-rtgov-sample.war".WeldStartService: org.jboss.msc.service.StartException in service jboss.deployment.unit."switchyard-rtgov-sample.war".WeldStartService: Failed to start service
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1936) [jboss-msc-1.1.5.Final-redhat-1.jar:1.1.5.Final-redhat-1]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_67]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_67]
at java.lang.Thread.run(Thread.java:745) [rt.jar:1.7.0_67]
Caused by: org.jboss.weld.exceptions.DefinitionException: Exception List with 1 exceptions:
Exception 0 :
java.lang.ClassCastException: org.drools.compiler.cdi.KieCDIExtension cannot be cast to org.drools.compiler.cdi.KieCDIExtension
at org.drools.compiler.cdi.KieCDIExtension$Proxy$_$$_WeldClientProxy.processInjectionTarget(KieCDIExtension$Proxy$_$$_WeldClientProxy.java)
at sun.reflect.GeneratedMethodAccessor20.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.jboss.weld.util.reflection.SecureReflections$13.work(SecureReflections.java:267)
at org.jboss.weld.util.reflection.SecureReflectionAccess.run(SecureReflectionAccess.java:52)
at org.jboss.weld.util.reflection.SecureReflectionAccess.runAsInvocation(SecureReflectionAccess.java:137)
at org.jboss.weld.util.reflection.SecureReflections.invoke(SecureReflections.java:263)
at org.jboss.weld.introspector.jlr.WeldMethodImpl.invokeOnInstance(WeldMethodImpl.java:164)
at org.jboss.weld.introspector.ForwardingWeldMethod.invokeOnInstance(ForwardingWeldMethod.java:51)
at org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstanceWithSpecialValue(MethodInjectionPoint.java:154)
at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:245)
at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:233)
at org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:213)
at org.jboss.weld.event.ObserverNotifier.notifyObserver(ObserverNotifier.java:117)
at org.jboss.weld.event.TransactionalObserverNotifier.notifyObserver(TransactionalObserverNotifier.java:44)
at org.jboss.weld.event.ObserverNotifier.notifyObservers(ObserverNotifier.java:85)
at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:75)
at org.jboss.weld.bootstrap.events.AbstractContainerEvent.fire(AbstractContainerEvent.java:60)
at org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:38)
at org.jboss.weld.bootstrap.events.AbstractProcessInjectionTarget.fire(AbstractProcessInjectionTarget.java:32)
at org.jboss.weld.bootstrap.AbstractBeanDeployer.deploy(AbstractBeanDeployer.java:122)
at org.jboss.weld.bootstrap.BeanDeployment.deployBeans(BeanDeployment.java:217)
at org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:357)
at org.jboss.as.weld.WeldStartService.start(WeldStartService.java:63)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1980)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1913)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
at org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:40)
at org.jboss.weld.bootstrap.events.AbstractProcessInjectionTarget.fire(AbstractProcessInjectionTarget.java:32)
at org.jboss.weld.bootstrap.AbstractBeanDeployer.deploy(AbstractBeanDeployer.java:122)
at org.jboss.weld.bootstrap.BeanDeployment.deployBeans(BeanDeployment.java:217)
at org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:357)
at org.jboss.as.weld.WeldStartService.start(WeldStartService.java:63)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1980) [jboss-msc-1.1.5.Final-redhat-1.jar:1.1.5.Final-redhat-1]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1913) [jboss-msc-1.1.5.Final-redhat-1.jar:1.1.5.Final-redhat-1]
... 3 more
Environment
- Red Hat JBoss Fuse (on EAP)
- 6.2.1
- Installed components:
- RT-Gov
- Integration package
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.