简体   繁体   English

JBoss Fuse/REST DSL - 为什么我的修改(使用 IBM MQ)不起作用?

[英]JBoss Fuse/REST DSL - Why do my modifications (to use IBM MQ) not work?

BACKGROUND: I assembled a "relatively" compact JBossFuse, REST-DSL example (from disparate posts/articles) that routes to an ActiveMQ queue (see working example, further below).背景:我组装了一个“相对”紧凑的 JBossFuse、REST-DSL 示例(来自不同的帖子/文章),它路由到一个 ActiveMQ 队列(参见下面的工作示例)。

PROBLEM: I want to route to an "IBM MQ" queue, instead.问题:我想路由到“IBM MQ”队列。

QUESTION: What has to change for me to route to "IBM MQ" instead of "ActiveMQ"?问题:要路由到“IBM MQ”而不是“ActiveMQ”,我需要做哪些更改?


I've tried the following...:我尝试了以下...:

(A) building an IBM MQ "support bundle" and deploying it to Fuse and adding the dep. (A) 构建 IBM MQ“支持包”并将其部署到 Fuse 并添加 dep。 to the app's pom.xml到应用程序的 pom.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>
        <groupId>com.ibm</groupId>
        <artifactId>ibm-mq-lib</artifactId>
        <version>9.0.0.0</version>
        <description>ibm-mq-lib</description>
        <packaging>bundle</packaging>

        <dependencies>
        <dependency>
            <groupId>com.ibm.mq.osgi</groupId>
            <artifactId>allclient</artifactId>
            <version>9.0.0.0</version>
            <systemPath>C:/tools/wmq/OSGi/com.ibm.mq.osgi.allclient_9.0.0.0.jar</systemPath>  
            <scope>system</scope>          
        </dependency>
        <dependency>
            <groupId>com.ibm.mq.osgi</groupId>        
            <artifactId>allclientprereqs</artifactId>
            <version>9.0.0.0</version>
            <systemPath>C:/tools/wmq/OSGi/com.ibm.mq.osgi.allclientprereqs_9.0.0.0.jar</systemPath>
            <scope>system</scope>             
        </dependency>
        <dependency>
            <groupId>com.ibm.mq</groupId>          
            <artifactId>allclient</artifactId>
            <version>9.0.0.0</version>
            <systemPath>C:/tools/wmq/JavaSE/com.ibm.mq.allclient.jar</systemPath>
            <scope>system</scope>             
        </dependency>  
        <dependency>
            <groupId>com.ibm.mq</groupId>        
            <artifactId>traceControl</artifactId>
            <version>9.0.0.0</version>
            <systemPath>C:/tools/wmq/JavaSE/com.ibm.mq.traceControl.jar</systemPath>
            <scope>system</scope>             
        </dependency>                     
        <dependency>
            <groupId>com.ibm.mq</groupId>       
            <artifactId>fscontext</artifactId>
            <version>9.0.0.0</version>
            <systemPath>C:/tools/wmq/JavaSE/fscontext.jar</systemPath>
            <scope>system</scope>             
        </dependency>             
        <dependency>
            <groupId>com.ibm.mq</groupId>       
            <artifactId>jms</artifactId>
            <version>9.0.0.0</version>
            <systemPath>C:/tools/wmq/JavaSE/jms.jar</systemPath>
            <scope>system</scope>             
        </dependency>         
        <dependency>
            <groupId>com.ibm.mq</groupId>        
            <artifactId>providerutil</artifactId>
            <version>9.0.0.0</version>
            <systemPath>C:/tools/wmq/JavaSE/providerutil.jar</systemPath>
            <scope>system</scope>             
        </dependency>                 
        </dependencies>
        <build>
        <plugins>
            <plugin>
            <groupId>org.apache.felix</groupId>
            <artifactId>maven-bundle-plugin</artifactId>
            <version>3.3.0</version>
            <extensions>true</extensions>
            <configuration>
                <instructions>
                <Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName>
                <Bundle-Name>${project.artifactId}</Bundle-Name>
                <Bundle-Description>description</Bundle-Description>
                <Bundle-Vendor>IBM MQ 9.0.0.0</Bundle-Vendor>
                <Import-Package></Import-Package>
                <Export-Package>*</Export-Package>
                <DynamicImport-Package>*</DynamicImport-Package>
                </instructions>
            </configuration>
            </plugin>
        </plugins>
        </build>
        <name>ibm-mq-lib</name>
    </project>

(B) modified the "camel-route.xml" file (added the following) (B) 修改了“camel-route.xml”文件(添加了以下内容)

        ...

        <bean id="connectionFactory"
          class="com.ibm.mq.jms.MQConnectionFactory">
        <property name="transportType" value="1"/>
        <property name="hostName" value="localhost"/>
        <property name="port" value="1414"/>
        <property name="queueManager" value="QM1"/>
        <property name="channel" value="DEV.APP.SVRCONN" />    
        </bean>    
        <bean id="ibmMqConfig" class="org.apache.camel.component.jms.JmsConfiguration">
        <property name="connectionFactory" ref="connectionFactory"/>
        <property name="concurrentConsumers" value="10"/>    
        </bean>
        <bean id="ibmMq" 
          class="org.apache.camel.component.jms.JmsComponent">
        <property name="configuration" ref="ibmMqConfig"/>         
        </bean>
    </blueprint>

(C) modified "CamelRestRoutes.java" file to point to the IBM MQ queue (instead of the ActiveMQ queue)... (C) 修改“CamelRestRoutes.java”文件指向IBM MQ 队列(而不是ActiveMQ 队列)...

    ...
    from("direct:thingZ")
            .log("---------------------- (CCC) ----------------------> direct:thingZ...:" + body().toString())
            .to("ibmMq:queue:bubblegum?jmsMessageType=Text&exchangePattern=InOnly");  

