[ 
https://issues.apache.org/jira/browse/OPENJPA-2878?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17385627#comment-17385627
 ] 

Romain Manni-Bucau commented on OPENJPA-2878:
---------------------------------------------

Tomee autosets a lot of things in units, so a tomee bug ;)

> <openjpa-3.1.2-r66d2a72 fatal user error> 
> org.apache.openjpa.persistence.ArgumentException: The persistence provider is 
> attempting to use properties in the persistence.xml file to resolve the data 
> source ...
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: OPENJPA-2878
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-2878
>             Project: OpenJPA
>          Issue Type: Bug
>          Components: jpa
>    Affects Versions: 3.1.2
>            Reporter: Johan Parker
>            Priority: Major
>
>  
> {code:java}
> <openjpa-3.2.0-r6f721f6 fatal user error> 
> org.apache.openjpa.persistence.ArgumentException: The persistence provider is 
> attempting to use properties in the persistence.xml file to resolve the data 
> source. A Java Database Connectivity (JDBC) driver or data source class name 
> must be specified in the openjpa.ConnectionDriverName or 
> javax.persistence.jdbc.driver property. The following properties are 
> available in the configuration: 
> "org.apache.openjpa.jdbc.conf.JDBCConfigurationImpl@393fa2d".
>       
> org.apache.openjpa.jdbc.schema.DataSourceFactory.newDataSource(DataSourceFactory.java:70)
>       
> org.apache.openjpa.jdbc.conf.JDBCConfigurationImpl.createConnectionFactory(JDBCConfigurationImpl.java:925)
>       
> org.apache.openjpa.jdbc.conf.JDBCConfigurationImpl.getDBDictionaryInstance(JDBCConfigurationImpl.java:649)
>       
> org.apache.openjpa.jdbc.meta.MappingRepository.endConfiguration(MappingRepository.java:1540)
>       
> org.apache.openjpa.lib.conf.Configurations.configureInstance(Configurations.java:531)
>       
> org.apache.openjpa.lib.conf.Configurations.configureInstance(Configurations.java:456)
>       
> org.apache.openjpa.lib.conf.PluginValue.instantiate(PluginValue.java:123)
>       
> org.apache.openjpa.conf.MetaDataRepositoryValue.instantiate(MetaDataRepositoryValue.java:68)
>       org.apache.openjpa.lib.conf.ObjectValue.instantiate(ObjectValue.java:84)
>       
> org.apache.openjpa.conf.OpenJPAConfigurationImpl.newMetaDataRepositoryInstance(OpenJPAConfigurationImpl.java:1113)
>       
> org.apache.openjpa.conf.OpenJPAConfigurationImpl.getMetaDataRepositoryInstance(OpenJPAConfigurationImpl.java:1102)
>       
> org.apache.openjpa.kernel.AbstractBrokerFactory.makeReadOnly(AbstractBrokerFactory.java:657)
>       
> org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:207)
>       
> org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:166)
>       
> org.apache.openjpa.persistence.EntityManagerFactoryImpl.doCreateEM(EntityManagerFactoryImpl.java:282)
>       
> org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:201)
>       
> org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:188)
>       
> org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:178)
>       
> org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:64)
>       GPMWS.getJPA(GPMWS.java:26)
> {code}
> using Tomee 8.0.6; openjpa3.1.2; Eclipse for java ee 2020 r12
>  
> here is the GPMWS.java
>  
> {code:java}
> @Path("/")
> public class GPMWS {  
>   
> @GET
> @Path("/getJPA")
> @Produces(MediaType.APPLICATION_JSON)
> public List<JPA> getJPA() {
> EntityManager entityManager = 
> JPAboot.getEntityManagerFactory().createEntityManager();                
> TypedQuery<JPA> query = entityManager.createNamedQuery("getJPA", JPA.class);
> List<JPA> results = query.getResultList();
> return results;
> }
> {code}
> here is JPAboot.java
>  
>  
> {code:java}
> public class JPAboot {
> private static final String PERSISTENCE_UNIT_NAME = "JPAPER";
> private static EntityManagerFactory factory;
> public static EntityManagerFactory getEntityManagerFactory() {
>         if (factory == null) {
>             factory = 
> Persistence.createEntityManagerFactory(PERSISTENCE_UNIT_NAME);
>         }
>         return factory;
>     }
> public static void shutdown() {
>         if (factory != null) {
>             factory.close();
>         }
>     }
> }{code}
>  
> here JPA.java
>  
> {code:java}
> @Entity
> @Table(name = "JPAs")
> @NamedQuery(name="getJPA", query="SELECT j FROM JPAs j")
> public class JPA {
> @Id
> @Column(name = "id")
> private int id;
> @Column(name = "desc")
> private String desc;
> public JPA() {  }
> public JPA(int id, String desc) {
>  super();
>  this.id = id;
>  this.desc = desc; 
> }
> public String getid() { return this.id; }
> public String getdesc() { return this.desc; }  
> public void setid(int id) { this.id = id; }
> public void setdesc(String desc) { this.desc = desc; } 
> }{code}
>  
> mysqlconnector8.0.21 jar is under WEB-INF/lib/
> here is persistence.xml(which is under META-INF/)
>  
> {code:java}
> <persistence    xmlns="http://xmlns.jcp.org/xml/ns/persistence";
>                 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
>                 xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence 
>                 http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd";
>                 version="2.1">
>  <persistence-unit name="JPAPER">
>   <description>openjpa</description>
>   <class>JPA</class>;
>   <properties>
>    <property name="javax.persistence.jdbc.driver" 
>              value="com.mysql.cj.jdbc.Driver" />
>    <property name="javax.persistence.jdbc.url"
>              value="jdbc:mysql://localhost/jpatest" />
>    <property name="javax.persistence.jdbc.user"
>              value="root" />
>   </properties>
>  </persistence-unit>
> </persistence>{code}
>  
> I think OPENJPA-1495 issue may refer to the same thing, but was just ignored



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to