Uploaded image for project: 'TomEE'
  1. TomEE
  2. TOMEE-1337

Usage of com.mysql.jdbc.jdbc2.optional.MysqlXADataSource in Tomee 1.7.0 not possible

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Auto Closed
    • 1.7.0
    • None
    • None
    • None
    • Debian GNU/Linux 7.x 64bit
      Oracle Java 8u20 64 bit
      Mysql 5.5.38

    Description

      If you want to use the mysql xa datasource, the configuration parameters are ignored.

      To reproduce:
      Install mysql 5.5
      Install tomee.
      Create a database in mysql.
      Modify the tomee.xml like this.

      <Resource id="repairDataSource" type="javax.sql.DataSource">
        JdbcDriver com.mysql.jdbc.jdbc2.optional.MysqlXADataSource
        JdbcUrl jdbc:mysql://localhost/database
        UserName YYYY
        Password XXXX
        JtaManaged true
      </Resource>
      

      Start tomee.
      You will see some warnings in the log like this.
      [main] INFO unknown.jul.logger - Creating Resource(id=repairDataSource)
      [main] WARN unknown.jul.logger - Property "JdbcUrl" not supported by "repairDataSource"
      WARN unknown.jul.logger - Property "UserName" not supported by "repairDataSource"
      WARN unknown.jul.logger - Property "Password" not supported by "repairDataSource"
      WARN unknown.jul.logger - Property "PasswordCipher" not supported by "repairDataSource"
      WARN unknown.jul.logger - Property "ConnectionProperties" not supported by "repairDataSource"
      WARN unknown.jul.logger - Property "DefaultAutoCommit" not supported by "repairDataSource"
      WARN unknown.jul.logger - Property "DefaultReadOnly" not supported by "repairDataSource"
      WARN unknown.jul.logger - Property "InitialSize" not supported by "repairDataSource"
      WARN unknown.jul.logger - Property "MaxActive" not supported by "repairDataSource"
      WARN unknown.jul.logger - Property "MaxIdle" not supported by "repairDataSource"
      WARN unknown.jul.logger - Property "MinIdle" not supported by "repairDataSource"
      WARN unknown.jul.logger - Property "ValidationQuery" not supported by "repairDataSource"
      WARN unknown.jul.logger - Property "TestOnBorrow" not supported by "repairDataSource"
      WARN unknown.jul.logger - Property "TestOnReturn" not supported by "repairDataSource"
      WARN unknown.jul.logger - Property "TestWhileIdle" not supported by "repairDataSource"
      WARN unknown.jul.logger - Property "NumTestsPerEvictionRun" not supported by "repairDataSource"
      WARN unknown.jul.logger - Property "PoolPreparedStatements" not supported by "repairDataSource"
      WARN unknown.jul.logger - Property "MaxOpenPreparedStatements" not supported by "repairDataSource"
      WARN unknown.jul.logger - Property "AccessToUnderlyingConnectionAllowed" not supported by "repairDataSource"

      The DataSoruce itself can be discovered via JNDI in the application but is not configured probably.
      A usage results in a SQL Exception, saying user 'sa' has no access rights in the database.

      It seams that the configuration parameters are ignored and some default values from HSQLDB are used.

      Using the "JdbcDriver com.mysql.jdbc.Driver" solves the issue, but this driver does not support any XA abilities.

      Attachments

        1. wrong-source-with-username.png
          81 kB
          Oliver Guenther
        2. catalina.out
          21 kB
          Oliver Guenther
        3. wrong-source.png
          116 kB
          Oliver Guenther

        Activity

          People

            Unassigned Unassigned
            oliver.guenther Oliver Guenther
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: