Uploaded image for project: 'ODE'
  1. ODE
  2. ODE-474

Can't use JCA Flow while using Oracle EXTERNAL Jencks database connection.

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Minor
    • Resolution: Unresolved
    • 2.0
    • 2.0-beta3
    • JBI Integration
    • None
    • ServiceMix 3.3, Oracle DB Connection

    Description

      Using configuration:

      jndi.xml:
      <entry key="java:comp/env/jdbc/ode20">
      <bean id="odeDataSource" class="org.jencks.factory.ConnectionFactoryFactoryBean">
      <property name="managedConnectionFactory">
      <bean id="odeManagedConnectionFactory" class="org.jencks.tranql.DataSourceMCF">
      <property name="driverName" value="oracle.jdbc.driver.OracleDriver"/>
      <property name="url" value="jdbc:oracle:thin:@localhost:1521:XE"/>
      <property name="user" value="ode20"/>
      <property name="password" value="ode20"/>
      </bean>
      </property>
      <property name="connectionManager" ref="connectionManager"/>
      </bean>
      </entry>

      and selecting EXTERNAL connection in jbi.properties, there's exception:
      DEBUG - OdeLifeCycle - Starting BPEL server.
      DEBUG - OdeLifeCycle - ODE initializing
      WARN - JdbcDelegate - Unable to determine database dialect
      java.sql.SQLException
      at org.tranql.connector.jdbc.DataSource.getConnection(DataSource.java:61)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:585)
      at org.apache.ode.utils.LoggingInterceptor.invoke(LoggingInterceptor.java:58)
      at $Proxy81.getConnection(Unknown Source)
      at org.apache.ode.scheduler.simple.JdbcDelegate.getConnection(JdbcDelegate.java:254)
      at org.apache.ode.scheduler.simple.JdbcDelegate.guessDialect(JdbcDelegate.java:289)
      at org.apache.ode.scheduler.simple.JdbcDelegate.<init>(JdbcDelegate.java:78)
      at org.apache.ode.jbi.OdeLifeCycle.initBpelServer(OdeLifeCycle.java:223)
      at org.apache.ode.jbi.OdeLifeCycle.init(OdeLifeCycle.java:123)
      at org.apache.servicemix.jbi.framework.ComponentMBeanImpl.init(ComponentMBeanImpl.java:201)
      at org.apache.servicemix.jbi.framework.ComponentMBeanImpl.doStart(ComponentMBeanImpl.java:287)
      at org.apache.servicemix.jbi.framework.ComponentMBeanImpl.start(ComponentMBeanImpl.java:216)
      at org.apache.servicemix.jbi.framework.InstallationService.install(InstallationService.java:334)
      at org.apache.servicemix.jbi.framework.AutoDeploymentService.updateComponent(AutoDeploymentService.java:293)
      at org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive(AutoDeploymentService.java:253)
      at org.apache.servicemix.jbi.framework.AutoDeploymentService.monitorDirectory(AutoDeploymentService.java:668)
      at org.apache.servicemix.jbi.framework.AutoDeploymentService.access$800(AutoDeploymentService.java:63)
      at org.apache.servicemix.jbi.framework.AutoDeploymentService$1.run(AutoDeploymentService.java:632)
      at java.util.TimerThread.mainLoop(Timer.java:512)
      at java.util.TimerThread.run(Timer.java:462)
      Caused by: javax.resource.ResourceException: The pooling strategy does not match the MatchManagedConnections implementation. Please investigate and reconfigure this pool
      at org.apache.geronimo.connector.outbound.SinglePoolConnectionInterceptor.internalGetConnection(SinglePoolConnectionInterceptor.java:106)
      at org.apache.geronimo.connector.outbound.AbstractSinglePoolConnectionInterceptor.getConnection(AbstractSinglePoolConnectionInterceptor.java:78)
      at org.apache.geronimo.connector.outbound.TransactionEnlistingInterceptor.getConnection(TransactionEnlistingInterceptor.java:46)
      at org.apache.geronimo.connector.outbound.TransactionCachingInterceptor.getConnection(TransactionCachingInterceptor.java:96)
      at org.apache.geronimo.connector.outbound.ConnectionHandleInterceptor.getConnection(ConnectionHandleInterceptor.java:43)
      at org.apache.geronimo.connector.outbound.TCCLInterceptor.getConnection(TCCLInterceptor.java:39)
      at org.apache.geronimo.connector.outbound.ConnectionTrackingInterceptor.getConnection(ConnectionTrackingInterceptor.java:66)
      at org.apache.geronimo.connector.outbound.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:87)
      at org.tranql.connector.jdbc.DataSource.getConnection(DataSource.java:56)
      ... 22 more

      and ODE doesn't start.
      Disabling JCA Flow in servicemix.xml (commenting it out) resolves problem, but JCA Flow is needed to support transactions, so it should work.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              rrusin Rafal Rusin
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated: