Hermes JMS and t3s connection

Hermes JMS is a great tools delivered/packaged with SOAPUI and allow us to interact with JMS provider.  When setting up the connection to a non-secure JMS server using t3 protocol, there are no major issue.

However, once you need to connect to a secure JMS server using t3s, you need to present the certificate (one way SSL). Otherwise, you will receive this error message from Hermes JMS client:

javax.jms.JMSException: Could not create InitialContext: t3s://192.168.2.20:8702: Destination unreachable; nested exception is:
javax.net.ssl.SSLKeyException: [Security:090542]Certificate chain received from 192.168.2.20 – 192.168.2.20 was not trusted causing SSL handshake failure. Check the certificate chain to determine if it should be trusted or not. If it should be trusted, then update the client trusted CA configuration to trust the CA certificate that signed the peer certificate chain. If you are connecting to a WLS server that is using demo certificates (the default WLS server behavior), and you want this client to trust demo certificates, then specify -Dweblogic.security.TrustKeyStore=DemoTrust on the command line for this client.; No available router to destination
at hermes.JNDIContextFactory.createContext(JNDIContextFactory.java:286)
at hermes.ext.HermesAdminSupport.discoverDestinationConfigs(HermesAdminSupport.java:441)
at hermes.impl.HermesAdminAdapter.discoverDestinationConfigs(HermesAdminAdapter.java:84)
at hermes.impl.DefaultHermesImpl.discoverDestinationConfigs(DefaultHermesImpl.java:1358)
at hermes.browser.tasks.DiscoverDestinationsTask.invoke(DiscoverDestinationsTask.java:76)
at hermes.browser.tasks.TaskSupport.run(TaskSupport.java:175)
at hermes.browser.tasks.ThreadPool.run(ThreadPool.java:170)
at java.lang.Thread.run(Unknown Source)

The log file on the soa_server show this same error:

<Oct 20, 2013 3:58:32 PM CEST> <Warning> <Security> <BEA-090482> <BAD_CERTIFICATE alert was received from 192.168.2.21 – 192.168.2.21. Check the peer to determine why it rejected the certificate chain (trusted CA configuration, hostname verification). SSL debug tracing may be required to determine the exact reason the certificate was rejected.>

My SOA Server 1 is configured to use the default keystore and SSL configuration. The SOA server use the following DemoIdentity.jks file containing the demo certificate. You can check it in the soa server log file:

<Oct 19, 2013 4:19:23 PM CEST> <Notice> <Security> <BEA-090171> <Loading the identity certificate and private key stored under the alias DemoIdentity from the jks keystore file /data/middleware/mid70/wlserver_10.3/server/lib/DemoIdentity.jks.>
<Oct 19, 2013 4:19:24 PM CEST> <Notice> <Security> <BEA-090169> <Loading trusted certificates from the jks keystore file /data/middleware/mid70/wlserver_10.3/server/lib/DemoTrust.jks.>
<Oct 19, 2013 4:19:24 PM CEST> <Notice> <Security> <BEA-090169> <Loading trusted certificates from the jks keystore file /usr/java/jdk1.7.0_15/jre/lib/security/cacerts.>
<Oct 19, 2013 4:19:24 PM CEST> <Alert> <Security> <BEA-090152> <Demo trusted CA certificate is being used in production mode: [
[
Version: V3
Subject: CN=CACERT, OU=FOR TESTING ONLY, O=MyOrganization, L=MyTown, ST=MyState, C=US
Signature Algorithm: MD5withRSA, OID = 1.2.840.113549.1.1.4

Key:  Sun RSA public key, 512 bits
modulus: 9550192877869244258838480703390456015046425375252278279190673063544122510925482179963329236052146047356415957587628011282484772458983977898996276815440753
public exponent: 65537
Validity: [From: Thu Mar 21 21:12:27 CET 2002,
To: Tue Mar 22 21:12:27 CET 2022]
Issuer: CN=CACERT, OU=FOR TESTING ONLY, O=MyOrganization, L=MyTown, ST=MyState, C=US
SerialNumber: [    33f10648 fcde0deb 4199921f d64537f4]

Certificate Extensions: 1
[1]: ObjectId: 2.5.29.15 Criticality=true
KeyUsage [
Key_CertSign
]

]
Algorithm: [MD5withRSA]
Signature:
0000: 9D 26 4C 29 C8 91 C3 A7   06 C3 24 6F AE B4 F8 82  .&L)……$o….
0010: 80 4D AA CB 7C 79 46 84   81 C4 66 95 F4 1E D8 C4  .M…yF…f…..
0020: E9 B7 D9 7C E2 23 33 A4   B7 21 E0 AA 54 2B 4A FF  …..#3..!..T+J.
0030: CB 21 20 88 81 21 DB AC   90 54 D8 7D 79 63 23 3C  .! ..!…T..yc#<

] The system is vulnerable to security attacks, since it trusts certificates signed by the demo trusted CA.>

