Calling remote ESB client error

2019-05-15 09:13发布

问题:

I am trying to send and esb message from remote client, but I am constantly getting this error:

org.jboss.soa.esb.listeners.message.MessageDeliverException: org.apache.ws.scout.transport.TransportException: java.lang.reflect.InvocationTargetException
    at org.jboss.soa.esb.client.ServiceInvoker.loadServiceClusterInfo(ServiceInvoker.java:545)
    at org.jboss.soa.esb.client.ServiceInvoker.<init>(ServiceInvoker.java:174)
    at org.jboss.soa.esb.client.ServiceInvoker.<init>(ServiceInvoker.java:155)
    at org.jboss.soa.esb.client.ServiceInvoker.<init>(ServiceInvoker.java:197)
    at cz.certicon.esb.test.SenderESB.sendAMessage(SenderESB.java:24)
    at cz.certicon.esb.test.Manager.sendESBMessage(Manager.java:94)
    at cz.certicon.esb.test.MyFrame.actionPerformed(MyFrame.java:122)
    at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
    at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
    at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
    at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
    at java.awt.Component.processMouseEvent(Unknown Source)
    at javax.swing.JComponent.processMouseEvent(Unknown Source)
    at java.awt.Component.processEvent(Unknown Source)
    at java.awt.Container.processEvent(Unknown Source)
    at java.awt.Component.dispatchEventImpl(Unknown Source)
    at java.awt.Container.dispatchEventImpl(Unknown Source)
    at java.awt.Component.dispatchEvent(Unknown Source)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
    at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
    at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
    at java.awt.Container.dispatchEventImpl(Unknown Source)
    at java.awt.Window.dispatchEventImpl(Unknown Source)
    at java.awt.Component.dispatchEvent(Unknown Source)
    at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
    at java.awt.EventQueue.access$400(Unknown Source)
    at java.awt.EventQueue$2.run(Unknown Source)
    at java.awt.EventQueue$2.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
    at java.awt.EventQueue$3.run(Unknown Source)
    at java.awt.EventQueue$3.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
    at java.awt.EventQueue.dispatchEvent(Unknown Source)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.run(Unknown Source)
Caused by: org.jboss.soa.esb.services.registry.RegistryException: org.apache.ws.scout.transport.TransportException: java.lang.reflect.InvocationTargetException
    at org.jboss.internal.soa.esb.services.registry.JAXRRegistryImpl.findEPRs(JAXRRegistryImpl.java:358)
    at org.jboss.internal.soa.esb.services.registry.InVMRegistryInterceptor.findEPRs(InVMRegistryInterceptor.java:85)
    at org.jboss.soa.esb.services.registry.RegistryFactory$HeadRegistryInterceptor.findEPRs(RegistryFactory.java:229)
    at org.jboss.soa.esb.listeners.RegistryUtil.getEprs(RegistryUtil.java:228)
    at org.jboss.soa.esb.client.ServiceInvoker.loadServiceClusterInfo(ServiceInvoker.java:532)
    ... 42 more
Caused by: javax.xml.registry.JAXRException: org.apache.ws.scout.transport.TransportException: java.lang.reflect.InvocationTargetException
    at org.apache.ws.scout.registry.BusinessQueryManagerV3Impl.findConcepts(BusinessQueryManagerV3Impl.java:535)
    at org.jboss.internal.soa.esb.services.registry.JAXRRegistryImpl.getJBossESBTModel(JAXRRegistryImpl.java:795)
    at org.jboss.internal.soa.esb.services.registry.JAXRRegistryImpl.findEPRs(JAXRRegistryImpl.java:327)
    ... 46 more

I found many tutorials on setting up remote client, but none of them helped me.

I am using JBoss AS 6 with ESB 4.11 and running my application from Eclipse (with JBoss Tools). Sending JMS messages work fine, but I cant make this work.

This is my sample code for sending esb messages:

public void sendAMessage(String message) throws Exception {

         System.setProperty("javax.xml.registry.ConnectionFactoryClass",

                    "org.apache.ws.scout.registry.ConnectionFactoryImpl");



           Message esbMessage = MessageFactory.getInstance().getMessage();

            esbMessage.getBody().add(message);

            new ServiceInvoker("FirstServiceESB", "SimpleListener").deliverAsync(esbMessage);

    }

1) I have JBossESB runtime and JBoss 6.0 runtime imported (including all the libraries they provide).

2) I included jbossts-common.jar

3) I have jboss-esb.xml, uddi.xml and jbossesb-properties.xml in META-INF directory (I include these files as attachment, the last two are copied from helloworld quickstart...)

I honestly dont know what else to do to make it work... any kind of help is appreciated!

EDIT: I have read some topics concerning this one, and now Im getting the above mentioned error. I have included all the .jar libraries and .xml files they were suggesting but I am still stuck. Could the problem be perhaps somewhere else?

回答1:

First you need to download

http://www.redhat.com/products/jbossenterprisemiddleware/soa/download.html(jboss-soa-p-5 platform)

And set in eclipse project-->preferences--esb runtimes--jboss-soa-p-5 .It will solve all exceptions.