Hello,

I want to use Camel 2.18.3 on WildFly-10.1.0.Final. My desired setup
is as follow:
- to use camel-cdi features
- to deploy camel and all third party dependencies as WildFly modules
- to deploy my application as war on WildFly with all internal
dependencies as jars in web-inf/lib
- I do not want to use WilfFly Camel Subsystem from
https://github.com/wildfly-extras/wildfly-camel

I have deployed camel as module by looking at WildFly Camel Subsystem
(wildfly-camel-patch-4.6.0). I took all content starting from
modules/system/layers/fuse/org/apache/camel and put it into my Wildfly
installation into modules/system/layers/base/org/apache/camel.

I have created some routes and processors. Everything went fine untill
moment when I modified my processor to trigger one of my services
which are using Deltaspike data module functionality. I got this log
output:

17:27:52,280 INFO
[com.mvneco.tebio.batch.common.BatchCamelContextProducer] (MSC service
thread 1-5) CamelContext configured: batch-camel-context
17:27:52,297 INFO  [com.mvneco.tebio.batch.simple.MySimpleProcessor]
(MSC service thread 1-5) Processor constructed: MySimpleProcessor
17:27:52,335 INFO  [com.mvneco.tebio.batch.simple.MySimpleRoute] (MSC
service thread 1-5) Route configured: MySimpleRoute
17:27:52,341 INFO  [org.apache.camel.cdi.CdiCamelExtension] (MSC
service thread 1-5) Camel CDI is starting Camel context
[batch-camel-context]
17:27:52,342 INFO  [org.apache.camel.impl.DefaultCamelContext] (MSC
service thread 1-5) Apache Camel 2.18.3 (CamelContext:
batch-camel-context) is starting
17:27:52,344 INFO
[org.apache.camel.management.ManagedManagementStrategy] (MSC service
thread 1-5) JMX is enabled
17:27:52,455 INFO
[org.apache.camel.impl.converter.DefaultTypeConverter] (MSC service
thread 1-5) Loaded 189 type converters
17:27:52,493 INFO
[org.apache.camel.impl.DefaultRuntimeEndpointRegistry] (MSC service
thread 1-5) Runtime endpoint registry is in extended mode gathering
usage statistics of all incoming and outgoing endpoints (cache limit:
1000)
17:27:52,498 WARN  [org.jboss.as.weld] (MSC service thread 1-5)
WFLYWELD0052: Using deployment classloader to load proxy classes for
module org.apache.camel.core:main. Package-private access will not
work. To fix this the module should declare dependencies on
[org.jboss.weld.core, org.jboss.weld.spi]
17:27:52,630 INFO  [org.apache.camel.impl.DefaultCamelContext] (MSC
service thread 1-5) StreamCaching is not in use. If using streams then
its recommended to enable stream caching. See more details at
http://camel.apache.org/stream-caching.html
17:27:52,693 INFO  [org.apache.camel.impl.DefaultCamelContext] (MSC
service thread 1-5) Route: MySimpleRoute started and consuming from:
file://c:/test-folder?move=.done&moveFailed=.error
17:27:52,694 INFO  [org.apache.camel.impl.DefaultCamelContext] (MSC
service thread 1-5) Total 1 routes, of which 1 are started.
17:27:52,695 INFO  [org.apache.camel.impl.DefaultCamelContext] (MSC
service thread 1-5) Apache Camel 2.18.3 (CamelContext:
batch-camel-context) started in 0.351 seconds
17:27:52,968 INFO  [org.wildfly.extension.undertow] (ServerService
Thread Pool -- 59) WFLYUT0021: Registered web context: /tebio-batch
17:27:53,013 INFO  [org.jboss.as.server] (ServerService Thread Pool --
34) WFLYSRV0010: Deployed "tebio-batch.war" (runtime-name :
"tebio-batch.war")
17:27:53,164 INFO  [org.jboss.as] (Controller Boot Thread)
WFLYSRV0060: Http management interface listening on
http://127.0.0.1:9990/management
17:27:53,165 INFO  [org.jboss.as] (Controller Boot Thread)
WFLYSRV0051: Admin console listening on http://127.0.0.1:9990
17:27:53,165 INFO  [org.jboss.as] (Controller Boot Thread)
WFLYSRV0025: WildFly Full 10.1.0.Final (WildFly Core 2.2.0.Final)
started in 17385ms - Started 465 of 713 services (409 services are
lazy, passive or on-demand)
17:28:14,328 WARN
[org.apache.camel.component.file.GenericFileOnCompletion] (Camel
(batch-camel-context) thread #0 - file://c:/test-folder) Rollback file
strategy: 
org.apache.camel.component.file.strategy.GenericFileRenameProcessStrategy@77ab824b
for file: GenericFile[c:\test-folder\test1.txt]
17:28:14,337 ERROR [com.mvneco.tebio.batch] (Camel
(batch-camel-context) thread #0 - file://c:/test-folder) Failed
delivery for (MessageId: ID-dkozic-PC-58228-1493825271666-0-1 on
ExchangeId: ID-dkozic-PC-58228-1493825271666-0-2). Exhausted after
delivery attempt: 1 caught: java.lang.IllegalStateException: Could not
find beans for Type=class
org.apache.deltaspike.data.impl.handler.QueryHandler

Message History
---------------------------------------------------------------------------------------------------------------------------------------
RouteId              ProcessorId          Processor
                                                    Elapsed (ms)
[MySimpleRoute     ] [MySimpleRoute     ]
[file://c:/test-folder?move=.done&moveFailed=.error
        ] [        33]
[MySimpleRoute     ] [MySimpleProcessor ] [Processor@0x60f6861a
                                                  ] [        20]

Stacktrace
---------------------------------------------------------------------------------------------------------------------------------------:
java.lang.IllegalStateException: Could not find beans for Type=class
org.apache.deltaspike.data.impl.handler.QueryHandler
        at 
org.apache.deltaspike.core.api.provider.BeanProvider.getBeanDefinitions(BeanProvider.java:415)
        at 
org.apache.deltaspike.core.api.provider.BeanProvider.getBeanDefinitions(BeanProvider.java:398)
        at 
org.apache.deltaspike.proxy.api.DeltaSpikeProxyContextualLifecycle.instantiateDelegateInvocationHandler(DeltaSpikeProxyContextualLifecycle.java:124)
        at 
org.apache.deltaspike.proxy.api.DeltaSpikeProxyContextualLifecycle.create(DeltaSpikeProxyContextualLifecycle.java:84)
        at 
org.apache.deltaspike.core.util.bean.ImmutableBean.create(ImmutableBean.java:72)
        at 
org.jboss.weld.context.unbound.DependentContextImpl.get(DependentContextImpl.java:70)
        at 
org.jboss.weld.bean.ContextualInstanceStrategy$DefaultContextualInstanceStrategy.get(ContextualInstanceStrategy.java:101)
        at 
org.jboss.weld.bean.ContextualInstance.get(ContextualInstance.java:50)
        at 
org.jboss.weld.manager.BeanManagerImpl.getReference(BeanManagerImpl.java:742)
        at 
org.jboss.weld.manager.BeanManagerImpl.getInjectableReference(BeanManagerImpl.java:842)
        at 
org.jboss.weld.injection.FieldInjectionPoint.inject(FieldInjectionPoint.java:92)
        at org.jboss.weld.util.Beans.injectBoundFields(Beans.java:364)
        at org.jboss.weld.util.Beans.injectFieldsAndInitializers(Beans.java:375)
        at 
org.jboss.weld.injection.producer.ResourceInjector$1.proceed(ResourceInjector.java:70)
        at 
org.jboss.weld.injection.InjectionContextImpl.run(InjectionContextImpl.java:48)
        at 
org.jboss.weld.injection.producer.ResourceInjector.inject(ResourceInjector.java:72)
        at 
org.jboss.weld.injection.producer.BasicInjectionTarget.inject(BasicInjectionTarget.java:121)
        at org.jboss.weld.bean.ManagedBean.create(ManagedBean.java:159)
        at org.jboss.weld.context.AbstractContext.get(AbstractContext.java:96)
        at 
org.jboss.weld.bean.ContextualInstanceStrategy$DefaultContextualInstanceStrategy.get(ContextualInstanceStrategy.java:101)
        at 
org.jboss.weld.bean.ContextualInstanceStrategy$ApplicationScopedContextualInstanceStrategy.get(ContextualInstanceStrategy.java:141)
        at 
org.jboss.weld.bean.ContextualInstance.get(ContextualInstance.java:50)
        at 
org.jboss.weld.bean.proxy.ContextBeanInstance.getInstance(ContextBeanInstance.java:99)
        at 
org.jboss.weld.bean.proxy.ProxyMethodHandler.getInstance(ProxyMethodHandler.java:125)
        at 
com.mvneco.ecofin.service.FinAccountServiceBean$Proxy$_$$_WeldClientProxy.getOptionalFinAccount(Unknown
Source)
        at 
com.mvneco.tebio.batch.simple.MySimpleProcessor.process(MySimpleProcessor.java:37)
        at 
org.apache.camel.processor.DelegateSyncProcessor.process(DelegateSyncProcessor.java:63)
        at 
org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:77)
        at 
org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:542)
        at 
