无法使用Teiid作为数据源运行JasperReports Server报告

时间:2016-08-10 02:08:17

标签: jdbc jasperserver teiid

我已经使用Jaspersoft Studio成功查询了Teiid 9数据源,但是当部署到JasperReports Server 6.2时,报告会抛出这样的例外:

Caused by: org.teiid.core.TeiidRuntimeException: Remote javax.resource.ResourceException: IJ000461: Could not enlist in transaction on entering meta-aware object
        at org.jboss.jca.core.connectionmanager.tx.TxConnectionManagerImpl.managedConnectionReconnected(TxConnectionManagerImpl.java:561)
        at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.reconnectManagedConnection(AbstractConnectionManager.java:922)
        ... 52 more
Caused by: org.teiid.core.TeiidRuntimeException: Remote javax.transaction.SystemException: IJ000356: Failed to enlist: java.lang.Throwable: Unabled to enlist resource, see the previous warnings. tx=TransactionImple < ac, BasicAction: 0:ffff0a0064a4:-2b7b5a65:57a45632:4d7a status: ActionStatus.ABORT_ONLY >
        at org.jboss.jca.core.connectionmanager.listener.TxConnectionListener$TransactionSynchronization.checkEnlisted(TxConnectionListener.java:970)
        at org.jboss.jca.core.connectionmanager.listener.TxConnectionListener.enlist(TxConnectionListener.java:412)
        at org.jboss.jca.core.connectionmanager.tx.TxConnectionManagerImpl.managedConnectionReconnected(TxConnectionManagerImpl.java:554)
        ... 53 more

1 个答案:

答案 0 :(得分:0)

我设法通过使用JNDI数据源而不是JDBC来解决我的问题。

基本上我遵循了本指南:http://community.jaspersoft.com/wiki/how-add-new-jndi-connection-tomcat

web.xml的一部分

<resource-ref>
    <description>Teiid JasperServer repository</description>
    <res-ref-name>jdbc/teiid</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
</resource-ref>

context.xml的一部分

  <Resource name="jdbc/teiid"
          auth="Container"
          type="javax.sql.DataSource"
          maxActive="100"
          maxIdle="30"
          maxWait="10000"
          username="user"
          password="user"
          driverClassName="org.teiid.jdbc.TeiidDriver"
          validationQuery="select 1"
          testOnBorrow="true"
          url="jdbc:teiid:Portfolio@mm://localhost:31000" />
相关问题