at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:190)

at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:468)

at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:456)

at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:423)

at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:398)

at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:120)

at org.teiid.adminapi.AdminFactory.createAdmin(AdminFactory.java:95) [teiid-admin-8.0.0.Final.jar:8.0.0.Final]

at com.lgc.dsl.services.producer.teiid.TeiidAdminManager.getAdmin(TeiidAdminManager.java:44) [com_lgc_dsdataserver.jar:]

In order to get rid of this error, I had to add the following dependency to teiid admin module.

<module name="org.jboss.as.controller-client"/>

I had to add a different dependency until Alpha1. Now that is already part of the module.xml that you ship. Is this a new dependency that should have been added to the module, or am I missing something?

You defining the "admin" as dependency in your WAR file? I am trying to understand why this is occurring. I thought above mentioned should have brought in through implicit dependency on the "cli" module in the "admin" module.

Ok, I see the issue. In maven when I added the dependency the other project it brings in all the implicit dependencies for build purposes. So I based module.xml on it. However, in AS7 module.xml class-loading, unless the "cli" module exposed the "org.jboss.as.controller-client" module as export = true in in its definition it will not be automatically exposed, thus the issue. Teiid should have direct dependeny on this module. When I tested, I always tested using the "adminshell" which brings in all the dependent jars (implicit and explicit) so it is not exposed there. Thank you for finding it. I will fix this for next release. I logged https://issues.jboss.org/browse/TEIID-2038

It is deployed as a module. JCA is able to load it and create connections to my database. However, I get ClassNotFoundExceptions at runtime while loading some class that is already part of the jdbc module. The only way I could work around this issue is to add a dependency on my jdbc driver module to teiid.main module. Here is what I did:

1. created a module com.lgc.ph.client (which includes all the jars it needs)

2. create a module com.lgc.ph.translator ( which has a dependency on com.lgc.ph.client exported="true")

When I try to access my vdb, I get a ClassNotFoundException from module teiid.main for one of the classes in the custom jdbc driver. I thought ironjacamer (JCA) loads the driver and creates a connection, and Teiid is just using the connection.

Even when I tried to make my module a global module the exception did not go away. I finally added the dependency to teiid as a workaround (which I do not like).

Can you post the exception? The behavior seems wrong. Teiid looks up the connection through the JNDI, so the connection semantics are outside of Teiid. So you have a RAR file and translator? or your translator is directly using the JDBC connection inside it?