обзор: Это мой первый учебник по Websphere 7 Server & JPA 1.0 & EJB & Derby Database.
Во-первых: Имя моего источника данных - EJB3BANK, а моя целевая база данных - SHOP.
Во-вторых: это файл persistence.xml
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="1.0"
xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd">
<persistence-unit name="ShopJPA" transaction-type="JTA">
<jta-data-source>jdbc/EJB3BANK</jta-data-source>
<non-jta-data-source>jdbc/EJB3BANK</non-jta-data-source>
<properties>
<property name="openjpa.jdbc.Schema" value="SHOP" />
</properties>
</persistence-unit>
</persistence>
Третий: этот частичный код Item entity Class
@Entity
@Table(schema = "SHOP", name = "ITEM")
@NamedQuery(name = "getItem", query = "SELECT i FROM Item i")
public class Item{...}
Четвертый: здесь бизнес-класс CartBean это начало проблемы
@Stateful
CartBean implements Cart{
....
....
public List<Item> getItems() {
javax.persistence.Query query = em.createNamedQuery("getItem");//the problem here
return query.getResultList();
}
}
и Это сообщение об ошибке: Имя класса драйвера JDBC или источника данных должно быть указано в свойстве ConnectionDriverName . Как решить эту проблему?