使用 WebSphere 連結來定義資源環境參照 JNDI 名稱

JBoss 專用部署描述子 jboss-web.xmljboss.xml 檔可能包含資源環境參照元素。 這些元素會將資源環境參照對映至 JNDI 名稱。 此規則會偵測 JBoss 資源環境參照 JNDI 名稱。 在原始檔掃描器中,此快速修正程式會將 JNDI 名稱移轉至 WebSphere Application Server 連結檔

偵測到的 jboss-web.xml 建構範例:

<jboss-web>
...
<resource-env-ref>
<resource-env-ref-name>jms/myQueue</resource-env-ref-name>
<jndi-name>jndi/myQueue</jndi-name>
</resource-env-ref>
...
</jboss-web>

對應的 web.xml 檔必須提供對應的資源環境參照。 以本例來說,web.xml 檔必須包含名稱為 jms/myQueueresource-env-ref

<web-app>
...
<resource-env-ref>
<resource-env-ref-name>jms/myQueue</resource-env-ref-name>
<resource-env-ref-type>javax.jms.Queue</resource-env-ref-type>
</resource-env-ref>
...
</web-app>

快速修正程式會將 JNDI 名稱儲存在連結檔中,且參照會與 web.xml 檔中的 <resource-env-ref> 元素產生關聯。

同樣地,對 jboss.xml EJB 建構來說,當 <resource-env-ref> 元素對應於 ejb-jar.xml 中特定 EJB 的 <resource-env-ref> 元素時,會將 JNDI 名稱儲存在 WebSphere Traditional 及 Liberty 連結中。

<jboss>
<enterprise-beans>
</session>
<ejb-name>MyBean</ejb-name>
...
<resource-env-ref>
<resource-env-ref-name>jms/myQueue</resource-env-ref-name>
<jndi-name>jndi/myQueue</jndi-name>
</resource-env-ref
...
</session>
</enterprise-beans>
</jboss>