[
https://issues.jboss.org/browse/WFCORE-4373?page=com.atlassian.jira.plugi...
]
Ilia Vassilev moved JBEAP-16554 to WFCORE-4373:
-----------------------------------------------
Project: WildFly Core (was: JBoss Enterprise Application Platform)
Key: WFCORE-4373 (was: JBEAP-16554)
Workflow: GIT Pull Request workflow (was: CDW with loose statuses v1)
Component/s: Modules
(was: Server)
Affects Version/s: 8.0.0.Final
(was: 7.2.0.GA)
Fix Version/s: (was: 7.2.2.GA)
org.jboss.logmanager module requires java.sql module
----------------------------------------------------
Key: WFCORE-4373
URL:
https://issues.jboss.org/browse/WFCORE-4373
Project: WildFly Core
Issue Type: Bug
Components: Modules
Affects Versions: 8.0.0.Final
Reporter: Ilia Vassilev
Assignee: Ilia Vassilev
Priority: Major
org.jboss.logmanager module requires java.sql module
{code}
Caused by: java.lang.ClassNotFoundException: java.sql.SQLException from [Module
"org.jboss.log4j.logmanager" version 1.1.6.Final-redhat-00001 from local module
loader @7d3a22a9 (finder: local module finder @1d082e88 (roots:
/opt/jboss/modules,/opt/jboss/modules/system/layers/base))]
{code}
It looks like in EAP 6.4 java.* was visible to everything. In EAP 7.2 with JBoss Modules
changes likely due to JDK 11 modular changes, it looks like java.* is no longer just
visible and JBoss Modules has some internal modules such as java.sql which would be needed
to see these classes.
Tattletale says that logmanager jar has this class org.apache.log4j.jdbc.JDBCAppender
which uses java.sql.* , so we should add a dependency on java.sql (javax.sql.api exports
java.sql , but javax.sql.api module is marked deprecated)
EAP 6.4
{code}
<module xmlns="urn:jboss:module:1.1"
name="org.jboss.log4j.logmanager">
<resources>
<resource-root
path="log4j-jboss-logmanager-1.1.4.Final-redhat-1.jar"/>
<!-- Insert resources here -->
</resources>
<dependencies>
<module name="javax.api"/>
<module name="javax.mail.api" optional="true"/>
<module name="javax.jms.api" optional="true"/>
<module name="org.dom4j" optional="true"/>
<module name="org.jboss.logmanager"/>
<module name="org.jboss.modules"/>
</dependencies>
</module>
{code}
{code}
grep -r java.sql `f module.xml`
<nothing>
{code}
EAP 7.2:
{code}
<module name="org.jboss.log4j.logmanager"
xmlns="urn:jboss:module:1.8">
<properties>
<property name="jboss.api" value="private"/>
</properties>
<resources>
<resource-root
path="log4j-jboss-logmanager-1.1.6.Final-redhat-00001.jar"/>
</resources>
<dependencies>
<!-- for java.beans -->
<module name="java.desktop"/>
<module name="java.logging"/>
<module name="java.xml"/>
<module name="javax.mail.api" optional="true"/>
<module name="javax.jms.api" optional="true"/>
<module name="org.dom4j" optional="true"/>
<module name="org.jboss.logmanager"/>
<module name="org.jboss.modules"/>
</dependencies>
</module>
{code}
{code}
grep -r java.sql `f module.xml`
./modules/system/layers/base/sun/jdk/main/module.xml: <!-- Internal to
java.sql.rowset -->
./modules/system/layers/base/org/wildfly/extension/elytron/main/module.xml:
<module name="java.sql"/>
./modules/system/layers/base/org/wildfly/security/elytron-private/main/module.xml:
<module name="java.sql"/>
./modules/system/layers/base/io/undertow/core/main/module.xml: <module
name="java.sql"/>
./modules/system/layers/base/javax/sql/api/main/module.xml: <module
name="java.sql" export="true"/>
{code}
--
This message was sent by Atlassian Jira
(v7.12.1#712002)