IBM Support

PM70246: USING JPA-2.0 FEATURE WITHOUT THE JDBC-4.0 FEATURE RESULTS IN AN ERROR WHEN AN APPLICATION USES SERVER DEFINED DATA SOURCES

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • When attempting to access JPA functionality from within an
    application, the most common exception reported is
    
    org.apache.openjpa.persistence.ArgumentException: A JDBC
    Driver or DataSource class name must be specified in the
    ConnectionDriverName property.
    
    This exception will most likely be nested within another
    exception and may require examination of the console log to
    discover.  This exception is the reslt of the jdbc-4.0 feature
    having not been enabled.
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  All users of IBM WebSphere Application      *
    *                  Server Liberty Profile using the Java       *
    *                  Persistence API (JPA) feature.              *
    ****************************************************************
    * PROBLEM DESCRIPTION: Using the jpa-2.0 feature without the   *
    *                      jdbc-4.0 feature results in failures    *
    *                      when an application uses server         *
    *                      defined datasources.                    *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    Prior to this change, if the server.xml enables the jpa-2.0
    feature and a persistence.xml in an application uses a
    jta-data-source or non-jta-data-source, the server.xml
    required the jdbc-4.0 feature to be enabled as well.
    If the jdbc-4.0 feature was not enabled the application
    would fail with an exception or contain a caused by exception
    similar to this:
    Caused by: <openjpa-2.2.1-SNAPSHOT-r422266:1325904 fatal user
    error> org.apache.openjpa.persistence.ArgumentException: A
    JDBC Driver or DataSource class name must be specified in the
    ConnectionDriverName property. Available properties in
    configuration are "WsJpaJDBCConfigurationImpl@1ed2e55e: PDQ
    disabled: AccessIntent Task=default".
    at
    org.apache.openjpa.jdbc.schema.DataSourceFactory.newDataSource(D
    ataSourceFactory.java:72)
    at
    org.apache.openjpa.jdbc.conf.JDBCConfigurationImpl.createConnect
    ionFactory(JDBCConfigurationImpl.java:844)
    at
    org.apache.openjpa.jdbc.conf.JDBCConfigurationImpl.getDBDictiona
    ryInstance(JDBCConfigurationImpl.java:602)
    at
    org.apache.openjpa.jdbc.meta.MappingRepository.endConfiguration(
    MappingRepository.java:1510)
    at
    org.apache.openjpa.lib.conf.Configurations.configureInstance(Con
    figurations.java:518)
    at
    org.apache.openjpa.lib.conf.Configurations.configureInstance(Con
    figurations.java:443)
    at
    org.apache.openjpa.lib.conf.PluginValue.instantiate(PluginValue.
    java:104)
    at
    org.apache.openjpa.conf.MetaDataRepositoryValue.instantiate(Meta
    DataRepositoryValue.java:68)
    at
    org.apache.openjpa.lib.conf.ObjectValue.instantiate(ObjectValue.
    java:83)
    at
    org.apache.openjpa.conf.OpenJPAConfigurationImpl.newMetaDataRepo
    sitoryInstance(OpenJPAConfigurationImpl.java:967)
    at
    org.apache.openjpa.conf.OpenJPAConfigurationImpl.getMetaDataRepo
    sitoryInstance(OpenJPAConfigurationImpl.java:958)
    at
    org.apache.openjpa.kernel.AbstractBrokerFactory.makeReadOnly(Abs
    tractBrokerFactory.java:638)
    at
    org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(Abstra
    ctBrokerFactory.java:203)
    at
    org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(Dele
    gatingBrokerFactory.java:156)
    at
    org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEn
    tityManager(EntityManagerFactoryImpl.java:227)
    at
    com.ibm.ws.persistence.EntityManagerFactoryImpl.createEntityMana
    ger(EntityManagerFactoryImpl.java:50)
    at
    com.ibm.ws.jpa.management.WSJPAEMFactory.createEntityManager(WSJ
    PAEMFactory.java:61)
    at
    com.ibm.ws.jpa.management.WSJPAEMFactory.createEntityManager(WSJ
    PAEMFactory.java:35)
    

Problem conclusion

  • The jpa-2.0 feature now includes the jdbc-4.0 feature so it
    does not need to be enabled separately, it is automatically
    enabled by the jpa-2.0 feature.
    
    
    The fix for this APAR is currently targeted for inclusion in
    fix pack 8.5.0.1. Please refer to the Recommended Updates page
    for delivery information:
    http://www.ibm.com/support/docview.wss?rs=180&uid=swg27004980
    

Temporary fix

Comments

APAR Information

  • APAR number

    PM70246

  • Reported component name

    LIBERTY PROFILE

  • Reported component ID

    5724J0814

  • Reported release

    850

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2012-08-03

  • Closed date

    2012-09-06

  • Last modified date

    2012-09-06

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    LIBERTY PROFILE

  • Fixed component ID

    5724J0814

Applicable component levels

  • R850 PSY

       UP

[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSEQTP","label":"WebSphere Application Server"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"850","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
29 October 2021