【问题标题】:custom JCR module not used by wildflyWildfly 未使用自定义 JCR 模块
【发布时间】:2014-05-24 13:23:50
【问题描述】:

我正在尝试在 Wildfly 8.0 服务器上将 jackrabbit 2.6.4 作为 JCA 运行。它已经在 J​​boss 7.1 上运行。 jackrabbit 的一项重要要求是 JCR 2.0 api (jcr-2.0.jar)。 我将其配置为自定义模块,并注意结构“modules\javax\jcr\main”,包括“module.xml”文件

在我的 Wildfly 配置中,我以这种方式配置了 JCR:

<subsystem xmlns="urn:jboss:domain:resource-adapters:1.0">
        <resource-adapters>
            <resource-adapter id="jackrabbit-jca-2.6.4.rar">
                <archive>
                    jackrabbit-jca-2.6.4.rar
                </archive>
                <transaction-support>XATransaction</transaction-support>
                <connection-definitions>
                    <connection-definition class-name="org.apache.jackrabbit.jca.JCAManagedConnectionFactory" jndi-name="jcrJCA" enabled="true" use-java-context="true" pool-name="jackrabbit-jca-x.x.x_rar-Pool" use-ccm="true">
                        <config-property name="configFile">
                            E:\jackrabbit\repository.xml
                        </config-property>
                        <config-property name="bindSessionToTransaction">
                            true
                        </config-property>
                        <config-property name="homeDir">
                            E:\jackrabbit\repository
                        </config-property>
                    </connection-definition>
                </connection-definitions>
            </resource-adapter>
        </resource-adapters>
    </subsystem>

启动过程中出现的错误是:

    15:17:22,880 ERROR [org.jboss.msc.service.fail] (ServerService Thread Pool -- 52) MSC000001: Failed to start service jboss.ra.deployer."jackrabbit-jca
-2.6.4.rar": org.jboss.msc.service.StartException in service jboss.ra.deployer."jackrabbit-jca-2.6.4.rar": JBAS010446: Failed to start RA deployment [
jackrabbit-jca-2.6.4.rar]
        at org.jboss.as.connector.services.resourceadapters.deployment.ResourceAdapterDeploymentService$1.run(ResourceAdapterDeploymentService.java:15
7)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_45]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_45]
        at java.lang.Thread.run(Thread.java:744) [rt.jar:1.7.0_45]
        at org.jboss.threads.JBossThread.run(JBossThread.java:122)
Caused by: org.jboss.jca.deployers.common.DeployException: IJ020056: Deployment failed: file:/E:/wildfly-8.0.0.Final/standalone/tmp/vfs/temp/t
emp3f670452d6c2c4d4/jackrabbit-jca-2.6.4.rar-420b5a12409fe1b4/contents/
        at org.jboss.jca.deployers.common.AbstractResourceAdapterDeployer.createObjectsAndInjectValue(AbstractResourceAdapterDeployer.java:2611) [iron
jacamar-deployers-common-1.1.3.Final.jar:1.1.3.Final]
        at org.jboss.jca.deployers.common.AbstractResourceAdapterDeployer.createObjectsAndInjectValue(AbstractResourceAdapterDeployer.java:1171) [iron
jacamar-deployers-common-1.1.3.Final.jar:1.1.3.Final]
        at org.jboss.as.connector.services.resourceadapters.deployment.ResourceAdapterDeploymentService$AS7RaDeployer.doDeploy(ResourceAdapterDeployme
ntService.java:209)
        at org.jboss.as.connector.services.resourceadapters.deployment.ResourceAdapterDeploymentService.start(ResourceAdapterDeploymentService.java:11
8)
        at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948)
        at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_45]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_45]
        at java.lang.Thread.run(Thread.java:744) [rt.jar:1.7.0_45]
Caused by: java.lang.NoClassDefFoundError: javax/jcr/RepositoryException
        at java.lang.Class.forName0(Native Method) [rt.jar:1.7.0_45]
        at java.lang.Class.forName(Class.java:270) [rt.jar:1.7.0_45]
        at org.jboss.jca.validator.ValidateClass.<init>(ValidateClass.java:88) [ironjacamar-validator-1.1.3.Final.jar:1.1.3.Final]
        at org.jboss.jca.deployers.common.AbstractResourceAdapterDeployer.createObjectsAndInjectValue(AbstractResourceAdapterDeployer.java:1938) [iron
jacamar-deployers-common-1.1.3.Final.jar:1.1.3.Final]
        ... 8 more
Caused by: java.lang.ClassNotFoundException: javax.jcr.RepositoryException from [Module "deployment.jackrabbit-jca-2.6.4.rar:main" from Service Module
 Loader]
        at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:197) [jboss-modules.jar:1.3.0.Final]
        at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:443) [jboss-modules.jar:1.3.0.Final]
        at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:431) [jboss-modules.jar:1.3.0.Final]
        at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:373) [jboss-modules.jar:1.3.0.Final]
        at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:118) [jboss-modules.jar:1.3.0.Final]
        ... 12 more

因此,我认为未正确找到/使用 JCR 模块,因为“javax.jcr.RepositoryException”类位于模块 jar 中。 我怎么能告诉wildfly这个模块必须使用? 有什么解决方法吗? 非常感谢您的任何帮助

亲切的问候,

肖恩

【问题讨论】:

    标签: module wildfly


    【解决方案1】:

    我按照链接下的指南进行操作 Jackrabbit on JBoss 7

    就我而言,问题是,我没有修改 rar 中的清单 我必须添加行

    Dependencies: javax.jcr export,org.slf4j
    

    最好的问候 谢恩

    【讨论】:

      猜你喜欢
      • 2022-01-07
      • 2014-07-13
      • 2020-04-16
      • 2016-02-07
      • 2015-08-10
      • 1970-01-01
      • 2016-03-09
      • 2018-02-23
      • 1970-01-01
      相关资源
      最近更新 更多