Call the "getAll" method in the REST service results in an exception with the following log/exception output调用 REST 服务中的“getAll”方法导致异常,日志/异常输出如下

    ...
                   WorkQueueMananger Contents
                   --------------------------

    |   Maintain ThreadPool size     :-  false
    |   Maximum ThreadPool size      :-  -1
    |   ThreadPool inactive timeout  :-  0
    |   unavailable -                :-  com.ibm.msg.client.commonservices.CSIException: JMSCS0002

                       Runtime properties
                       ------------------

    |   Available processors         :-  4
    |   Free memory in bytes (now)   :-  737153288
    |   Max memory in bytes          :-  954728448
    |   Total memory in bytes (now)  :-  875036672

                   Component Manager Contents
                   --------------------------

    Common Services Components:
    Messaging Provider Components:
    |   CMVC             :-  p900-L160512.4
    |   Class Name       :-  class com.ibm.msg.client.wmq.factories.WMQComponent
    |   Component Name   :-  com.ibm.msg.client.wmq
    |   Component Title  :-  IBM MQ JMS Provider
    |   Factory Class    :-  class com.ibm.msg.client.wmq.factories.WMQFactoryFactory
    |   Jar location     :-  bundle://530.0:1/com/ibm/msg/client/wmq/factories/WMQComponent.class
    |   Version          :-  9.0.0.0




                 Provider Specific Information
                 -----------------------------

    Overview of JMS System
    Num. Contexts    : 0
    Num. Connections : 0
    Num. Sessions    : 0
    Num. Consumers   : 0
    Num. Producers   : 0

    Detailed JMS System Information
    Contexts      :
    Connections      :
    Sessions         :
    Consumers        :
    Producers        :


    2017-08-08 09:44:57,407 | ERROR | estlet-672518929 | DefaultErrorHandler              | 232 - org.apache.camel.camel-core - 2.17.0.redhat-630187 | Failed delivery for (MessageId: ID-AAXA22A747-53217-1502199741603-0-3 on ExchangeId: ID-AAXA22A747-53217-1502199741603-0-2). Exhausted after delivery attempt: 1 caught: org.springframework.jms.UncategorizedJmsException: Uncategorized exception occured during JMS processing; nested exception is com.ibm.msg.client.jms.DetailedJMSException: JMSWMQ0018: null; nested exception is com.ibm.mq.MQException: JMSCMQ0001: JMSCMQ0001, 2, MQCC_FAILED, 2195, MQRC_UNEXPECTED_ERROR

    Message History
    ---------------------------------------------------------------------------------------------------------------------------------------
    RouteId              ProcessorId          Processor                                                                        Elapsed (ms)
    [route1            ] [route1            ] [http://localhost:8182/service/getAll?restletMethods=GET                       ] [      4126]
    [route1            ] [restBinding1      ] [                                                                              ] [         4]
    [route1            ] [route1            ] [direct:thingX                                                                 ] [      4119]
    [route2            ] [to1               ] [bean:camelRestService?method=getAll                                           ] [         7]
    [route2            ] [log1              ] [log                                                                           ] [         1]
    [route2            ] [to2               ] [direct:thingY                                                                 ] [      4110]
    [route3            ] [log2              ] [log                                                                           ] [         1]
    [route3            ] [to3               ] [direct:thingZ                                                                 ] [      4109]
    [route4            ] [log3              ] [log                                                                           ] [         0]
    [route4            ] [to4               ] [ibmMq:queue:mylocalqueue?jmsMessageType=Text&exchangePattern=InOnly           ] [      4109]

    Stacktrace
    ---------------------------------------------------------------------------------------------------------------------------------------
    org.springframework.jms.UncategorizedJmsException: Uncategorized exception occured during JMS processing; nested exception is com.ibm.msg.client.jms.DetailedJMSException: JMSWMQ0018: null; nested exception is com.ibm.mq.MQException: JMSCMQ0001: JMSCMQ0001, 2, MQCC_FAILED, 2195, MQRC_UNEXPECTED_ERROR
        at org.springframework.jms.support.JmsUtils.convertJmsAccessException(JmsUtils.java:316)[243:org.apache.servicemix.bundles.spring-jms:3.2.16.RELEASE_2]
        at org.springframework.jms.support.JmsAccessor.convertJmsAccessException(JmsAccessor.java:168)[243:org.apache.servicemix.bundles.spring-jms:3.2.16.RELEASE_2]
        at org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:469)[243:org.apache.servicemix.bundles.spring-jms:3.2.16.RELEASE_2]
        at org.apache.camel.component.jms.JmsConfiguration$CamelJmsTemplate.send(JmsConfiguration.java:452)[244:org.apache.camel.camel-jms:2.17.0.redhat-630187]
        at org.apache.camel.component.jms.JmsProducer.doSend(JmsProducer.java:414)[244:org.apache.camel.camel-jms:2.17.0.redhat-630187]
        at org.apache.camel.component.jms.JmsProducer.processInOnly(JmsProducer.java:368)[244:org.apache.camel.camel-jms:2.17.0.redhat-630187]
        at org.apache.camel.component.jms.JmsProducer.process(JmsProducer.java:154)[244:org.apache.camel.camel-jms:2.17.0.redhat-630187]
        at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:145)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:77)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:468)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:196)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.processor.Pipeline.process(Pipeline.java:121)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.processor.Pipeline.process(Pipeline.java:83)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:196)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.component.direct.DirectProducer.process(DirectProducer.java:62)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:145)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:77)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:468)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:196)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.processor.Pipeline.process(Pipeline.java:121)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.processor.Pipeline.process(Pipeline.java:83)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:196)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.component.direct.DirectProducer.process(DirectProducer.java:62)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:145)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:77)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:468)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:196)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.processor.Pipeline.process(Pipeline.java:121)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.processor.Pipeline.process(Pipeline.java:83)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:196)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.component.direct.DirectProducer.process(DirectProducer.java:62)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:145)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:77)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:468)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:196)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.processor.Pipeline.process(Pipeline.java:121)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.processor.Pipeline.process(Pipeline.java:83)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:196)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:109)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:91)[232:org.apache.camel.camel-core:2.17.0.redhat-630187]
        at org.apache.camel.component.restlet.RestletConsumer$1.handle(RestletConsumer.java:68)[304:org.apache.camel.camel-restlet:2.17.0.redhat-630187]
        at org.apache.camel.component.restlet.MethodBasedRouter.handle(MethodBasedRouter.java:54)[304:org.apache.camel.camel-restlet:2.17.0.redhat-630187]
        at org.restlet.routing.Filter.doHandle(Filter.java:150)[303:org.restlet:2.3.6.v20160126-1627]
        at org.restlet.routing.Filter.handle(Filter.java:197)[303:org.restlet:2.3.6.v20160126-1627]
        at org.restlet.routing.Router.doHandle(Router.java:422)[303:org.restlet:2.3.6.v20160126-1627]
        at org.restlet.routing.Router.handle(Router.java:639)[303:org.restlet:2.3.6.v20160126-1627]
        at org.restlet.routing.Filter.doHandle(Filter.java:150)[303:org.restlet:2.3.6.v20160126-1627]
        at org.restlet.routing.Filter.handle(Filter.java:197)[303:org.restlet:2.3.6.v20160126-1627]
        at org.restlet.routing.Router.doHandle(Router.java:422)[303:org.restlet:2.3.6.v20160126-1627]
        at org.restlet.routing.Router.handle(Router.java:639)[303:org.restlet:2.3.6.v20160126-1627]
        at org.restlet.routing.Filter.doHandle(Filter.java:150)[303:org.restlet:2.3.6.v20160126-1627]
        at org.restlet.engine.application.StatusFilter.doHandle(StatusFilter.java:140)[303:org.restlet:2.3.6.v20160126-1627]
        at org.restlet.routing.Filter.handle(Filter.java:197)[303:org.restlet:2.3.6.v20160126-1627]
        at org.restlet.routing.Filter.doHandle(Filter.java:150)[303:org.restlet:2.3.6.v20160126-1627]
        at org.restlet.routing.Filter.handle(Filter.java:197)[303:org.restlet:2.3.6.v20160126-1627]
        at org.restlet.engine.CompositeHelper.handle(CompositeHelper.java:202)[303:org.restlet:2.3.6.v20160126-1627]
        at org.restlet.Component.handle(Component.java:408)[303:org.restlet:2.3.6.v20160126-1627]
        at org.restlet.Server.handle(Server.java:507)[303:org.restlet:2.3.6.v20160126-1627]
        at org.restlet.engine.connector.ServerHelper.handle(ServerHelper.java:63)[303:org.restlet:2.3.6.v20160126-1627]
        at org.restlet.engine.adapter.HttpServerHelper.handle(HttpServerHelper.java:143)[303:org.restlet:2.3.6.v20160126-1627]
        at org.restlet.engine.connector.HttpServerHelper$1.handle(HttpServerHelper.java:64)[303:org.restlet:2.3.6.v20160126-1627]
        at com.sun.net.httpserver.Filter$Chain.doFilter(Filter.java:79)[:1.8.0_131]
        at sun.net.httpserver.AuthFilter.doFilter(AuthFilter.java:83)[:1.8.0_131]
        at com.sun.net.httpserver.Filter$Chain.doFilter(Filter.java:82)[:1.8.0_131]
        at sun.net.httpserver.ServerImpl$Exchange$LinkHandler.handle(ServerImpl.java:675)[:1.8.0_131]
        at com.sun.net.httpserver.Filter$Chain.doFilter(Filter.java:79)[:1.8.0_131]
        at sun.net.httpserver.ServerImpl$Exchange.run(ServerImpl.java:647)[:1.8.0_131]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)[:1.8.0_131]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)[:1.8.0_131]
        at java.lang.Thread.run(Thread.java:748)[:1.8.0_131]
    Caused by: com.ibm.msg.client.jms.DetailedJMSException: JMSWMQ0018: null
        at com.ibm.msg.client.wmq.common.internal.Reason.reasonToException(Reason.java:595)[530:com.ibm.mq.osgi.allclient:9.0.0.0]
        at com.ibm.msg.client.wmq.common.internal.Reason.createException(Reason.java:215)[530:com.ibm.mq.osgi.allclient:9.0.0.0]
        at com.ibm.msg.client.wmq.internal.WMQConnection.<init>(WMQConnection.java:422)[530:com.ibm.mq.osgi.allclient:9.0.0.0]
        at com.ibm.msg.client.wmq.factories.WMQConnectionFactory.createV7ProviderConnection(WMQConnectionFactory.java:8475)[530:com.ibm.mq.osgi.allclient:9.0.0.0]
        at com.ibm.msg.client.wmq.factories.WMQConnectionFactory.createProviderConnection(WMQConnectionFactory.java:7814)[530:com.ibm.mq.osgi.allclient:9.0.0.0]
        at com.ibm.msg.client.jms.admin.JmsConnectionFactoryImpl._createConnection(JmsConnectionFactoryImpl.java:299)[530:com.ibm.mq.osgi.allclient:9.0.0.0]
        at com.ibm.msg.client.jms.admin.JmsConnectionFactoryImpl.createConnection(JmsConnectionFactoryImpl.java:236)[530:com.ibm.mq.osgi.allclient:9.0.0.0]
        at com.ibm.mq.jms.MQConnectionFactory.createCommonConnection(MQConnectionFactory.java:6024)[530:com.ibm.mq.osgi.allclient:9.0.0.0]
        at com.ibm.mq.jms.MQConnectionFactory.createConnection(MQConnectionFactory.java:6049)[530:com.ibm.mq.osgi.allclient:9.0.0.0]
        at org.springframework.jms.support.JmsAccessor.createConnection(JmsAccessor.java:184)[243:org.apache.servicemix.bundles.spring-jms:3.2.16.RELEASE_2]
        at org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:456)[243:org.apache.servicemix.bundles.spring-jms:3.2.16.RELEASE_2]
        ... 67 more
    Caused by: com.ibm.mq.MQException: JMSCMQ0001: JMSCMQ0001, 2, MQCC_FAILED, 2195, MQRC_UNEXPECTED_ERROR
        at com.ibm.msg.client.wmq.common.internal.Reason.createException(Reason.java:203)[530:com.ibm.mq.osgi.allclient:9.0.0.0]
        ... 76 more
    Caused by: com.ibm.mq.jmqi.JmqiException: CC=2;RC=2195;AMQ9204: Connection to host 'localhost(1414)' rejected. [1=com.ibm.mq.jmqi.JmqiException[CC=2;RC=2195],3=localhost(1414),5=JmqiDefaultThreadPool.enqueue]
        at com.ibm.mq.jmqi.remote.api.RemoteFAP.jmqiConnect(RemoteFAP.java:2280)[530:com.ibm.mq.osgi.allclient:9.0.0.0]
        at com.ibm.mq.jmqi.remote.api.RemoteFAP.jmqiConnect(RemoteFAP.java:1285)[530:com.ibm.mq.osgi.allclient:9.0.0.0]
        at com.ibm.msg.client.wmq.internal.WMQConnection.<init>(WMQConnection.java:355)[530:com.ibm.mq.osgi.allclient:9.0.0.0]
        ... 75 more
    Caused by: com.ibm.mq.jmqi.JmqiException: CC=2;RC=2195
        at com.ibm.mq.jmqi.JmqiDefaultThreadPool.enqueue(JmqiDefaultThreadPool.java:97)[530:com.ibm.mq.osgi.allclient:9.0.0.0]
        at com.ibm.mq.jmqi.remote.impl.RemoteConnection.setUpAsyncMode(RemoteConnection.java:1979)[530:com.ibm.mq.osgi.allclient:9.0.0.0]
        at com.ibm.mq.jmqi.remote.impl.RemoteConnection.initSess(RemoteConnection.java:1741)[530:com.ibm.mq.osgi.allclient:9.0.0.0]
        at com.ibm.mq.jmqi.remote.impl.RemoteConnection.connect(RemoteConnection.java:863)[530:com.ibm.mq.osgi.allclient:9.0.0.0]
        at com.ibm.mq.jmqi.remote.impl.RemoteConnectionSpecification.getSessionFromNewConnection(RemoteConnectionSpecification.java:409)[530:com.ibm.mq.osgi.allclient:9.0.0.0]
        at com.ibm.mq.jmqi.remote.impl.RemoteConnectionSpecification.getSession(RemoteConnectionSpecification.java:305)[530:com.ibm.mq.osgi.allclient:9.0.0.0]
        at com.ibm.mq.jmqi.remote.impl.RemoteConnectionPool.getSession(RemoteConnectionPool.java:146)[530:com.ibm.mq.osgi.allclient:9.0.0.0]
        at com.ibm.mq.jmqi.remote.api.RemoteFAP.jmqiConnect(RemoteFAP.java:1721)[530:com.ibm.mq.osgi.allclient:9.0.0.0]
        ... 77 more
    Caused by: com.ibm.msg.client.commonservices.CSIException: JMSCS0002
        at com.ibm.msg.client.commonservices.workqueue.PIWorkQueueManager.enqueueItem(PIWorkQueueManager.java:55)[530:com.ibm.mq.osgi.allclient:9.0.0.0]
        at com.ibm.msg.client.commonservices.workqueue.WorkQueueManager.enqueue(WorkQueueManager.java:232)[530:com.ibm.mq.osgi.allclient:9.0.0.0]
        at com.ibm.msg.client.commonservices.workqueue.WorkQueueManager.enqueue(WorkQueueManager.java:200)[530:com.ibm.mq.osgi.allclient:9.0.0.0]
        at com.ibm.mq.jmqi.JmqiDefaultThreadPool.enqueue(JmqiDefaultThreadPool.java:79)[530:com.ibm.mq.osgi.allclient:9.0.0.0]
        ... 84 more
    2017-08-08 09:44:57,429 | INFO  | estlet-672518929 | LogService                       | 303 - org.restlet - 2.3.6.v20160126-1627 | 2017-08-08   09:44:57        0:0:0:0:0:0:0:1 -       -       8182    GET     /service/getAll/        -       500     8856    0       4140    http://localhost:8182   Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:55.0) Gecko/20100101 Firefox/55.0  -

