Skip to main content

This content has been archived and is no longer being updated. Links may not function; however, this content may be relevant to outdated versions of the product.

Support Article

Unable to connect to Solace using JMS Interface

SA-22791

Summary



Exceptions were thrown in log files.

Error Messages



com.pega.pegarules.pub.PRRuntimeError: PRRuntimeError
at com.pega.pegarules.session.internal.mgmt.base.ThreadRunner.runActivitiesAlt(ThreadRunner.java:707)
at com.pega.pegarules.session.internal.mgmt.PRThreadImpl.runActivitiesAlt(PRThreadImpl.java:435)
at com.pega.pegarules.session.internal.engineinterface.service.HttpAPI.runActivities(HttpAPI.java:3252)
at com.pega.pegarules.session.external.engineinterface.service.EngineAPI.processRequestInner(EngineAPI.java:418)
...
Caused by:
java.lang.NoClassDefFoundError: com.solacesystems.jndi.SolJNDIInitialContextFactory (initialization failure)
at java.lang.J9VMInternals.initialize(J9VMInternals.java:175)
.
.
.

Steps to Reproduce

  1. In Pega, create a JNDI server instance with following parameters:
    • Initial Context factory:=com.ibm.websphere.naming.WsnInitialContextFactory (our application is running on IBM WebSphere application server/8.5)
    • Provider URL:iiop://server:port. Here server is host name of our application server. Port is the port in which Bootstrap_address is configured. 
    • Leave Security Principal and Credentials as Blank value
  2. Create JMS Producer instance with following parameters:
    • Persistent: deselect the check box 
    • Priority: 4 
    • Expiration: 0 
    • Domain: Publish/Subscribe. Messages are published to a topic. 
  3. Create JMS Connector rule with following parameters: 
    • Resource Name Properties: Direct JNDI look up
    • JNDI Server: Select the JNDI server instance created as part of Step 1 
    • Connection Factory: From the dropdown, select the connection factory configured
    • Authentication Profile: Leave value blank 
    • JMS Producer model: Select the JMS producer model created as part of Step 2
    • Request Message Type: Select Text from the dropdown 
    • Leave values blank under Response header 
    • For Map From Key we can provide .pyNote as field name 
  4. Save the connector rule, and click test connectivity. 
  5. Check Pega logs for exceptions.

Root Cause



A software use or operation error:
Solace JARs must be imported to resolve class lookups.

Resolution



Perform the following local-change:
Deploy Solace JARs into Pega.
Suggest Edit

Published June 17, 2016 - Updated October 8, 2020

Did you find this content helpful? Yes No

Have a question? Get answers now.

Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.

We'd prefer it if you saw us at our best.

Pega Community has detected you are using a browser which may prevent you from experiencing the site as intended. To improve your experience, please update your browser.

Close Deprecation Notice
Contact us