Before going into details, here are some important points to understand regarding SSL:

Let’s do some hands on now:

You need to configure your Hermes Tools to specify this 3 parameters, in your startup script. Mine is located at: C:\Program Files (x86)\SmartBear\soapUI-4.6.0\hermesJMS\bin\hermes.bat

As I don’t have real certificate, you can use the following configuration to test the t3s connection from HermesJMS to a remote WLS JMS queue:

-Dweblogic.security.SSL.ignoreHostnameVerification=true
-Dweblogic.security.TrustKeyStore=CustomTrust
-Dweblogic.security.CustomTrustKeyStoreFileName=E:/middleware/jdev11.1.1.7.0/wlserver_10.3/server/lib/DemoTrust.jks

Note: DemoTrustKeyStorePassPhrase is the password if you want to see what is in the keystore with for example PorteCle.

Below My HermesJMS configuration file:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<config base64EncodeMessages="true" scrollMessagesDuringBrowse="true" lookAndFeel="com.sun.java.swing.plaf.windows.WindowsLookAndFeel" enableJython="true" queueBrowseConsumerTimeout="0" selectorImpl="hermes.selector.JAMSELMessageSelectorFactory" correctDropSemantics="false" autoBrowseRefreshRate="10" maxColumnsInStatisticsTable="10" displayFactoryAdmin="true" copyJMSPriority="true" copyJMSReplyTo="true" copyJMSExpiration="true" copyJMSType="true" copyJMSCorrelationID="true" copyJMSProviderProperties="true" maxMessagesInBrowserPane="1000" messageFilesDir="C:\.hermes\.\messages" auditDirectory="C:\temp" maxThreadPoolSize="5" lastEditedByHermesVersion="v1.14 SoapUI" lastEditedByUser="Chenda">
    <classpathGroup id="WLS_LIB">
        <library noFactories="true" jar="E:\middleware\jdev11.1.1.7.0\wlserver_10.3\server\lib\weblogic.jar"/>
    </classpathGroup>
    <renderer className="hermes.renderers.DefaultMessageRenderer">
        <properties>
            <property value="false" name="bytesIsString"/>
            <property value="false" name="bytesIsObject"/>
            <property value="true" name="active"/>
            <property value="100" name="messageCache"/>
            <property value="65536" name="bytesIsObjectBufferSize"/>
            <property value="false" name="toStringOnObjectMessage"/>
        </properties>
    </renderer>
    <renderer className="hermes.renderers.DefaultMessageHeaderRenderer">
        <properties>
            <property value="true" name="active"/>
        </properties>
    </renderer>
    <renderer className="hermes.renderers.ToStringMessageRenderer">
        <properties>
            <property value="true" name="active"/>
        </properties>
    </renderer>
    <renderer className="hermes.renderers.HexMessageRenderer">
        <properties>
            <property value="true" name="active"/>
        </properties>
    </renderer>
    <renderer className="hermes.renderers.XMLMessageRenderer">
        <properties>
            <property value="true" name="active"/>
        </properties>
    </renderer>
    <renderer className="hermes.renderers.fix.FIXMessageRenderer">
        <properties>
            <property value="true" name="displayValueWithEnum"/>
            <property value="true" name="active"/>
            <property value="100" name="messageCache"/>
            <property value="true" name="displayHeaderAndTrailer"/>
        </properties>
    </renderer>
    <renderer className="hermes.renderers.EBCDICMessageRenderer">
        <properties>
            <property value="16" name="rowLength"/>
            <property value="." name="undisplayableChar"/>
            <property value="true" name="active"/>
            <property value="5242880" name="maxMessageSize"/>
        </properties>
    </renderer>
    <factory classpathId="System">
        <provider className="hermes.providers.file.FileConnectionFactory">
            <properties>
                <property value="${hermes.home}/bin/messages" name="baseDirectory"/>
            </properties>
        </provider>
        <connection connectionPerThread="false" clientID="">
            <session useConsumerForQueueBrowse="false" audit="false" reconnects="0" id="Files"/>
        </connection>
        <destination domain="1" name="examples.xml"/>
        <destination useLocalRenderer="true" durable="false" domain="1" name="fix.xml"/>
        <extension className="hermes.ext.DefaultHermesAdminFactory">
            <properties/>
        </extension>
    </factory>
    <factory classpathId="System">
        <provider className="hermes.NullConnectionFactory">
            <properties/>
        </provider>
        <connection connectionPerThread="false" clientID="">
            <session useConsumerForQueueBrowse="false" audit="false" transacted="true" reconnects="0" id="WLS_10.3.6"/>
        </connection>
        <destination domain="1" name="examples.xml"/>
        <destination useLocalRenderer="true" durable="false" domain="1" name="fix.xml"/>
        <extension className="hermes.ext.DefaultHermesAdminFactory">
            <properties/>
        </extension>
    </factory>
    <factory classpathId="WLS_LIB">
        <provider className="hermes.JNDIConnectionFactory">
            <properties>
                <property value="javax/jms/QueueConnectionFactory" name="binding"/>
                <property value="weblogic.jndi.WLInitialContextFactory" name="initialContextFactory"/>
                <property value="t3s://192.168.2.20:8702" name="providerURL"/>
                <property value="Welcome1" name="securityCredentials"/>
                <property value="weblogic" name="securityPrincipal"/>
            </properties>
        </provider>
        <connection connectionPerThread="false" clientID="">
            <session useConsumerForQueueBrowse="false" audit="false" transacted="true" reconnects="0" id="mid70_t3s_8702"/>
        </connection>
        <destination domain="1" name="weblogic/wsee/BufferedResponseErrorQueue"/>
        <destination domain="1" name="weblogic/wsee/BufferedRequestErrorQueue"/>
        <destination domain="1" name="weblogic/wsee/BufferedResponseQueue"/>
        <destination domain="1" name="weblogic/wsee/BufferedRequestQueue"/>
        <destination domain="1" name="UMSJMSServer_auto_2@OraSDPM/Queues/OraSDPMDriverDefSndQ1"/>
        <destination domain="1" name="UMSJMSServer_auto_2@OraSDPM/Queues/OraSDPMWSRcvQ1"/>
        <destination domain="1" name="UMSJMSServer_auto_2@OraSDPM/Queues/OraSDPMEngineCmdQ"/>
        <destination domain="1" name="UMSJMSServer_auto_2@OraSDPM/Queues/OraSDPMEngineSndQ1"/>
        <destination domain="1" name="UMSJMSServer_auto_2@OraSDPM/Queues/OraSDPMAppDefRcvQ1"/>
        <destination domain="1" name="UMSJMSServer_auto_2@OraSDPM/Queues/OraSDPMEngineRcvQ1"/>
        <destination domain="1" name="OraSDPM/Queues/OraSDPMDriverDefSndQ1"/>
        <destination domain="1" name="OraSDPM/Queues/OraSDPMWSRcvQ1"/>
        <destination domain="1" name="OraSDPM/Queues/OraSDPMEngineCmdQ"/>
        <destination domain="1" name="OraSDPM/Queues/OraSDPMEngineSndQ1"/>
        <destination domain="1" name="OraSDPM/Queues/OraSDPMAppDefRcvQ1"/>
        <destination domain="1" name="OraSDPM/Queues/OraSDPMEngineRcvQ1"/>
        <destination domain="1" name="SOAJMSServer_auto_1@jms/testfwk/TestFwkQueue"/>
        <destination domain="1" name="SOAJMSServer_auto_1@jms/Queue/NotificationSenderQueue"/>
        <destination domain="1" name="SOAJMSServer_auto_1@jms/b2b/B2B_IN_QUEUE"/>
        <destination domain="1" name="SOAJMSServer_auto_1@jms/b2b/B2B_OUT_QUEUE"/>
        <destination domain="1" name="SOAJMSServer_auto_1@jms/b2b/B2BEventQueue"/>
        <destination domain="2" name="SOAJMSServer_auto_1@jms/b2b/B2BBroadcastTopic"/>
        <destination domain="1" name="SOAJMSServer_auto_1@jms/b2b/TransportDispatcherQueue"/>
        <destination domain="2" name="SOAJMSServer_auto_1@jms/fabric/XmlSchemaChangeNotificationTopic"/>
        <destination domain="1" name="SOAJMSServer_auto_1@jms/fabric/EDNQueue"/>
        <destination domain="1" name="UMSJMSServer_auto_1@OraSDPM/Queues/OraSDPMDriverDefSndQ1"/>
        <destination domain="1" name="UMSJMSServer_auto_1@OraSDPM/Queues/OraSDPMWSRcvQ1"/>
        <destination domain="1" name="UMSJMSServer_auto_1@OraSDPM/Queues/OraSDPMEngineCmdQ"/>
        <destination domain="1" name="UMSJMSServer_auto_1@OraSDPM/Queues/OraSDPMEngineSndQ1"/>
        <destination domain="1" name="UMSJMSServer_auto_1@OraSDPM/Queues/OraSDPMAppDefRcvQ1"/>
        <destination domain="1" name="UMSJMSServer_auto_1@OraSDPM/Queues/OraSDPMEngineRcvQ1"/>
        <destination domain="2" name="BPMJMSServer_auto_1@jms/bpm/MeasurementTopic"/>
        <destination domain="2" name="BPMJMSServer_auto_1@jms/bpm/PeopleQueryTopic"/>
        <destination domain="1" name="WseeJaxwsJmsServer_auto_2@weblogic/wsee/BufferedResponseErrorQueue"/>
        <destination domain="1" name="WseeJaxwsJmsServer_auto_2@weblogic/wsee/BufferedRequestErrorQueue"/>
        <destination domain="1" name="WseeJaxwsJmsServer_auto_2@weblogic/wsee/BufferedResponseQueue"/>
        <destination domain="1" name="WseeJaxwsJmsServer_auto_2@weblogic/wsee/BufferedRequestQueue"/>
        <destination domain="2" name="jms/bpm/MeasurementTopic"/>
        <destination domain="2" name="jms/bpm/PeopleQueryTopic"/>
        <destination domain="1" name="jms/bpm/CaseEventQueue"/>
        <destination domain="1" name="jms/testfwk/TestFwkQueue"/>
        <destination domain="1" name="jms/Queue/NotificationSenderQueue"/>
        <destination domain="1" name="jms/b2b/B2B_IN_QUEUE"/>
        <destination domain="1" name="jms/b2b/B2B_OUT_QUEUE"/>
        <destination domain="1" name="jms/b2b/B2BEventQueue"/>
        <destination domain="2" name="jms/b2b/B2BBroadcastTopic"/>
        <destination domain="1" name="jms/b2b/TransportDispatcherQueue"/>
        <destination domain="2" name="jms/fabric/XmlSchemaChangeNotificationTopic"/>
        <destination domain="1" name="jms/fabric/EDNQueue"/>
        <destination domain="1" name="SOAJMSServer_auto_2@jms/testfwk/TestFwkQueue"/>
        <destination domain="1" name="SOAJMSServer_auto_2@jms/Queue/NotificationSenderQueue"/>
        <destination domain="1" name="SOAJMSServer_auto_2@jms/b2b/B2B_IN_QUEUE"/>
        <destination domain="1" name="SOAJMSServer_auto_2@jms/b2b/B2B_OUT_QUEUE"/>
        <destination domain="1" name="SOAJMSServer_auto_2@jms/b2b/B2BEventQueue"/>
        <destination domain="2" name="SOAJMSServer_auto_2@jms/b2b/B2BBroadcastTopic"/>
        <destination domain="1" name="SOAJMSServer_auto_2@jms/b2b/TransportDispatcherQueue"/>
        <destination domain="2" name="SOAJMSServer_auto_2@jms/fabric/XmlSchemaChangeNotificationTopic"/>
        <destination domain="1" name="SOAJMSServer_auto_2@jms/fabric/EDNQueue"/>
        <destination domain="1" name="PS6SOAJMSServer_auto_1@jms/bpm/CaseEventQueue"/>
        <destination domain="2" name="BPMJMSServer_auto_2@jms/bpm/MeasurementTopic"/>
        <destination domain="2" name="BPMJMSServer_auto_2@jms/bpm/PeopleQueryTopic"/>
        <destination domain="1" name="PS6SOAJMSServer_auto_2@jms/bpm/CaseEventQueue"/>
        <destination domain="1" name="WseeJaxwsJmsServer_auto_1@weblogic/wsee/BufferedResponseErrorQueue"/>
        <destination domain="1" name="WseeJaxwsJmsServer_auto_1@weblogic/wsee/BufferedRequestErrorQueue"/>
        <destination domain="1" name="WseeJaxwsJmsServer_auto_1@weblogic/wsee/BufferedResponseQueue"/>
        <destination domain="1" name="WseeJaxwsJmsServer_auto_1@weblogic/wsee/BufferedRequestQueue"/>
        <extension className="hermes.ext.DefaultHermesAdminFactory">
            <properties/>
        </extension>
    </factory>
    <factory classpathId="WLS_LIB">
        <provider className="hermes.JNDIConnectionFactory">
            <properties>
                <property value="javax/jms/QueueConnectionFactory" name="binding"/>
                <property value="weblogic.jndi.WLInitialContextFactory" name="initialContextFactory"/>
                <property value="t3://192.168.2.20:8701" name="providerURL"/>
                <property value="Welcome1" name="securityCredentials"/>
                <property value="weblogic" name="securityPrincipal"/>
            </properties>
        </provider>
        <connection connectionPerThread="false" clientID="">
            <session useConsumerForQueueBrowse="false" checkSizePeriod="1000" checkSize="false" audit="false" transacted="true" reconnects="0" id="mid70_t3_8701"/>
        </connection>
        <destination domain="1" name="weblogic/wsee/BufferedResponseErrorQueue"/>
        <destination domain="1" name="weblogic/wsee/BufferedRequestErrorQueue"/>
        <destination domain="1" name="weblogic/wsee/BufferedResponseQueue"/>
        <destination domain="1" name="weblogic/wsee/BufferedRequestQueue"/>
        <destination domain="1" name="UMSJMSServer_auto_2@OraSDPM/Queues/OraSDPMDriverDefSndQ1"/>
        <destination domain="1" name="UMSJMSServer_auto_2@OraSDPM/Queues/OraSDPMWSRcvQ1"/>
        <destination domain="1" name="UMSJMSServer_auto_2@OraSDPM/Queues/OraSDPMEngineCmdQ"/>
        <destination domain="1" name="UMSJMSServer_auto_2@OraSDPM/Queues/OraSDPMEngineSndQ1"/>
        <destination domain="1" name="UMSJMSServer_auto_2@OraSDPM/Queues/OraSDPMAppDefRcvQ1"/>
        <destination domain="1" name="UMSJMSServer_auto_2@OraSDPM/Queues/OraSDPMEngineRcvQ1"/>
        <destination domain="1" name="OraSDPM/Queues/OraSDPMDriverDefSndQ1"/>
        <destination domain="1" name="OraSDPM/Queues/OraSDPMWSRcvQ1"/>
        <destination domain="1" name="OraSDPM/Queues/OraSDPMEngineCmdQ"/>
        <destination domain="1" name="OraSDPM/Queues/OraSDPMEngineSndQ1"/>
        <destination domain="1" name="OraSDPM/Queues/OraSDPMAppDefRcvQ1"/>
        <destination domain="1" name="OraSDPM/Queues/OraSDPMEngineRcvQ1"/>
        <destination domain="1" name="SOAJMSServer_auto_1@jms/testfwk/TestFwkQueue"/>
        <destination domain="1" name="SOAJMSServer_auto_1@jms/Queue/NotificationSenderQueue"/>
        <destination domain="1" name="SOAJMSServer_auto_1@jms/b2b/B2B_IN_QUEUE"/>
        <destination domain="1" name="SOAJMSServer_auto_1@jms/b2b/B2B_OUT_QUEUE"/>
        <destination domain="1" name="SOAJMSServer_auto_1@jms/b2b/B2BEventQueue"/>
        <destination domain="2" name="SOAJMSServer_auto_1@jms/b2b/B2BBroadcastTopic"/>
        <destination domain="1" name="SOAJMSServer_auto_1@jms/b2b/TransportDispatcherQueue"/>
        <destination domain="2" name="SOAJMSServer_auto_1@jms/fabric/XmlSchemaChangeNotificationTopic"/>
        <destination domain="1" name="SOAJMSServer_auto_1@jms/fabric/EDNQueue"/>
        <destination domain="1" name="UMSJMSServer_auto_1@OraSDPM/Queues/OraSDPMDriverDefSndQ1"/>
        <destination domain="1" name="UMSJMSServer_auto_1@OraSDPM/Queues/OraSDPMWSRcvQ1"/>
        <destination domain="1" name="UMSJMSServer_auto_1@OraSDPM/Queues/OraSDPMEngineCmdQ"/>
        <destination domain="1" name="UMSJMSServer_auto_1@OraSDPM/Queues/OraSDPMEngineSndQ1"/>
        <destination domain="1" name="UMSJMSServer_auto_1@OraSDPM/Queues/OraSDPMAppDefRcvQ1"/>
        <destination domain="1" name="UMSJMSServer_auto_1@OraSDPM/Queues/OraSDPMEngineRcvQ1"/>
        <destination domain="2" name="BPMJMSServer_auto_1@jms/bpm/MeasurementTopic"/>
        <destination domain="2" name="BPMJMSServer_auto_1@jms/bpm/PeopleQueryTopic"/>
        <destination domain="1" name="WseeJaxwsJmsServer_auto_2@weblogic/wsee/BufferedResponseErrorQueue"/>
        <destination domain="1" name="WseeJaxwsJmsServer_auto_2@weblogic/wsee/BufferedRequestErrorQueue"/>
        <destination domain="1" name="WseeJaxwsJmsServer_auto_2@weblogic/wsee/BufferedResponseQueue"/>
        <destination domain="1" name="WseeJaxwsJmsServer_auto_2@weblogic/wsee/BufferedRequestQueue"/>
        <destination domain="2" name="jms/bpm/MeasurementTopic"/>
        <destination domain="2" name="jms/bpm/PeopleQueryTopic"/>
        <destination domain="1" name="jms/bpm/CaseEventQueue"/>
        <destination domain="1" name="jms/testfwk/TestFwkQueue"/>
        <destination domain="1" name="jms/Queue/NotificationSenderQueue"/>
        <destination domain="1" name="jms/b2b/B2B_IN_QUEUE"/>
        <destination domain="1" name="jms/b2b/B2B_OUT_QUEUE"/>
        <destination domain="1" name="jms/b2b/B2BEventQueue"/>
        <destination domain="2" name="jms/b2b/B2BBroadcastTopic"/>
        <destination domain="1" name="jms/b2b/TransportDispatcherQueue"/>
        <destination domain="2" name="jms/fabric/XmlSchemaChangeNotificationTopic"/>
        <destination domain="1" name="jms/fabric/EDNQueue"/>
        <destination domain="1" name="SOAJMSServer_auto_2@jms/testfwk/TestFwkQueue"/>
        <destination domain="1" name="SOAJMSServer_auto_2@jms/Queue/NotificationSenderQueue"/>
        <destination domain="1" name="SOAJMSServer_auto_2@jms/b2b/B2B_IN_QUEUE"/>
        <destination domain="1" name="SOAJMSServer_auto_2@jms/b2b/B2B_OUT_QUEUE"/>
        <destination domain="1" name="SOAJMSServer_auto_2@jms/b2b/B2BEventQueue"/>
        <destination domain="2" name="SOAJMSServer_auto_2@jms/b2b/B2BBroadcastTopic"/>
        <destination domain="1" name="SOAJMSServer_auto_2@jms/b2b/TransportDispatcherQueue"/>
        <destination domain="2" name="SOAJMSServer_auto_2@jms/fabric/XmlSchemaChangeNotificationTopic"/>
        <destination domain="1" name="SOAJMSServer_auto_2@jms/fabric/EDNQueue"/>
        <destination domain="1" name="PS6SOAJMSServer_auto_1@jms/bpm/CaseEventQueue"/>
        <destination domain="2" name="BPMJMSServer_auto_2@jms/bpm/MeasurementTopic"/>
        <destination domain="2" name="BPMJMSServer_auto_2@jms/bpm/PeopleQueryTopic"/>
        <destination domain="1" name="PS6SOAJMSServer_auto_2@jms/bpm/CaseEventQueue"/>
        <destination domain="1" name="WseeJaxwsJmsServer_auto_1@weblogic/wsee/BufferedResponseErrorQueue"/>
        <destination domain="1" name="WseeJaxwsJmsServer_auto_1@weblogic/wsee/BufferedRequestErrorQueue"/>
        <destination domain="1" name="WseeJaxwsJmsServer_auto_1@weblogic/wsee/BufferedResponseQueue"/>
        <destination domain="1" name="WseeJaxwsJmsServer_auto_1@weblogic/wsee/BufferedRequestQueue"/>
        <extension className="hermes.ext.DefaultHermesAdminFactory">
            <properties/>
        </extension>
    </factory>
    <quickFIX filterSessionMsgTypes="false" cacheSize="1024"/>