For comparison/context, BELOW, is the working project that routes to an ActiveMQ queue...为了比较/上下文,下面是路由到 ActiveMQ 队列的工作项目......

Here is the project structure这是项目结构

camelRest 项目结构

aaa.bbb.ccc.CamelRestService.java aaa.bbb.ccc.CamelRestService.java

package aaa.bbb.ccc;

import aaa.bbb.ccc.model.CamelRestPojo;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import javax.ws.rs.core.MediaType;

@Path("/service/")
public class CamelRestService {
    Map<Long, CamelRestPojo> itemMap = new HashMap<>();
    public CamelRestService() {
    init();
    }
    @GET
    @Produces({MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML})  
    @Path("/getAll/")
    public Collection<CamelRestPojo> getAll() {
    return itemMap.values();
    }

    final void init() {
    CamelRestPojo o = new CamelRestPojo();
    o.setName("JOE BLOW");
    o.setId(100);
    itemMap.put(o.getId(), o);
    }
}

aaa.bbb.ccc.CamelRestRoute.java aaa.bbb.ccc.CamelRestRoute.java

package aaa.bbb.ccc;

import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.model.rest.RestBindingMode;

public class CamelRestRoutes extends RouteBuilder {

    public CamelRestRoutes() {
    }

    @Override
    public void configure() throws Exception {
    restConfiguration().component("restlet")
        .host("localhost")
        .port(8182)
        .bindingMode(RestBindingMode.json_xml);

    rest("/service")
        .bindingMode(RestBindingMode.json_xml)
        .get("/getAll")
        .produces("application/json")
        .to("direct:thingX");

    from("direct:thingX")
        .to("bean:camelRestService?method=getAll")
        .log("---------------------- (AAA) ----------------------> direct:thingX...:" + body().toString())
        .to("direct:thingY");

    from("direct:thingY")
        .log("---------------------- (BBB) ----------------------> direct:thingY...:" + body().toString())
        .to("direct:thingZ");
    from("direct:thingZ")
        .log("---------------------- (CCC) ----------------------> direct:thingZ...:" + body().toString())
        .to("activemq:queue:bubblegum?jmsMessageType=Text&exchangePattern=InOnly");
    }
}

