Bug 1263571 - teiid-dashboard-builder.war doesn't work when replacing h2 connection for an Oracle db connection
teiid-dashboard-builder.war doesn't work when replacing h2 connection for an ...
Product: JBoss Data Virtualization 6
Classification: JBoss
Component: Installer, Documentation (Show other bugs)
Unspecified Unspecified
unspecified Severity unspecified
: ER2
: 6.3.0
Assigned To: Thomas Hauser
Jan Stastny
: Documentation
Depends On:
  Show dependency treegraph
Reported: 2015-09-16 04:30 EDT by Rafael Ruiz
Modified: 2017-05-08 13:59 EDT (History)
6 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
If a user wants to use a different data source for the dashboard builder, he or she must add a JDBC driver module name in the jboss-deployment-structure.xml configuration file in the teiid-dashboard-builder.war. Failure to do so will result in an exception.
Story Points: ---
Clone Of:
Last Closed: 2017-05-08 13:59:08 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Rafael Ruiz 2015-09-16 04:30:12 EDT
Description of problem:
We see this error:
2015-09-15 15:48:46,897 ERROR \[org.jboss.dashboard.error.ErrorManager\] (ServerService Thread Pool -- 80) UNEXPECTED ERROR.
Error id='1442324926895'
Error date='9/15/15 3:48 PM'

java.lang.ClassNotFoundException: oracle.sql.BLOB from [Module "deployment.teiid-dashboard-builder.war:main" from Service Module Loader]
        at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:213)
        at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:459)
        at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:408)
        at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:389)
        at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:134)

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
1. Install JDV 6.2 over an existing EAP 6.4
2. In domain.xml replace h2 datasource for Dashboard with an oracle datasource 
3. Error arise in deployment time

Actual results:
java.lang.ClassNotFoundException: oracle.sql.BLOB from [Module "deployment.teiid-dashboard-builder.war:main" from Service Module Loader]

Expected results:
Dashboard correctly deployed

Additional info:
It can be fixed adding Oracle driver dependency in jboss-deployment-structure.xml inside teiid-dashboard-builder.war
Comment 2 Van Halbert 2015-10-27 12:03:55 EDT
Can you confirm your issue if you follow the dashboard builder directions [1].  I realize these are for wildfly, but they still apply here.   Additionally, these are directions that I plan on getting added to the DV doc's for configuring dashboard builder.

[1]  https://github.com/droolsjbpm/dashboard-builder/tree/master/builder/src/main/wildfly8#preparing-the-environment-for-running-the-dashboard-builder
Comment 3 Rafael Ruiz 2015-11-17 12:22:40 EST
Yes, I confirm; against Oracle, I dont know against Postgresql. But I have found in same documentation the correct way of prepare it. It is in eap 6.4 documentation. I guess that dashbuilder over wildfly will need same dependency that over EAP 6.4.
The part that is missing in wildfly docs:
Modify the file dashboard-builder/builder/src/main/eap6_4/WEB-INF/jboss-deployment-structure.xml.

Add the following snippet of configuration inside the deployment tag, where jdbcDriverModuleName is the name of the JBoss JDBC driver module.

      <module name="jdbcDriverModuleName" />

just before explanation about configuration when different schemas exit in db.

[1] https://github.com/droolsjbpm/dashboard-builder/tree/master/builder/src/main/eap6_4
Comment 4 Thomas Hauser 2016-02-05 15:14:31 EST
Is this an installer issue? Does the installer need to add the aforementioned elements to the DV configuration?
Comment 7 Filip Elias 2016-07-12 06:28:58 EDT
It works. However it would not work for other databases. This should be documented. Something like "If a user wants to use different data source for dashboard builder, he must add a JDBC driver module name into the jboss-deployment-structure.xml in teiid-dashboard-builder.war."
Comment 8 Thomas Hauser 2016-07-18 09:45:21 EDT
Adding documentation component since the installer related portion of this BZ is solved.

Note You need to log in before you can comment on or make changes to this bug.