У меня есть проект, который я строю, используя struts2 и openJPA.Я хочу провести интеграционное тестирование, но у меня, похоже, возникла проблема с его запуском.
persistence.xml
<persistence-unit name="SalesCertIT" transaction-type="RESOURCE_LOCAL">
<jta-data-source>jdbc/salesCertIT</jta-data-source>
<class>com.ist.salesCert.entities.Certification</class>
<properties>
<property name="log4j" value="DefaultLevel=WARN, Runtime=INFO, Tool=INFO, SQL=TRACE" />
<property name="openjpa.ConnectionDriverName" value="com.mysql.jdbc.Driver" />
<property name="openjpa.ConnectionURL" value="jdbc:mysql://localhost:3306/sales_certification" />
<property name="openjpa.ConnectionUserName" value="dev" />
<property name="openjpa.ConnectionPassword" value="password" />
<property name="openjpa.Id" value="SalesCertIT" />
<property name="openjpa.ConnectionDriverName" value="org.apache.derby.jdbc.EmbeddedDriver" />
</properties>
</persistence-unit>
class:
EntityManagerFactory emf = Persistence.createEntityManagerFactory("SalesCertIT");
EntityManager em = emf.createEntityManager();
Iполучить ошибку:
В свойстве ConnectionDriverName должно быть указано имя класса драйвера JDBC или класса DataSource.
Я добавил оба файла persistence.xml и mysql-connector-java- * -stable-bin-jar для пути к классам, (Eclipse-> Debug Configuration-> Classpath-> Bootstrap записи)
Если я пытаюсь настроить его во время выполнения, он делаетработать, но затем я получаю еще одну ошибку при попытке выполнить операцию:
HashMap<String, String> conf = new HashMap<String, String>();
conf.put("openjpa.ConnectionDriverName", "com.mysql.jdbc.Driver");
conf.put("openjpa.ConnectionURL", "jdbc:mysql://localhost:3306/sales_certification");
conf.put("openjpa.ConnectionUserName", "dev");
conf.put("openjpa.ConnectionPassword", "password");
conf.put("openjpa.TransactionMode", "local");
conf.put("openjpa.Id", "SalesCertIT");
EntityManagerFactory emf = Persistence.createEntityManagerFactory("SalesCertIT", conf);
EntityManager em = emf.createEntityManager();
Тип "class com.ist.salesCert.entities.Certification" не был улучшен.
Я попытался добавить аргумент javaagent: (Eclipse-> Debug Configurations-> Arguments-> VM arguments)
-javaagent: C: / Progra ~ 1 / IBM / WebSphere / AppServer/plugins/com.ibm.ws.jpa.jar
На данный момент я не знаю, что еще попробовать.Есть идеи?