aaa.bbb.ccc.model.CamelRestPojo.java aaa.bbb.ccc.model.CamelRestPojo.java

package aaa.bbb.ccc.model;

import java.io.Serializable;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
@XmlRootElement(name = "camelRestPojo")
public class CamelRestPojo implements Serializable {
    @XmlElement
    private long id;
    @XmlElement
    private String name;
    public long getId() {
    return id;
    }
    public void setId(long id) {
    this.id = id;
    }
    public String getName() {
    return name;
    }
    public void setName(String name) {
    this.name = name;
    }
    @Override
    public String toString() {
    return "CamelRestPojo{" + "id=" + id + ", name=" + name + '}';
    }
}

camel-route.xml骆驼路线.xml

<?xml version="1.0" encoding="UTF-8"?>
<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:cm="http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.0.0"
       xmlns:jaxrs="http://cxf.apache.org/blueprint/jaxrs"
       xmlns:camel="http://camel.apache.org/schema/blueprint"
       xsi:schemaLocation="
         http://www.osgi.org/xmlns/blueprint/v1.0.0 http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd
         http://cxf.apache.org/blueprint/jaxrs http://cxf.apache.org/schemas/blueprint/jaxrs.xsd
         http://cxf.apache.org/blueprint/core http://cxf.apache.org/schemas/blueprint/core.xsd
         ">
    <camel:camelContext id="aaa.bbb.ccc.routing.poc" xmlns="http://camel.apache.org/schema/blueprint">
    <packageScan>
        <package>aaa.bbb.ccc</package>
    </packageScan>
    </camel:camelContext>
    <bean id="camelRestService" class="aaa.bbb.ccc.CamelRestService"/> 
    <bean id = "activemq" class = "org.apache.activemq.camel.component.ActiveMQComponent">
    <property name = "brokerURL" value = "tcp://localhost:61616"/>
    <property name = "userName" value = "admin"/>
    <property name = "password" value = "admin"/>
    </bean>
</blueprint>

pom.xml pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>aaa.bbb.ccc</groupId>
    <artifactId>camelRest</artifactId>
    <version>1</version>
    <packaging>bundle</packaging>
    <name>camelRest</name>
    <description>camelRest</description>
    <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <skipTests>true</skipTests>
    </properties>
    <dependencies>
    <dependency>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-core</artifactId>
        <version>2.17.0</version>
        <scope>provided</scope>
    </dependency>           
    <dependency>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-restlet</artifactId>
        <version>2.17.0</version> 
        <scope>provided</scope>                     
    </dependency>       
    <dependency>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-cxf</artifactId>
        <version>2.17.0</version>
        <scope>provided</scope>              
    </dependency>    
    <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-camel</artifactId>
        <version>5.11.0</version>
        <scope>provided</scope>            
    </dependency>
    </dependencies>
    <build>
    <finalName>${project.artifactId}-${project.version}</finalName>
    <resources>
        <resource>
        <directory>src/main/resources</directory>
        <filtering>true</filtering>
        </resource>
    </resources>
    <plugins>
        <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.1</version>
        <configuration>
            <source>1.8</source>
            <target>1.8</target>
            <showDeprecation>true</showDeprecation>
        </configuration>
        </plugin>   
        <plugin>
        <groupId>org.apache.felix</groupId>
        <artifactId>maven-bundle-plugin</artifactId>
        <version>3.3.0</version>
        <extensions>true</extensions>
        <configuration>
            <instructions>
            <Bundle-SymbolicName>${project.groupId}.${project.artifactId}</Bundle-SymbolicName>
            <Export-Package>aaa.bbb.ccc*</Export-Package>
            <Import-Package>*</Import-Package>
            </instructions>
        </configuration>
        </plugin>             
    </plugins>
    </build>
</project>

test url/return value测试网址/返回值

URL:
http://localhost:8182/service/getAll/

RETURNS:
[{"id": 100,"name": "JOE BLOW"}]    

Environment环境

IBM MQ server 9.0.3.0
IBM MQ client 8.0.0.7
jdk1.8.0_131
jboss-fuse-6.3.0.redhat-187

I've worked on a few Fuse/W-MQ integration exercises.我已经完成了一些 Fuse/W-MQ 集成练习。 Bundling the W-MQ client drivers into your application probably won't work on Fuse.将 W-MQ 客户端驱动程序捆绑到您的应用程序中可能不适用于 Fuse。 You need to install the W-MQ client JARs into the Fuse run-time.您需要将 W-MQ 客户端 JAR 安装到 Fuse 运行时中。 IBM provides OSGi-compliant versions for that purpose.为此,IBM 提供了符合 OSGi 的版本。

My recollection is that there are nine in total, but not all are needed in all configurations.我记得总共有九个,但并非所有配置都需要全部。 You can install them using osgi:install at the Karaf prompt, or just dump them in the deploy/ directory for testing purposes.您可以在 Karaf 提示符下使用 osgi:install 安装它们,或者只是将它们转储到 deploy/ 目录中以进行测试。 Some configuration changes might need to be made in Fuse -- these depend on the specific version combination.可能需要在 Fuse 中进行一些配置更改——这取决于特定的版本组合。

Your connection factory configuration looks broadly correct.您的连接工厂配置看起来大致正确。

The "allcient" jars contain all of the other client bundles that Kevin was mentioning. “allcient” jar 包含 Kevin 提到的所有其他客户端包。

I'm a bit puzzled by what I am seeing, however.然而,我对我所看到的感到有些困惑。 I downloaded the IBM MQ 9.0.3 client jars, and there is only the "com.ibm.mq.allclient.jar" in the zip.我下载了 IBM MQ 9.0.3 客户端 jar,zip 中只有“com.ibm.mq.allclient.jar”。

For MQ 8, you would have the "com.ibm.mq.osgi.allclient.jar" and "com.ibm.mq.osgi.allclientprereqs.jar" bundles.对于 MQ 8,您将拥有“com.ibm.mq.osgi.allclient.jar”和“com.ibm.mq.osgi.allclientprereqs.jar”包。 The problem there is that the prereq bundle included the javax.jms interfaces.问题在于 prereq 包包含 javax.jms 接口。 You would have to modify the prereq bundle to remove the JMS api jar in order to use it on Fuse.您必须修改 prereq 包以删除 JMS api jar 才能在 Fuse 上使用它。 I do not know if this is still the case for MQ 9.我不知道 MQ 9 是否仍然如此。

