プログラミング

【Eclipse】Tomcatサーバーエラー

昨日まで動いていたローカル環境がいきなり動かなくなりました!

復旧までかなり時間をとられてしまいましたので備忘録的に作業を残しておきます。

突然ローカル環境に繋がらなくなった!

突然のサーバーエラーでローカル環境に繋がらなくなりました。

コンソールに出ているエラーは

SystemRuntimeException:  [Ljava.lang.Object;@ba4a46[{○○○-sqlmap.xml}]
at .util.MasterList.getMasterList(java:73)
at gamen.login(java:257)
at gamen(java:171)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.struts.beanaction.ActionInvoker.invoke(.java:16)
at org.apache.struts.beanaction.DefaultActionInterceptor.intercept(.java:5)
at org.apache.struts.beanaction.BeanAction.execute(:246)
at org.apache.struts.action.RequestProcessor.processActionPerform(.java:431)
at org.apache.struts.action.RequestProcessor.process(.java:236)
at org.apache.struts.action.ActionServlet.process(1196)
at org.apache.struts.action.ActionServlet.doGet(:414)

Caused by: ZzzSystemRuntimeException:  [Ljava.lang.Object;@1ee970[{○○○-sqlmap.xml}]
at sql.SqlMapClientFactory.create(SqlMapClientFactory.java:126)

みたいな感じです。

フレームワークにiBatisを使用しているのですが、どうやらsql-mapがみれていない様子。

環境変数で解決

sql-mapファイルは存在していることを確認しているので他をあたろうと現状を整理する。

Listenerは上がっていて、Oracleには接続できている。
selectなどでDBはみれる。

そこでJavaからOracleに接続できないのかと思い、JDBCで接続可能か試す。

// Oracle JDBC Driverのロード
Class.forName("oracle.jdbc.driver");

// Oracleに接続
Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:Oracle", "ユーザー", "パス");

// ステートメントを作成
Statement stmt = conn.createStatement();

// 問合せの実行
ResultSet rset = stmt.executeQuery("select * from table");

// 問合せ結果の表示
while (rset.next()) {
// 列番号による指定
System.out.println(rset.getString(1) + "\t" + rset.getString(2));
//System.out.println(rset.getString(1));
}

// 結果セットをクローズ
rset.close();

// ステートメントをクローズ
stmt.close();

// 接続をクローズ
conn.close();

上記の結果はちゃんとselectした結果がかえって来るんですよね~。

はて、お手上げ状態です。

動いているマシンといろいろ比較した結果PCの環境設定に違いがあることがわかりました。

「マイコンピューターを右クリック → プロパティ → システムの詳細設計 → 環境変数」を開きます。

f:id:topvalue:20180216225040j:plain

ここのシステム環境変数にシステムのHOMEが足りなかったんですね。

HOMEを追加してやれば無事サーバーエラーがなくなりました。

しかし環境変数を追加してもまだエラーが解消されないPCがいるので、戦いは続きそうです・・・。
解決編はこちら。⇒【Eclipse】Tomcat サーバーエラー 解決編

まとめ

テストをしているときや新しくPCを設定するときって「環境変数の設定」忘れてたりしますよねー。

まだまだ戦いは続きます。

RECOMMEND

1

新卒で入社したけど『もう仕事を辞めたい』『我慢できない』という方に向けて。新卒入社でカフェのフロアスタッフとしてして働いたけれど、約1年で退職した私からアドバイスです。心がだめになるまで続ける必要なんてありません。

2

女性はライフステージによって休職や転職しなければいけないときがありますよね。
そこでこの記事では女性の転職に有利な資格をまとめてみました。
一生職に困らない、転職に有利な資格とはなにかご覧ください。

3

「今日は会社に行く気がしない・・。」「たまには会社をさぼりたい・・。」なんてことありませんか?本記事では、実際に私の周りで使われていた欠勤理由をご紹介します。今から使える欠勤理由です。本当に仕事に行きたくないときなど活用できると思うので、ぜひ読んでみてください。

-プログラミング

Copyright© Job search info , 2020 All Rights Reserved.