I think this is wrong...
XAResourceRecoveryServiceConfigurator is installed for all caches, not just ones with the ones with the component=transaction child resource. That's basically ok because its accept and get methods only do things if this.cache.get().getCacheConfiguration().transaction().recovery().enabled(). But, the problem is the service dependency on the XAResourceRecoveryRegistry service the transaction subsystem provides is always added, so even if is wouldn't be used the dependency is added.
WFLY-11167 will make it possible to correct this by 1) doing capability checking before adding the service dependency and 2) adding a capability requirement in TransactionResourceDefinition.