-
Bug
-
Resolution: Done
-
Major
-
None
-
None
The TransactionsBootstrapDependencyInstaller installs a WeldTransactionServices and assumes the org.wildfly.transactions.global-default-local-provider service is available. In most cases this is okay. However, when you provision a full server, but have a configuration that does not include transactions an error can occur as the service is not installed. An example of the error message is:
2023-02-21 09:18:19,958 ERROR [org.jboss.as.server] (management-handler-thread - 1) WFLYSRV0021: Deploy of deployment "BeanContainerTestf8158626565fbef3d9e4adc5286456a4a68449b.war" was rolled back with the following failure message: { "WFLYCTL0412: Required services that are not installed:" => [ "jboss.deployment.unit.\"BeanContainerTestf8158626565fbef3d9e4adc5286456a4a68449b.war\".WeldBootstrapService", "org.wildfly.transactions.global-default-local-provider" ], "WFLYCTL0180: Services with missing/unavailable dependencies" => [ "jboss.deployment.unit.\"BeanContainerTestf8158626565fbef3d9e4adc5286456a4a68449b.war\".component.\"org.jboss.arquillian.protocol.servlet5.runner.ServletTestRunner\".WeldInstantiator is missing [jboss.deployment.unit.\"BeanContainerTestf8158626565fbef3d9e4adc5286456a4a68449b.war\".WeldBootstrapService]", "jboss.deployment.unit.\"BeanContainerTestf8158626565fbef3d9e4adc5286456a4a68449b.war\".WeldStartService is missing [jboss.deployment.unit.\"BeanContainerTestf8158626565fbef3d9e4adc5286456a4a68449b.war\".WeldBootstrapService]", "jboss.deployment.unit.\"BeanContainerTestf8158626565fbef3d9e4adc5286456a4a68449b.war\".beanmanager is missing [jboss.deployment.unit.\"BeanContainerTestf8158626565fbef3d9e4adc5286456a4a68449b.war\".WeldBootstrapService]", "jboss.deployment.unit.\"BeanContainerTestf8158626565fbef3d9e4adc5286456a4a68449b.war\".component.\"org.jboss.weld.module.web.servlet.WeldInitialListener\".WeldInstantiator is missing [jboss.deployment.unit.\"BeanContainerTestf8158626565fbef3d9e4adc5286456a4a68449b.war\".WeldBootstrapService]", "jboss.deployment.unit.\"BeanContainerTestf8158626565fbef3d9e4adc5286456a4a68449b.war\".component.\"org.jboss.weld.module.web.servlet.WeldTerminalListener\".WeldInstantiator is missing [jboss.deployment.unit.\"BeanContainerTestf8158626565fbef3d9e4adc5286456a4a68449b.war\".WeldBootstrapService]", "jboss.deployment.unit.\"BeanContainerTestf8158626565fbef3d9e4adc5286456a4a68449b.war\".WeldEndInitService is missing [jboss.deployment.unit.\"BeanContainerTestf8158626565fbef3d9e4adc5286456a4a68449b.war\".WeldBootstrapService]", "jboss.deployment.unit.\"BeanContainerTestf8158626565fbef3d9e4adc5286456a4a68449b.war\".WeldTransactionServices is missing [org.wildfly.transactions.global-default-local-provider]", "jboss.deployment.unit.\"BeanContainerTestf8158626565fbef3d9e4adc5286456a4a68449b.war\".component.\"jakarta.servlet.jsp.jstl.tlv.PermittedTaglibsTLV\".WeldInstantiator is missing [jboss.deployment.unit.\"BeanContainerTestf8158626565fbef3d9e4adc5286456a4a68449b.war\".WeldBootstrapService]", "jboss.deployment.unit.\"BeanContainerTestf8158626565fbef3d9e4adc5286456a4a68449b.war\".component.\"jakarta.servlet.jsp.jstl.tlv.ScriptFreeTLV\".WeldInstantiator is missing [jboss.deployment.unit.\"BeanContainerTestf8158626565fbef3d9e4adc5286456a4a68449b.war\".WeldBootstrapService]" ] }
This was found when working on WFLY-17648 and the Jakarta EE Core TCK. The fix is to check if the org.wildfly.transactions.global-default-local-provider capability exists. If it does not, simply do not register the service.
It looks like the SecurityBootstrapDependencyInstaller should be safe. It checks if security domain is null and returns a default if it is. This should be safe to always install.
- blocks
-
WFLY-17648 Create a Galleon Layer for the Jakarta EE Core Profile
- Closed