概要 : これは、Websphere 7 Server & JPA 1.0 & EJB & Derby Database による私の最初のチュートリアルです。
最初: データ ソース名は EJB3BANK で、ターゲット データベースは SHOP です。
2番目:これは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>
3 番目: Itemエンティティ クラスのこの部分コード
@Entity
@Table(schema = "SHOP", name = "ITEM")
@NamedQuery(name = "getItem", query = "SELECT i FROM Item i")
public class Item{...}
4 番目: これがビジネス クラスのCartBeanです ここが問題の始まりです
@Stateful
CartBean implements Cart{
....
....
public List<Item> getItems() {
javax.persistence.Query query = em.createNamedQuery("getItem");//the problem here
return query.getResultList();
}
}
これはエラー メッセージです。JDBC ドライバーまたは DataSource クラス名を ConnectionDriverName プロパティで指定する必要があります。この問題を解決するにはどうすればよいですか?