• ベストアンサー
※ 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は既に必要なソフトウェアがインストールされており、特に環境設定は行っていません。解決策を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
noname#247307
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

kxinf11
質問者

お礼

回答ありがとうございます。 すみません。Hibernateのパッケージ中のlibにJTA等のjarが含まれていることがわかりました。それらを全て、classpathに含めることで解決しました。 ちなみにWebLogicServerは使わずに、単純にJavaのバッチプログラムでHibernateを取り込んで組んでいます。 Mavenも使用しておりません。 ありがとうございました。

その他の回答 (1)

noname#212058
noname#212058
回答No.1

Oracle に接続するための JDBCドライバを環境に置いていないのでは。

kxinf11
質問者

お礼

回答ありがとうございます。 Hibernateを使用せず、直接JDBCのAPIを使用してのOracleへの接続は できており、JDBCドライバ自体は動作しております。 ありがとうございました。

関連するQ&A