</config>

Below some screenshot of my testing:

ScreenShot URL Description
SOAPUI_Hermes_JMS_0 Add details here
SOAPUI_Hermes_JMS_1 Add details here
SOAPUI_Hermes_JMS_2 Add details here
SOAPUI_Hermes_JMS_3 Add details here
SOAPUI_Hermes_JMS_4 Add details here
SOAPUI_Hermes_JMS_5 Add details here
SOAPUI_Hermes_JMS_6 Add details here
SOAPUI_Hermes_JMS_7 Add details here
SOAPUI_Hermes_JMS_8 Add details here
SOAPUI_Hermes_JMS_9 Add details here
SOAPUI_Hermes_JMS_10 Add details here
SOAPUI_Hermes_JMS_11 Add details here
Advertisements

About Chenda Mok

19 years of hands on experience in software design and development with emphasis on Enterprise Application Integration (EAI), Services Oriented Architecture (SOA) and Identity Management (IDM) solutions. I’m a software engineer, member of the professional service delivery team working for Salesforce. Prior to this, I worked for Oracle as Solution Architect, through SeeBeyond(06/2005), then SUN’s acquisition (04/2009). After my master’s degree in computer science in 1997; I always delivered consulting on architecture, design, implementation on integration’s field. I’m interested in architecture using EAI/SOA/IDM/BPM/Cloud technologies, software development and Java’s related technologies. I may blog about my work/activities at Salesforce, but I do not speak for my employer, past, present or future.
This entry was posted in DevTools, HermesJMS. Bookmark the permalink.