org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:197)
        at 
org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:197)
        at 
org.apache.camel.component.file.GenericFileConsumer.processExchange(GenericFileConsumer.java:460)
        at 
org.apache.camel.component.file.GenericFileConsumer.processBatch(GenericFileConsumer.java:227)
        at 
org.apache.camel.component.file.GenericFileConsumer.poll(GenericFileConsumer.java:191)
        at 
org.apache.camel.impl.ScheduledPollConsumer.doRun(ScheduledPollConsumer.java:175)
        at 
org.apache.camel.impl.ScheduledPollConsumer.run(ScheduledPollConsumer.java:102)
        at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
        at 
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
        at 
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)

I have to mention that my tests passes (@RunWith(CamelCdiRunner.class)).

My src/main/webapp/META-INF/jboss-deployment-structure.xml is like this:

<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.0">
        <deployment>
                <dependencies>
                        <module name="org.apache.deltaspike.core"
services="export" />
                        <module name="org.apache.deltaspike.modules"
services="export" />
                        <module name="org.apache.commons.lang3" />

                        <module name="org.apache.camel.core"
export="true" services="export" />
                        <module name="org.apache.camel.component.ftp"
export="true" services="export" />
                        <module name="org.apache.camel.component.cdi"
export="true" services="export" />

                </dependencies>
        </deployment>
</jboss-deployment-structure>

Every of jars declared as dependency in pom.xml have beans.xml. I have
tried different wildfly module configurations without success.

Any help is appreciated.


Drazen Kozic

Reply via email to