AS7,ClassNotFoundException尽管更新了sun.jdk module.xml和ear的MANIFEST.MF

时间:2012-07-31 17:36:04

标签: jboss7.x

我需要从rt.jar访问com.sun.image.codec类,默认情况下JBoss 7会隐藏它们。 我的modules / sun / jdk / main / module.xml已更新为包含com / sun / image:

<module xmlns="urn:jboss:module:1.1" name="sun.jdk">
<resources>
    <!-- currently jboss modules has not way of importing services from
    classes.jar so we duplicate them here -->
    <resource-root path="service-loader-resources"/>
</resources>
<dependencies>
    <system export="true">
        <paths>
            <path name="com/sun/image/codec"/>

            <path name="com/sun/script/javascript"/>
            <path name="com/sun/jndi/dns"/>
            <path name="com/sun/jndi/ldap"/>
            <path name="com/sun/jndi/url"/>
            <path name="com/sun/jndi/url/dns"/>
            <path name="com/sun/security/auth"/>
            <path name="com/sun/security/auth/login"/>
            <path name="com/sun/security/auth/module"/>
            <path name="sun/misc"/>
            <path name="sun/io"/>
            <path name="sun/nio"/>
            <path name="sun/nio/ch"/>
            <path name="sun/security"/>
            <path name="sun/security/krb5"/>
            <path name="sun/util"/>
            <path name="sun/util/calendar"/>
            <path name="sun/util/locale"/>
            <path name="sun/security/provider"/>
            <path name="META-INF/services"/>
        </paths>
        <exports>
            <include-set>
                <path name="META-INF/services"/>
            </include-set>
        </exports>
    </system>
</dependencies>

在我耳边,我有META-INF / MANIFEST.MF:

Manifest-Version: 1.0
Dependencies: sun.jdk export

为了更好的衡量,我在启动时添加了-Djboss.modules.system.pkgs。

我已经尝试将MANIFEST.MF移动到耳内的应用程序jar中,但也没有用。 图像处理代码在无状态会话bean中,因此它不在战争中,但它在耳中的jar中。

我没有看到任何官方JBoss文档资源的最新文档,或任何提供解决方案的实用文档,或者特别谈到获取对默认隐藏的rt.jar类的访问权限。我已经尝试了各种各样的点点滴滴,我可以在这里和那里从论坛消息中提取,但到目前为止还没有任何工作。

1 个答案:

答案 0 :(得分:1)

尝试在jboss-deployment-structure.xml文件中添加以下代码作为依赖项。

<system export="true">
        <paths>
            <path name="com/sun/image/codec"/>
        <paths>
<system export="true">