0

私はJB7のこの新しいクラスローディング機能を試しています.魔女はかなり良い音で、新しいプロジェクトに実装したいのですが、この時点でちょっと立ち往生しています...これは私が得たものです:

<module xmlns="urn:jboss:module:1.1" name="net.sourceforge.jasperreports">
    <resources>
        <resource-root path="commons-javaflow-20060411.jar"/>
        <resource-root path="iText-2.1.0.jar"/>
        <resource-root path="jasperreports-4.0.2.jar"/>
        <resource-root path="jcommon-1.0.15.jar"/>
        <resource-root path="jfreechart-1.0.14.jar"/>
    </resources>
    <dependencies>
        <module name="javax.api"/>
        <module name="org.apache.commons.beanutils"/>
        <module name="org.apache.commons.collection"/>
        <module name="org.apache.commons.digester" slot="1.7"/>
        <module name="org.apache.commons.logging"/>
    </dependencies>
</module>

依存関係がなければ、<module name="org.apache.commons.logging"/>この特定の jar がデフォルトでアプリケーションと共に既にデプロイされている場合でも、トレース スタックが欠落しているというエラーを示していたので、アプリの Java libs フォルダーから jar を取り出してモジュールを作成しました。モジュール net.sourceforge.jasperreports が必要なときにアプリケーションがハングするようになりました。

必要な場合、これは JBoss-deployment-structure です。

<jboss-deployment-structure>
    <deployment>
        <dependencies>
            <module name="org.apache.commons.collections"/>
            <module name="org.apache.commons.logging"/>
            <module name="net.sourceforge.jasperreports"/>
            <module name="org.apache.log4j"/>
        </dependencies>
        <resources>
            <resource-root path="."/>
        </resources>
    </deployment>
</jboss-deployment-structure>

その Java EE プロジェクトは戦争として展開されます。

4

1 に答える 1

1

私は持って<module name="org.apache.commons.collection"/> いる<module name="org.apache.commons.collections"/>

そして、それだけだった... "-.-

Jboss 構造のモジュールの読み込みに失敗すると、戦争の展開が失敗し、コンソールにエラーが表示されるため、奇妙なことに、この場合、「org.apache.commons.collection not found」に関する何かであるはずですが、どういうわけか、私のアプリは正常に実行されていましたが、使用された jasper レポート sevlet は、このモジュールの依存関係がないために永遠にハングアップしていました。

編集:Jboss依存関係が見つからない場合、エラーは表示されません。その行でハングするだけです。ただし、モジュールがリソースのロードに失敗すると、エラーが表示されます。

于 2012-12-14T16:45:32.923 に答える