JPAを使用してデータベースにアクセスするJava EEアプリケーションを作成しようとしています。これまでは@Entityアノテーションを使用していましたが、それ以外はすべてデフォルトの状態にしました(たとえば、persistence.xmlファイルは_TimerPoolをjta-data-sourceとして使用していましたが、dbを作成しませんでした)。GlassfishでDerby DBを作成し、Java EEアプリケーションに接続
私は実際のデータベースを試してみたかったのです。私はサービス画面のJavaBD>新しいデータベースを作成し、名前とパスワードで設定しました。
DBのURLます。jdbc:ダービー:// localhostを:1527/PROVA
その後私はGlassfishののウィザードを使用して自分のアプリケーションのためのpersistence.xmlファイルを作成:
<persistence-unit name="JobsPU" transaction-type="JTA">
<jta-data-source>java:app/Prova</jta-data-source>
<exclude-unlisted-classes>false</exclude-unlisted-classes>
<properties>
<property name="javax.persistence.schema-generation.database.action" value="create"/>
<property name="javax.persistence.schema-generation.database.target" value="database-and-scripts"/>
<property name="javax.persistence.jdbc.driver" value="org.apache.derby.jdbc.ClientDriver"/>
<property name="javax.persistence.jdbc.url" value="jdbc:derby://localhost:1527/Prova"/>
<property name="javax.persistence.jdbc.user" value="paolo"/>
<property name="javax.persistence.jdbc.password" value="paolo"/>
</properties>
</persistence-unit>
をそして私はしようとすると、 deploy私はこの例外が発生します:
Grave: Exception while preparing the app : Invalid resource : { ResourceInfo : (jndiName=java:app/Prova__pm), (applicationName=Jobs) }
com.sun.appserv.connectors.internal.api.ConnectorRuntimeException: Invalid resource : { ResourceInfo : (jndiName=java:app/Prova__pm), (applicationName=Jobs) }
JNDIの命名に関連しているようです。私が正直に分かっていないことのうち、私はまだ勉強しようとしています。私がGlassfishのコンソールに行くと、JNDIのリストの下で私のデータベース(JDBC接続プールやJDBCリソースではない)に関連しているようなものは見えません。私は何をすべきか?
ご協力いただきありがとうございます。
これは役に立ちますか? http://stackoverflow.com/questions/13407505/java-jpa-glassfish-invalid-resource-jdbc-default-pm –
"jdbc resources"で新しいをクリックしようとするとGlassfishの最新バージョンが壊れてしまいます素晴らしい例外です。それは素晴らしいことです。 – Paul
あなたはpayaraやwildflyの使用を検討していますか? –