- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Oracle LinuxのJava(JDK))
Oracle LinuxでのJava(JDK)実行時にjavax.transaction.SystemExceptionクラスが見つからないエラーが発生する
このQ&Aのポイント
- Windows8のPCにVirtualBoxをインストールし、Oracle Linuxを動かしています。しかし、javax.transaction.SystemExceptionクラスが見つからないというエラーが発生しています。
- 環境変数JAVA_HOMEの配下のjarファイルを調査しても、javax.transaction.SystemExceptionクラスが見つかりません。
- VirtualBox用のOracle Linuxは既に必要なソフトウェアがインストールされており、特に環境設定は行っていません。解決策を教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
noname#247307
回答No.2
JDKしかインストールしてないのですよね? おそらくですが、JTA(Java Transaction API)が抜けているのでは。WebLogicServerにデフォルトで入ってないんでしょうきっと。 Hibernateは、基本的にサーバー開発で使うものであり、Java EEのAPIを必要とすることがあります。開発はMavenベースですか? ならば、pomにこんな具合に追記すればいいでしょう。 <dependency> <groupId>javax.transaction</groupId> <artifactId>jta</artifactId> <version>1.1</version> </dependency> </dependencies> Mavenを使ってない場合は、http://mvnrepository.com/artifact/javax.transaction/jta/1.1 から直接ダウンロードできます。 また検索したところ、WebLogicServerの場合はExtensionが用意されているようですね。ざっとしか見てないんですが、下アドレスにドキュメントがありました。参考になれば。 http://docs.oracle.com/cd/E24329_01/web.1211/e24377/jtaapi.htm#WLJTA213
その他の回答 (1)
noname#212058
回答No.1
Oracle に接続するための JDBCドライバを環境に置いていないのでは。
質問者
お礼
回答ありがとうございます。 Hibernateを使用せず、直接JDBCのAPIを使用してのOracleへの接続は できており、JDBCドライバ自体は動作しております。 ありがとうございました。
お礼
回答ありがとうございます。 すみません。Hibernateのパッケージ中のlibにJTA等のjarが含まれていることがわかりました。それらを全て、classpathに含めることで解決しました。 ちなみにWebLogicServerは使わずに、単純にJavaのバッチプログラムでHibernateを取り込んで組んでいます。 Mavenも使用しておりません。 ありがとうございました。