簡體   English   中英

如何從Websphere服務器連接到Weblogic JMS?

[英]How do I connect to Weblogic JMS from Websphere server?

我使用以下方法創建了一個小型獨立客戶端:

weblogic.jndi.WLInitialContextFactory
t3://weblogic-server:7001

jms.xyz.jmsXyzCf
jms/xyz/jmsXyzLogQueue

它可以完美地工作。

當嘗試從Websphere服務器運行相同的代碼時,我得到NullPointerException 我了解發生這種情況是因為我在類路徑中沒有weblogic類:

Caused by: java.lang.NullPointerException
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:235)
at javax.naming.InitialContext.initializeDefaultInitCtx(InitialContext.java:327)
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:357)
at javax.naming.InitialContext.internalInit(InitialContext.java:295)
at javax.naming.InitialContext.(InitialContext.java:212)

當我嘗試添加它們時,出現一些“安全性”錯誤

Current Java 2 Security policy reported a potential violation of Java 2 Security Permission. 

java.security.AccessControlException: Access denied (java.lang.RuntimePermission exitVM.0)
at java.security.AccessController.checkPermission(AccessController.java:108)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:533)
at com.ibm.ws.security.core.SecurityManager.checkPermission(SecurityManager.java:211)
at java.lang.SecurityManager.checkExit(SecurityManager.java:745)
at java.lang.Runtime.exit(Runtime.java:100)
at java.lang.System.exit(System.java:297)

作為最后的資源,我嘗試使用Websphere自己的上下文工廠進行連接: com.ibm.websphere.naming.WsnInitialContextFactory但是它當然會失敗,因為它不了解t3。

如何從Websphere連接到Weblogic JMS?

WebSphere並不是以其友好的使用第三方實現來運行系統級功能(例如JNDI)而聞名。 最后,您將必須使用WebSphere的類(包括WebSphere的InitialContextFactory實現)。

當在WebSphere下運行時,您不需要(實際上不應該 )顯式指定InitialContextFactory實現。 WebSphere可以(並且應該)自己總結。

如果我理解正確,那么您正在嘗試從WebSphere服務器進程內連接到WebLogic JMS管理對象。 我能想到的唯一方法是獲取WebLogic JMS的實現類並將其添加為JMS提供程序,然后使用JNDI進行查找。 不過,我很樂意接受糾正。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM