Weblogic EJB connection to external Tibco EMS JMS Queue

半城伤御伤魂 提交于 2019-12-01 00:34:49

Have finally achieved this - due to a bug in Weblogic 10.3 this isn't as simple as it should be.

  1. Create a foreign server with all the normal details (local/remote JNDI lookup names for destination and connection factories).

  2. Create a local WL user with the same name as the remote EMS user, including password.

  3. Create an ejb credential mapping (NOT security credential mapping)

    • do this by clicking on the relevant deployment, click on the relevant ejb name in the list, then Security tab then Credentials Mapping tab.
    • add the same name for WLS and Remote users (password doesn't seem to be necessary here).

Add the following sections in config files:

weblogic-ejb-jar.xml

At the bottom of this file, after the closing 'weblogic-enterprise-bean' tag and before the ending 'weblogic-ejb-jar' tag add the following:

<security-role-assignment>
    <role-name>rficonsumer</role-name>
    <principal-name>rdsuat</principal-name>
</security-role-assignment>

The 'rficonsumer' role only exists in these 2 config files and can be anything as long as it is consistent in all 3 sections described here. The principal-name 'rdsuat' must match the user created in the WL Admin console section and therefore must match the EMS queue user.

ejb-jar.xml

  1. In the 'message-driven' tag section for the relevant MDB add the following section at the end before the closing 'message-driven' tag:

    rficonsumer

  2. At the very end of the file, after the closing 'enterprise-beans' tag, before the ending 'ejb-jar' closing tag add the following:

    rficonsumer

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!