Specifically for Fuse 6.3:特别适用于 Fuse 6.3:

My recollection is that Fuse 6.3 is tested against the client runtime for W-MQ 8, without needing modifications in Fuse.我记得 Fuse 6.3 已针对 W-MQ 8 的客户端运行时进行了测试,无需在 Fuse 中进行修改。 I can't remember whether that was with the individual 8-9 IBM bundles, or with the "allclient" bundle that Doug mentions.我不记得是单独的 8-9 IBM 捆绑包还是 Doug 提到的“allclient”捆绑包。 In any event, you need to avoid getting into a situation where you have a JMS 2.0 API JAR (that is, the bundle that includes the javax.jms.xxx classes) from both W-MQ and from Fuse -- they will clash.在任何情况下,您都需要避免陷入以下情况:您拥有来自 W-MQ 和来自 Fuse 的 JMS 2.0 API JAR(即包含 javax.jms.xxx 类的包)——它们会发生冲突。 So if you install xxx_allclient.jar, you either need to not install xxx_allclientprereqs.jar, or uninstall the Fuse jms-api bundle from the Fuse runtime.所以,如果你安装xxx_allclient.jar,您可能需要安装xxx_allclientprereqs.jar,或卸载从保险丝运行时保险丝的JMS API包。 If you go the route of using the heap of 8 or 9 bundles, you should install them all except one called something like xxx_jms.prereq_xxx.jar.如果你走使用 8 或 9 个包的堆的路线,你应该安装它们,除了一个叫做 xxx_jms.prereq_xxx.jar 的东西。

You can install using osgi:install or, for development, just copy them into the deploy/ directory on Fuse.您可以使用 osgi:install 安装,或者,对于开发,只需将它们复制到 Fuse 上的 deploy/ 目录中。 In Fabric8 you'll need eventually to put the IBM JARs into some sort of repository and then create a profile that references them;在 Fabric8 中,您最终需要将 IBM JAR 放入某种存储库,然后创建引用它们的配置文件; but testing without Fabric8 in the first instance is probably worthwhile, to remove that additional source of complexity.但首先在没有 Fabric8 的情况下进行测试可能是值得的,以消除额外的复杂性来源。

I haven't unpacked the W-MQ 9 allclient.jar, so I don't know what's inside it. W-MQ 9 allclient.jar我没有解压,不知道里面有什么。 If it contains javax.jms.xxx classes, either directly or in another internal JAR, then I guess you'll either need to unpack and repack the JAR without these classes, or uninstall the Fuse jms-api bundle.如果它直接或在另一个内部 JAR 中包含 javax.jms.xxx 类,那么我想您要么需要在没有这些类的情况下解压缩和重新打包 JAR,要么卸载 Fuse jms-api 包。

In any event, Fuse 6.3 with W-MQ 8 client runtime is a good combination, and probably the easiest Fuse/W-MQ combination to get working.无论如何,带有 W-MQ 8 客户端运行时的 Fuse 6.3 是一个很好的组合,并且可能是最容易开始工作的 Fuse/W-MQ 组合。 You don't necessarily have to use the W-MQ client runtime whose version that matches the W-MQ broker version, if a different client is easier to install on Fuse.如果不同的客户端更容易在 Fuse 上安装,则您不一定必须使用其版本与 W-MQ 代理版本匹配的 W-MQ 客户端运行时。 However, you should check IBM's compatibility statement before going this way.但是,在采用这种方式之前,您应该检查 IBM 的兼容性声明。 My recollection is that the W-MQ 8 client runtime is certified by IBM to work with any 7.5.x broker, but I'm not sure whether compatibility works in the opposite direction.我记得 W-MQ 8 客户端运行时经过 IBM 认证,可以与任何 7.5.x 代理一起使用,但我不确定兼容性是否在相反的方向上起作用。

FWIW my recommendation is that you shouldn't be afraid to use a bit of trial-and-error. FWIW 我的建议是你不应该害怕使用一些反复试验。 I've been working with Fuse and W-MQ for a couple of years, and I still find I have to fiddle.我已经与 Fuse 和 W-MQ 合作了几年,但我仍然发现我必须摆弄。 Exceptions will help with troubleshooting.异常将有助于故障排除。

(Posted solution on behalf of the question author, to move it to the answer space) . (代表问题作者贴出答案,移至答案空间)

Thanks to help/postings from generous forum contributors, below, I arrived at a working solution, below.感谢以下慷慨论坛贡献者的帮助/帖子,我在下面找到了一个可行的解决方案。

I included relatively full code/context, ie, to enable others to arrive at the solution more quickly than I did.我包含了相对完整的代码/上下文,即让其他人能够比我更快地找到解决方案。

aaa.bbb.ccc.CamelRestRoutes.java aaa.bbb.ccc.CamelRestRoutes.java

package aaa.bbb.ccc;

import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.model.rest.RestBindingMode;

public class CamelRestRoutes extends RouteBuilder {

    public CamelRestRoutes() {
    }

    @Override
    public void configure() throws Exception {

    restConfiguration().component("restlet")
        .host("localhost")
        .port(8182)
        //.bindingMode(RestBindingMode.json_xml);
        .bindingMode(RestBindingMode.json);

    rest("/service")
        //.bindingMode(RestBindingMode.json_xml)
        .bindingMode(RestBindingMode.json)
        .get("/getAll")
        .produces("application/json")
        .to("direct:thingX");

    from("direct:thingX")
        .to("bean:camelRestService?method=getAll")
        .log("---------------------- (AAA) ----------------------> direct:thingX...:" + body().toString())
        .to("direct:thingY");

    from("direct:thingY")
        .log("---------------------- (BBB) ----------------------> direct:thingY...:" + body().toString())
        .to("direct:thingZ");

    from("direct:thingZ")
        .log("---------------------- (CCC) ----------------------> direct:thingZ...:" + body().toString())
        .to("wmq:queue:mylocalqueue?jmsMessageType=Text&exchangePattern=InOnly");        
    }
}

