5

次の問題は、JBossAS7.1開発者ガイドです。

ResourceBundleの場所の変更以前のバージョンのASでは、JBOSS_HOME / server //conf/がクラスパスで使用可能でした。したがって、その場所にあるプロパティファイルは、アプリケーションのクラスパスで使用できました。

AS7では、これらのプロパティをクラスパスで使用できるようにするには、アプリケーション内でそれらをパッケージ化します。たとえば、.warをデプロイする場合は、それらのプロパティをWAR WEB-INF /classes/フォルダーにパッケージ化します。これらのプロパティを.ear内のすべてのコンポーネントにアクセスできるようにする場合は、それらを.jarのルートにパッケージ化し、そのjarをEARlib/フォルダーに配置します。

ただし、リソースファイルが多すぎる場合、この方法はあまり適切ではありません。すべてのリソースファイルをjarまたはearにパッケージ化することはできません。

新しいクラスローディングメソッドの場合-モジュール。私は次の方法を試してみます:

module.xmlファイルを作成します..instnacecustom.myconfigのモジュール名を選択します

<resources>
    <resource-root path="."/>
    <!-- Insert resources here -->
</resources>

<dependencies>     
</dependencies> </module>   In your jboss-deployment-structure.xml include this module to your app
<jboss-deployment-structure>
<ear-subdeployments-isolated>false</ear-subdeployments-isolated>
<deployment>
    <dependencies>
        <module name="custom.myconfig/>
    </dependencies>
    <resources>
    </resources>
</deployment>

<sub-deployment name="My_WAR.war">
    <dependencies>
        <module name="custom.myconfig" />
    </dependencies>
</sub-deployment>

https://community.jboss.org/message/723631

しかし、[resource-root path = "" C:\resourcefolder"]のように絶対パスをパスに設定できないことがわかりました。

つまり、JBossAS7のすべてのリソースファイルも含める必要があります。

JBossAS 5.x-6.xでは非常に簡単で、「C:\resourcefolder」のようなフォルダパスをクラスパスに追加するだけでOKです。しかし、それはJBossAS7では不可能な任務のようです。

4

1 に答える 1

2

最後に、リソースフォルダをJBossAS7....にソフトリンクします。

Linux:

In -s

ウィンドウズ:

MKLINK /D

また

Junction.exe
于 2012-06-07T08:48:43.727 に答える