2

JBossに基づく現在のJ2EEプロジェクトでは、メッセージ駆動型BeanとサードパーティによってRARファイルとして提供されるJCAリソースアダプターを使用して、リモートシステムとインターフェースする必要があります。プロジェクト全体をEARファイルとしてJBossサーバーにパッケージ化してデプロイしたいと思います。特に、RARファイルはEARファイル内に埋め込まれている必要があり、グローバルに展開されるべきではありません。

これまでのところ、これらはすべて正常に機能していますが、RARファイルの参照方法には特に満足していません。たとえば、MDBにパッケージ化されているjboss.xmlは、現在次のようになっています。

<jboss>
   <enterprise-beans>
      <message-driven>
         <ejb-name>testBean1</ejb-name>
         <resource-adapter-name>test1.ear#thirdparty-1.0.rar</resource-adapter-name>
      </message-driven>
   </enterprise-beans>
</jboss>

これは通常は正常に機能しますが、EARファイルの名前が「test2.ear」に変更されると機能しなくなります。含まれているアーカイブの名前をハードコーディングせずに、埋め込まれたRARファイルを参照する方法はありますか?

編集:ほぼ2か月後、私はまだこの質問に対する本当の答えを見つけていません。周りに聞いてみると、「Mavenのプロパティとフィルタリングを使用する」と「EARにRARを含めない」という2つの役立つ提案しかありませんでした。現在、JBossでこれを適切に処理する方法はないのではないかと強く思います。だから私はそれをあきらめて、ここで得た唯一の答えを受け入れます。

4

1 に答える 1

2

Mavenを使用してビルドしていますか?その場合、earファイルに名前を付けるmavenプロパティを設定し、その名前を使用して、プレースホルダーを使用してリソースファイルに値を設定できます。

例:xxx

次に使用します

$ {ear.name} .ear#thirdparty-1.0.rar

プレースホルダーを持つリソースを設定していることを確認してください

このようなもの:

<build>
<resources>
  <resource>
    <directory>src/main/resources</directory>
    <filtering>true</filtering>
  </resource>
</resources>

于 2010-03-08T20:32:26.450 に答える