Конфигурирование IBM MQ с WSO2 EI JMS Inbound Endpoint - PullRequest
1 голос
/ 26 апреля 2019

Я пытаюсь настроить входящую конечную точку JMS, соединяющуюся с IBM MQ.Но при развертывании мы получаем «java.lang.ClassCastException».

Ниже приведена подробная информация о выполненных конфигурациях.

Предварительные требования 1. Скопировал файл wmq-client-8.0.0.4.jar в каталог / dropins.2. Скопировал файл jta_1.1_1.0.0.jar в каталог / lib.3. Удалил следующую строку из файла /conf/etc/launch.ini: javax.jms, \4. .привязки, размещенные в C: \ jndidirectory5. Запущен EI-сервер WSO2.

Создана входящая конечная точка JMS, как показано ниже

<?xml version="1.0" encoding="UTF-8"?>
<inboundEndpoint name="ibm-inbound" onError="common_error_handler" protocol="jms" sequence="online-seq" suspend="false" xmlns="http://ws.apache.org/ns/synapse">
    <parameters>
        <parameter name="interval">10</parameter>
        <parameter name="sequential">false</parameter>
        <parameter name="coordination">false</parameter>
        <parameter name="transport.jms.Destination">MYQUEUE</parameter>
        <parameter name="transport.jms.CacheLevel">3</parameter>
        <parameter name="transport.jms.ConnectionFactoryJNDIName">HAQU1</parameter>
        <parameter name="java.naming.factory.initial">com.sun.jndi.fscontext.RefFSContextFactory</parameter>
        <parameter name="java.naming.provider.url">file:///C:/jndidirectory</parameter>
        <parameter name="transport.jms.UserName">user</parameter>
        <parameter name="transport.jms.SessionAcknowledgement">AUTO_ACKNOWLEDGE</parameter>
        <parameter name="transport.jms.Password">password</parameter>
        <parameter name="transport.jms.SessionTransacted">false</parameter>
        <parameter name="transport.jms.ConnectionFactoryType">queue</parameter>
        <parameter name="transport.jms.ContentType">application/json</parameter>
        <parameter name="transport.jms.SharedSubscription">false</parameter>
        <parameter name="transport.jms.ResetConnectionOnPollingSuspension">true</parameter>
    </parameters>
</inboundEndpoint>

При развертывании CAR мы получаем ошибку, как показано ниже. org.apache.synapse.SynapseException: Ошибка при инициализации входящей конечной точки rm-to-ec-online-inboundв org.apache.synapse.inbound.InboundEndpoint.init (InboundEndpoint.java:83)в org.apache.synapse.deployers.InboundEndpointDeployer.deploySynapseArtifact (InboundEndpointDeployer.java:57)в org.apache.synapse.deployers.AbstractSynapseArtifactDeployer.deploy (AbstractSynapseArtifactDeployer.java:197)в org.wso2.carbon.application.deployer.synapse.SynapseAppDeployer.deployArtifactType (SynapseAppDeployer.java:1065)в org.wso2.carbon.application.deployer.synapse.SynapseAppDeployer.deployArtifacts (SynapseAppDeployer.java:106)в org.wso2.carbon.application.deployer.internal.ApplicationManager.deployCarbonApp (ApplicationManager.java:272)в org.wso2.carbon.application.deployer.CappAxis2Deployer.deploy (CappAxis2Deployer.java:72)в org.apache.axis2.deployment.repository.util.DeploymentFileData.deploy (DeploymentFileData.java:136)в org.apache.axis2.deployment.DeploymentEngine.doDeploy (DeploymentEngine.java:807)в org.apache.axis2.deployment.repository.util.WSInfoList.update (WSInfoList.java:144)в org.apache.axis2.deployment.RepositoryListener.update (RepositoryListener.java:377)в org.apache.axis2.deployment.RepositoryListener.checkServices (RepositoryListener.java:254)в org.apache.axis2.deployment.RepositoryListener.startListener (RepositoryListener.java:371)в org.apache.axis2.deployment.scheduler.SchedulerTask.checkRepository (SchedulerTask.java:59)в org.apache.axis2.deployment.scheduler.SchedulerTask.run (SchedulerTask.java:67)в org.wso2.carbon.core.deployment.CarbonDeploymentSchedulerTask.runAxisDeployment (CarbonDeploymentSchedulerTask.java:93)в org.wso2.carbon.core.deployment.CarbonDeploymentSchedulerTask.run (CarbonDeploymentSchedulerTask.java:138)в java.util.concurrent.Executors $ RunnableAdapter.call (Executors.java:511)в java.util.concurrent.FutureTask.runAndReset (FutureTask.java:308)в java.util.concurrent.ScheduledThreadPoolExecutor $ ScheduledFutureTask.access $ 301 (ScheduledThreadPoolExecutor.java:180)в java.util.concurrent.ScheduledThreadPoolExecutor $ ScheduledFutureTask.run (ScheduledThreadPoolExecutor.java:294)в java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1149)в java.util.concurrent.ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.java:624)at java.lang.Thread.run (Thread.java:748) Причина: java.lang.ClassCastException: com.ibm.mq.jms.MQConnectionFactory не может быть приведен к javax.jms.QueueConnectionFactory at org.wso2.carbon.inbound.endpoint.protocol.jms.factory.JMSConnectionFactory.createConnectionFactory (JMSConnectionFactory.java:187)в org.wso2.carbon.inbound.endpoint.protocol.jms.factory.JMSConnectionFactory. (JMSConnectionFactory.java:164)в org.wso2.carbon.inbound.endpoint.protocol.jms.factory.CachedJMSConnectionFactory. (CachedJMSConnectionFactory.java:38)в org.wso2.carbon.inbound.endpoint.protocol.jms.JMSPollingConsumer. (JMSPollingConsumer.java:78)
в org.wso2.carbon.inbound.endpoint.protocol.jms.JMSProcessor.init (JMSProcessor.java:89)
в org.apache.synapse.inbound.InboundEndpoint.init (InboundEndpoint.java:79)
... еще 23

...