Powered By Blogger

Tuesday, June 25, 2013

Accessing Remote WLS Queues and Topics

In this post, let's throw some light on how Oracle SOA can access JMS destinations  deployed onto remote weblogic domain

Oracle JMS Adapter can be used to access remote WLS JMS destinations. Remote destinations refer to queues/topics that are available in a WLS JMS server, which is part of a remote Oracle WebLogic Server domain.
To enable Oracle JMS Adapter to read/write from/to a remote queue that is present in a remote WLS JMS server, we must configure the following:


1.You must have a unique domain name and JMS server name in both the servers.
2.You must enable global trust between the two servers.

Refer to the following link for information about how to enable global trust between servers:

http://download.oracle.com/docs/cd/E13222_01/wls/docs100/ConsoleHelp/taskhelp/security/EnableGlobalTrustBetweenDomains.html
This configuration is appropriate when you connect to queues or topics present in WLS9.2 server.

There are two options supported that enable you to access remote destinations via the JMS adapter:

Direct Access

Direct access is defined via specification of the FactoryProperties property in the weblogic-ra.xml file, with access parameters indicating the remote domain.

FactoryProperties

java.naming.factory.initial=weblogic.jndi.WLInitialContextFactory;
java.naming.provider.url= t3://:;java.naming.security.principal= ;java.naming.security.credentials=

The disadvantage of this approach is security credentials will be displayed in plain text  

Foreign JMS server

Configure the foreign server to access the remote domain.
Please refer to Oracle documentation for this
http://docs.oracle.com/cd/E23943_01/apirefs.1111/e13952/taskhelp/jms_modules/foreign_servers/ConfigureForeignServers.html


Notes:

  1. For inbound use cases, both options are supported. For outbound use cases only, direct access is supported, but configuring the foreign server is not supported.
  2. The JMS Adapter enables you to interact with WebLogic Server JMS destination locations in a domain that are remote to the WebLogicServer domain where SOA is installed. 
There are two more options to move JMS messages between remote destinations.These options  are nothing to do with JCA JMS adapter but they are WLS administrative objects

  1. SAF(Store and Forward Agents)
  2. Bridges
SAF: SAF's let local producer reliably produce messages to remote destination irrespective of destination's availablity.
In SAF scenario, when producer produced the message and if remote destination is not reachable then messages are stored locally and forwared to remote destination later when that is available
 
Bridge:  This is similar to SAF but oracle recommendation is use it when we are connecting different messaging products(implemented by different vendors like Oracle and MS) or different implementations/versions of WLS messaging (like WLS 9.2 and WLS 10.3.x)

1 comment: