我经常收到如下警告。 我们正在使用的Jboss EAP 6.x.x。
2016-09-06 13:20:35,584 WARNING [com.sun.genericjmsra] JBAS011843: Failed instantiate InitialContextFactory com.tibco.tibjms.naming.TibjmsInitialContextFactory from classloader ModuleClassLoader for Module "org.jboss.jts:main" from local module loader @353aa6fe (finder: local module finder @1da988ff (roots: /opt/pest3/jboss-eap-6.1.1/modules,/opt/pest3/jboss-eap-6.1.1/modules/system/layers/base)): javax.resource.spi.InvalidPropertyException: JBAS011843: Failed instantiate InitialContextFactory com.tibco.tibjms.naming.TibjmsInitialContextFactory from classloader ModuleClassLoader for Module "org.jboss.jts:main" from local module loader @353aa6fe (finder: local module finder @1da988ff (roots: /opt/pest3/jboss-eap-6.1.1/modules,/opt/pest3/jboss-eap-6.1.1/modules/system/layers/base))
at com.sun.genericra.util.ExceptionUtils.newInvalidPropertyException(ExceptionUtils.java:42)
at com.sun.genericra.util.ObjectBuilderFactory$JndiObjectBuilder.createObject(ObjectBuilderFactory.java:100)
at com.sun.genericra.util.ObjectBuilder.build(ObjectBuilder.java:99)
at com.sun.genericra.inbound.AbstractConsumer.initializeAdministeredObjects(AbstractConsumer.java:95)
at com.sun.genericra.inbound.AbstractConsumer.<init>(AbstractConsumer.java:63)
at com.sun.genericra.inbound.async.EndpointConsumer.<init>(EndpointConsumer.java:57)
at com.sun.genericra.inbound.EndpointConsumerFactory.createEndpointConsumer(EndpointConsumerFactory.java:45)
at com.sun.genericra.inbound.EndpointConsumerFactory.createEndpointConsumer(EndpointConsumerFactory.java:58)
at com.sun.genericra.GenericJMSRA.getXAResources(GenericJMSRA.java:279)
at org.jboss.jca.core.tx.jbossts.XAResourceRecoveryInflowImpl.getXAResources(XAResourceRecoveryInflowImpl.java:96)
at com.arjuna.ats.internal.jbossatx.jta.XAResourceRecoveryHelperWrapper.getXAResources(XAResourceRecoveryHelperWrapper.java:51) [jbossjts-integration-4.17.7.Final-redhat-4.jar:4.17.7.Final-redhat-4]
at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.resourceInitiatedRecoveryForRecoveryHelpers(XARecoveryModule.java:500) [jbossjts-jacorb-4.17.7.Final-redhat-4.jar:4.17.7.Final-redhat-4]
at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.periodicWorkFirstPass(XARecoveryModule.java:158) [jbossjts-jacorb-4.17.7.Final-redhat-4.jar:4.17.7.Final-redhat-4]
at com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.doWorkInternal(PeriodicRecovery.java:743) [jbossjts-jacorb-4.17.7.Final-redhat-4.jar:4.17.7.Final-redhat-4]
at com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.run(PeriodicRecovery.java:371) [jbossjts-jacorb-4.17.7.Final-redhat-4.jar:4.17.7.Final-redhat-4]
Caused by: javax.naming.NamingException: JBAS011843: Failed instantiate InitialContextFactory com.tibco.tibjms.naming.TibjmsInitialContextFactory from classloader ModuleClassLoader for Module "org.jboss.jts:main" from local module loader @353aa6fe (finder: local module finder @1da988ff (roots: /opt/pest3/jboss-eap-6.1.1/modules,/opt/pest3/jboss-eap-6.1.1/modules/system/layers/base))
at org.jboss.as.naming.InitialContextFactoryBuilder.createInitialContextFactory(InitialContextFactoryBuilder.java:64)
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:681) [rt.jar:1.7.0_45]
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:307) [rt.jar:1.7.0_45]
at javax.naming.InitialContext.init(InitialContext.java:242) [rt.jar:1.7.0_45]
at javax.naming.InitialContext.<init>(InitialContext.java:216) [rt.jar:1.7.0_45]
at com.sun.genericra.util.ObjectBuilderFactory$JndiObjectBuilder.createObject(ObjectBuilderFactory.java:95)
... 13 more
我的独立xml看起来像这样
<subsystem xmlns="urn:jboss:domain:datasources:1.1">
<datasources>
<datasource jta="false" jndi-name="java:jboss/PestalozziFirebird" pool-name="PestalozziFirebird" enabled="true" use-ccm="false">
<connection-url>jdbc:firebirdsql:vmh-lcag-pest01-icapsit.lsy.fra.dlh.de/3050:BIS_PUBLISH_ICAP_LAP</connection-url>
<driver-class>org.firebirdsql.jdbc.FBDriver</driver-class>
<driver>jaybird-2.2.3.jar</driver>
<pool>
<min-pool-size>3</min-pool-size>
<max-pool-size>10</max-pool-size>
<flush-strategy>EntirePool</flush-strategy>
</pool>
<security>
<user-name>xxx</user-name>
<password>xxx</password>
</security>
<validation>
<check-valid-connection-sql>SELECT CAST(1 as INTEGER) FROM rdb$database</check-valid-connection-sql>
<validate-on-match>true</validate-on-match>
<background-validation>true</background-validation>
<background-validation-millis>60000</background-validation-millis>
</validation>
<timeout>
<idle-timeout-minutes>20000</idle-timeout-minutes>
</timeout>
<statement>
<share-prepared-statements>false</share-prepared-statements>
</statement>
</datasource>
<drivers>
<driver name="firebirdsql" module="org.firebirdsql">
<xa-datasource-class>org.firebirdsql.jdbc.FBDriver</xa-datasource-class>
</driver>
<driver name="h2" module="com.h2database.h2">
<xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class>
</driver>
<driver name="oracle" module="com.oracle.ojdbc6">
<driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
</driver>
</drivers>
</datasources>
</subsystem>
实际上我正在尝试将bean中托管的代码更改为托管容器,我已经使用了所有XA事务和连接字符串。 但我不太清楚为什么会出现这种警告。
看起来我需要安排XAResource恢复,不知道我该怎么办。 请帮帮我。
更新..
<subsystem xmlns="urn:jboss:domain:resource-adapters:1.1">
<resource-adapters>
<resource-adapter id="genericra.rar">
<archive>
genericra.rar
</archive>
<transaction-support>XATransaction</transaction-support>
<config-property name="LogLevel">
info
</config-property>
<config-property name="ProviderIntegrationMode">
jndi
</config-property>
<config-property name="Password">
intPestalozzi456
</config-property>
<config-property name="UserName">
pestalozziInt
</config-property>
<config-property name="JndiProperties">
java.naming.factory.url.pkgs=com.tibco.tibjms.naming,java.naming.factory.initial=com.tibco.tibjms.naming.TibjmsInitialContextFactory,java.naming.provider.url=tcp://vmh-lcag-eai04-test.lsy.fra.dlh.de:52706,java.naming.security.credentials=tstPestalozzi456,java.naming.security.principal=pestalozziTst
</config-property>
</resource-adapter>
</resource-adapters>
</subsystem>
先谢谢