Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 319727 - JMS Cache Coordination in Cluster
Summary: JMS Cache Coordination in Cluster
Status: RESOLVED FIXED
Alias: None
Product: z_Archived
Classification: Eclipse Foundation
Component: Eclipselink (show other bugs)
Version: unspecified   Edit
Hardware: PC Windows XP
: P2 normal (vote)
Target Milestone: ---   Edit
Assignee: Nobody - feel free to take it CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-07-13 10:20 EDT by Daniel Lo CLA
Modified: 2022-06-09 10:29 EDT (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Daniel Lo CLA 2010-07-13 10:20:22 EDT
When we define EclipseLink cache coordination with JMS in WebLogic Cluster, we want to take the advantage that the JNDI names of the Connection Factory and Distributed Topic being replicated on every managed WLS in the cluster, so that our J2EE applications don't need to pass the WLS ip-address, username/password to JMSTopicTransportManager, but our developer found him had to, because of the following code from JMSTopicTransportManager:

public Context getRemoteHostContext(String remoteHostURL) {
Hashtable remoteProperties = (Hashtable)getRemoteContextProperties().clone();
remoteProperties.put(Context.PROVIDER_URL, remoteHostURL);
Object[] args = { remoteProperties };
rcm.logDebug("context_props_for_remote_lookup", args);

// decrypt password just before looking up context
remoteProperties.put(Context.SECURITY_CREDENTIALS, decrypt(getPassword()));

return getContext(remoteProperties);
}

Can this code be fixed so that when the remoteHostURL, username and password are not set then don't send them to the InitialContext? Our test code shows that we can find the Connection Factory and Topic on all the managed WLS on different machines with the local context:

InitialContext initContext = new javax.naming.InitialContext();
TopicConnectionFactory topicConnectionFactory = (TopicConnectionFactory)initContext.lookup("POMSConnectionFactory");

By taking advantage of the JNDI name replication not only we can reduce the amount of configurations, we can also reduce the single point of failure.
Comment 1 Tom Ware CLA 2010-08-09 13:53:23 EDT
Setting target and priority.  See the following page for details of the meanings of these fields:

http://wiki.eclipse.org/EclipseLink/Development/Bugs/Guidelines
Comment 2 James Sutherland CLA 2010-09-27 15:30:40 EDT
This should be fixed, but I could not figure out how to configure a cluster JMS topic in WLS, so please verify this now works.
Comment 3 James Sutherland CLA 2010-09-27 15:30:57 EDT
Please reopen this bug if it does not work.
Comment 4 Eclipse Webmaster CLA 2022-06-09 10:29:25 EDT
The Eclipselink project has moved to Github: https://github.com/eclipse-ee4j/eclipselink