4

次のような複数のEJBjarを備えたEARがあります。

  • module1.jar
  • module2.jar

しかし、ログにアプリケーションをデプロイすると、のejb-sがmodule1.jar奇妙なJNDI名でデプロイされていることがわかります。

  • EJB ejb1のポータブルJNDI名:java:global/myappl/module1ejb/ejb1
  • EJB ejb2のポータブルJNDI名:java:global/myappl/module1ejb/ejb2

ただし、残りのモジュールは定期的にデプロイされます(ejbモジュール名で終わることはありません)。

  • EJB ejb1のポータブルJNDI名:java:global/myappl/module2/ejb1
  • EJB ejb2のポータブルJNDI名:java:global/myappl/module2/ejb2

GlassfishがJNDIで終わる「ejb」を追加する理由は何ですか?

Glassfishバージョン:3.1.1

何度か再起動したり、生成されたものを削除したり、osgi-cacheなどを削除したりしても役に立ちませんでした。

4

1 に答える 1

4

最後に、私は問題を発見しました: のapplication.xml定義でmodule1は、時々倍増していました:

<module>
    <ejb>module1.jar</ejb>
</module>
...
<module>
    <ejb>module1.jar</ejb>
</module>

重複を取り除いた後、JNDI 名は再び正規のものになりました。

于 2012-10-01T14:01:08.723 に答える