aaa.bbb.ccc.CamelRestService.java aaa.bbb.ccc.CamelRestService.java

package aaa.bbb.ccc;

import aaa.bbb.ccc.model.CamelRestPojo;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import javax.ws.rs.core.MediaType;

@Path("/service/")
public class CamelRestService {

    Map<Long, CamelRestPojo> itemMap = new HashMap<>();

    public CamelRestService() {
    init();
    }

    @GET
    //@Produces({MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML})
    @Produces({MediaType.APPLICATION_JSON})
    @Path("/getAll/")
    public Collection<CamelRestPojo> getAll() {
    System.out.println("====================== (getAll) ---------------------->");
    return itemMap.values();
    }

    final void init() {
    System.out.println("---------------------- (init) ---------------------->");
    CamelRestPojo o = new CamelRestPojo();
    o.setName("JOE BLOW");
    o.setId(100);
    itemMap.put(o.getId(), o);
    }
}

aaa.bbb.ccc.model.CamelRestPojo aaa.bbb.ccc.model.CamelRestPojo

package aaa.bbb.ccc.model;

import java.io.Serializable;
public class CamelRestPojo implements Serializable {

    private long id;
    private String name;

    public long getId() {
    return id;
    }
    public void setId(long id) {
    this.id = id;
    }

    public String getName() {
    return name;
    }
    public void setName(String name) {
    this.name = name;
    }

    @Override
    public String toString() {
    return "CamelRestPojo{" + "id=" + id + ", name=" + name + '}';
    }
}

camel-route.xml骆驼路线.xml

<?xml version="1.0" encoding="UTF-8"?>
<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:cm="http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.0.0"
       xmlns:jaxrs="http://cxf.apache.org/blueprint/jaxrs"
       xmlns:camel="http://camel.apache.org/schema/blueprint"
       xsi:schemaLocation="
         http://www.osgi.org/xmlns/blueprint/v1.0.0 http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd
         http://cxf.apache.org/blueprint/jaxrs http://cxf.apache.org/schemas/blueprint/jaxrs.xsd
         http://cxf.apache.org/blueprint/core http://cxf.apache.org/schemas/blueprint/core.xsd
         ">
    <camel:camelContext id="aaa.bbb.ccc.routing.poc" xmlns="http://camel.apache.org/schema/blueprint">
    <packageScan>
        <package>aaa.bbb.ccc</package>
    </packageScan>
    </camel:camelContext>

    <bean id="camelRestService" class="aaa.bbb.ccc.CamelRestService"/> 

    <bean id="wmqcf" class="com.ibm.mq.jms.MQConnectionFactory">
    <property name="hostName" value="localhost"/>        
    <property name="port" value="1414"/>
    <property name="queueManager" value="QM1"/>     
    <property name="channel" value="DEV.ADMIN.SVRCONN"/>                     
    <property name="transportType" value="1"/>
    </bean>

    <bean id="wmqcfw"  class="org.springframework.jms.connection.UserCredentialsConnectionFactoryAdapter">
    <property name="targetConnectionFactory" ref="wmqcf" />
    <property name="username" value="admin" />
    <property name="password" value="passw0rd" />
    </bean>  

    <bean id="wmqcfg" class="org.apache.camel.component.jms.JmsConfiguration">
    <property name="connectionFactory" ref="wmqcfw"/>
    <property name="concurrentConsumers" value="10"/>
    </bean>

    <bean id="wmq" class="org.apache.camel.component.jms.JmsComponent">
    <property name="configuration" ref="wmqcfg"/>     
    </bean>    
</blueprint>

pom.xml pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>aaa.bbb.ccc</groupId>
    <artifactId>camelRest</artifactId>
    <version>1</version>
    <packaging>bundle</packaging>
    <name>camelRest</name>
    <description>camelRest</description>

    <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <skipTests>true</skipTests>
    <mq.version>8.0.0.7</mq.version>
    </properties>

    <dependencies>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-log4j12</artifactId>
        <version>1.7.25</version>
        <scope>provided</scope>               
    </dependency>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>1.7.25</version>
        <scope>provided</scope>               
    </dependency>
    <dependency>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-core</artifactId>
        <version>2.17.0</version>
        <scope>provided</scope>
    </dependency>           
    <dependency>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-restlet</artifactId>
        <version>2.17.0</version> 
        <scope>provided</scope>                     
    </dependency>       
    <dependency>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-cxf</artifactId>
        <version>2.17.0</version>
        <scope>provided</scope>              
    </dependency> 
    <dependency>
        <groupId>com.ibm.mq</groupId>
        <artifactId>allclient</artifactId>
        <version>${mq.version}</version>
        <scope>provided</scope>               
    </dependency>
    <dependency>
        <groupId>com.ibm.mq</groupId>
        <artifactId>jms</artifactId>
        <version>${mq.version}</version>
        <scope>provided</scope>
    </dependency>  

    </dependencies>

    <build>
    <finalName>${project.artifactId}-${project.version}</finalName>

    <resources>
        <resource>
        <directory>src/main/resources</directory>
        <filtering>true</filtering>
        </resource>
    </resources>

    <plugins>
        <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.1</version>
        <configuration>
            <source>1.8</source>
            <target>1.8</target>
            <showDeprecation>true</showDeprecation>
        </configuration>
        </plugin>   
        <plugin>
        <groupId>org.apache.felix</groupId>
        <artifactId>maven-bundle-plugin</artifactId>
        <version>3.3.0</version>
        <extensions>true</extensions>
        <configuration>
            <instructions>
            <Bundle-SymbolicName>${project.groupId}.${project.artifactId}</Bundle-SymbolicName>
            <Export-Package>aaa.bbb.ccc*</Export-Package> 
            <Import-Package>*</Import-Package>                                                                      
            </instructions>
        </configuration>
        </plugin>             
    </plugins>
    </build>
</project>

here is the contents of the jboss fuse "deploy" folder这是 jboss 保险丝“部署”文件夹的内容

