问题
I have a wildfly server 8 and in the log I get periodicaly those two warnings :
2014-06-10 12:01:19,255 WARN [org.jboss.jca.core.tx.jbossts.XAResourceRecoveryImpl] (Periodic Recovery) IJ000904: No security domain defined for crash recovery: java:jboss/datasources/sevicesDS
2014-06-10 12:01:19,256 WARN [org.jboss.jca.core.tx.jbossts.XAResourceRecoveryImpl] (Periodic Recovery) IJ000905: Subject for crash recovery was null: java:jboss/datasources/sevicesDS
my datasource config:
<xa-datasource jndi-name="java:jboss/datasources/sevicesDS" pool-name="sevicesDS" enabled="true" use-java-context="true">
<xa-datasource-property name="URL">
jdbc:mysql://my.server.local:3306/FOUR_PM__SERVICES?useUnicode=true&characterEncoding=UTF-8
</xa-datasource-property>
<driver>mysql</driver>
<transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation>
<xa-pool>
<min-pool-size>1</min-pool-size>
<max-pool-size>10</max-pool-size>
<prefill>true</prefill>
</xa-pool>
<security>
<user-name>username</user-name>
</security>
<statement>
<prepared-statement-cache-size>10</prepared-statement-cache-size>
<share-prepared-statements>true</share-prepared-statements>
</statement>
</xa-datasource>
回答1:
I've checked that and this is a bug in Narayana. I've raised a jira about that. You can check it here: https://issues.jboss.org/browse/JBTM-2190
Unfortunately the WARNING means that recovery is not run against that xa datasource. The workaround is to define password for connection despite you wouldn't need it for connecting to DB. And then add that in the security tag.
来源:https://stackoverflow.com/questions/24138036/wildfly-xa-transaction-warning-no-security-domain-defined-for-crash-recovery