C:\tools\jboss-fuse-6.3.0.redhat-187\deploy>dir
 Volume in drive C is OSDisk
 Volume Serial Number is D89B-75DE

 Directory of C:\tools\jboss-fuse-6.3.0.redhat-187\deploy

08/17/2017  01:49 PM    <DIR>          .
08/17/2017  01:49 PM    <DIR>          ..
08/17/2017  01:49 PM             7,975 camelRest-1.jar
06/29/2017  01:00 AM           159,649 com.ibm.mq.osgi.allclientprereqs_8.0.0.7.jar
06/29/2017  01:00 AM         8,011,749 com.ibm.mq.osgi.allclient_8.0.0.7.jar
06/29/2017  01:00 AM         4,088,715 com.ibm.mq.osgi.java_8.0.0.7.jar
06/29/2017  01:00 AM           171,064 com.ibm.msg.client.osgi.commonservices.j2se_8.0.0.7.jar
06/29/2017  01:00 AM            48,715 com.ibm.msg.client.osgi.jms.prereq_8.0.0.7.jar.DISABLE
06/29/2017  01:00 AM           639,807 com.ibm.msg.client.osgi.jms_8.0.0.7.jar
06/29/2017  01:00 AM           216,218 com.ibm.msg.client.osgi.nls_8.0.0.7.jar
06/29/2017  01:00 AM           279,861 com.ibm.msg.client.osgi.wmq.nls_8.0.0.7.jar
06/29/2017  01:00 AM            92,406 com.ibm.msg.client.osgi.wmq.prereq_8.0.0.7.jar
06/29/2017  01:00 AM         7,963,226 com.ibm.msg.client.osgi.wmq_8.0.0.7.jar
09/15/2016  04:19 AM               873 README
          12 File(s)     21,680,258 bytes
           2 Dir(s)  143,871,660,032 bytes free

C:\tools\jboss-fuse-6.3.0.redhat-187\deploy>

Other notes其他注意事项

For what it is worth, I had add following features:对于它的价值,我添加了以下功能:

-camel-jackson
-camel-restlet

(I'm sure your "mileage will vary" as you tinker to make your IBM MQ app work, etc). (我确信当您修补 IBM MQ 应用程序等时,您的“里程会有所不同”)。

Also, fwiw, running:另外,fwiw,运行:

features:list | grep "jms" 

yields:

    JBossFuse:karaf@root> features:list | grep "jms"
    [installed  ] [2.4.0.redhat-630187  ] jms                                           karaf-enterprise-2.4.0.redhat-630187   JMS service and commands
    [installed  ] [2.17.0.redhat-630187 ] camel-jms                                     camel-2.17.0.redhat-630187
    [uninstalled] [2.17.0.redhat-630187 ] camel-sjms                                    camel-2.17.0.redhat-630187
    [uninstalled] [3.1.5.redhat-630187  ] cxf-transports-jms                            cxf-3.1.5.redhat-630187
    [uninstalled] [2.1.0.redhat-630187  ] switchyard-jms                                switchyard-2.1.0.redhat-630187
    [uninstalled] [2.1.0.redhat-630187  ] switchyard-quickstart-bpel-jms-binding        switchyard-2.1.0.redhat-630187
    [uninstalled] [2.1.0.redhat-630187  ] switchyard-quickstart-camel-jms-binding       switchyard-2.1.0.redhat-630187
    [uninstalled] [2.1.0.redhat-630187  ] switchyard-demo-security-propagation-jms      switchyard-2.1.0.redhat-630187
    [uninstalled] [1.1                  ] jms-spec                                      activemq-core-5.11.0.redhat-630187     JMS spec 1.1 libraries
    [installed  ] [2.0                  ] jms-spec                                      activemq-core-5.11.0.redhat-630187     JMS spec 2.0 libraries
    [uninstalled] [1.1                  ] jms-spec-dep                                  activemq-core-5.11.0.redhat-630187     JMS spec 1.1 dependency
    [installed  ] [2.0                  ] jms-spec-dep                                  activemq-core-5.11.0.redhat-630187     JMS spec 2.0 dependency
    [uninstalled] [5.11.0.redhat-630187 ] activemq-jms-spec-dep                         activemq-core-5.11.0.redhat-630187     ActiveMQ broker libraries
    [installed  ] [3.2.16.RELEASE_1     ] spring-jms                                    spring-2.4.0.redhat-630187             Spring 3.2.x JMS support 
    

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 使用camel-netty4-http的JBoss Fuse camel dsl-如何获取REST返回码以进行记录? - JBoss Fuse camel dsl using camel-netty4-http - how to I obtain the REST return code in order to log it? 两个简单的 IBM MQ 客户端测试写入 MQ 队列 - 为什么一个有效,而另一个无效? - Two simple IBM MQ client tests write to MQ queue - why does one work, but, NOT the other? Red Hat Fuse Quickstart应用程序“基于内容的路由器 - Java DSL”不会创建“工作”文件夹 - Red Hat Fuse Quickstart app “Content Based Router - Java DSL” does not create “work” folder 如何在我的应用程序中添加org.json(json),以使其成功部署到JBoss Fuse? - How can I add org.json (json) to my application so that it successfully deploys to JBoss Fuse? 如何验证池的IBM MQ连接 - How to validate IBM MQ connection for Pool 我们可以将我的Java-Spring-mvc服务连接到IBM MQ而不用从队列中生成或使用绑定文件吗? - can we connect my Java-Spring-mvc service to IBM MQ without generating or using binding files from the queues JbossFuse-找不到使简单的rest-dsl示例工作的方法…奇怪,有些难以理解的异常 - JbossFuse - not found a way to get a simple rest-dsl example to work… Odd, somewhat indecipherable exception Jboss AS 7 使用 JDK8 - Jboss AS 7 work with JDK8 如何使用Swagger拥有多个Camel Rest DSL定义 - How to have multiple Camel Rest DSL definitions with Swagger NoClassDefFoundError 无法初始化类 com.ibm.mq.headers.internal.HeaderType - NoClassDefFoundError Could not initialize class com.ibm.mq.headers.internal.HeaderType
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM