tomcat再起動でエラーが解消する

このQ&Aのポイント
  • CentOS 6.4、Java 1.7、Tomcat 7.0で作ったWebサーバーです。
  • サーバーにログインし、tomcatを再起動するとエラーは解消します。
  • 「ここらへんを調べてみたら?」といった情報ををお教え願えませんでしょうか。
回答を見る
  • ベストアンサー

tomcat再起動でエラーが解消する

CentOS 6.4、Java 1.7、Tomcat 7.0で作ったWebサーバーです。 サーバー起動後の画面入力の日付項目で下記エラーが発生します(ログの一部)。 2013/06/12 09:40:11.212 [ERROR] - Unparseable date: "2013/06/12" java.text.ParseException: Unparseable date: "2013/06/12" at java.text.DateFormat.parse(DateFormat.java:357) サーバーにログインし、tomcatを再起動するとエラーは解消します。 原因がわからないので対症療法で /et/rc.local にtomat再起動のコマンドを書いてやってみましたがエラーは解消しません。 タイミングかとも思い再起動コマンドの前に sleep 60 とか入れてみましたが変わりません。 どなたか解決のヒント、もしくは「ここらへんを調べてみたら?」といった情報ををお教え願えませんでしょうか。 よろしくお願いいたします。

  • Java
  • 回答数2
  • ありがとう数2

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

  • ベストアンサー
回答No.2

ローケルの問題だと思います。 Windows でいうところの地域と言語のオプションが日本語(日本)になっていないというあたりかと思います。 言語と地域の設定が正しくひろえるようにチェックしてみてください。 Linux なら多分、環境変数で地域と言語を指定してから Tomcat (Java) を実行すれば、ひろってくれると思います。

odahara
質問者

お礼

OrangeCup150さん、 どうもありがとうございました! /etc/init.d/tomcat に LANG=ja_JP.UTF-8 を追加することで解決しました。

その他の回答 (1)

  • t_ohta
  • ベストアンサー率38% (5080/13276)
回答No.1

エラーメッセージからすると、String型に入っている日付をDate型に変換しようとして失敗しているように見えます。 何かのタイミングで入ってくる文字列が指定しているフォーマットと合わない時があるんじゃないでしょうか。

odahara
質問者

お礼

t_ohtaさん、 素早いご回答ありがとうございました。 但し今回は違う原因でした。

関連するQ&A

  • SSH起動時のDateFormat(日付型)

    カテ違いの質問でしたらすみません。 現在、JAVAで作成した処理をバッチで起動する処理を行っているのですが、 該当Javaを起動するシェル(Test.rsh)をTeraTermから sh Test.rshの用に呼ぶと問題なく動きます。 この呼び方を ssh 同サーバー名 Test.rsh という風に変えると、 java.text.DateFormat Df = java.text.DateFormat.getDateInstance(); Date val = Df.parse("2005/09/16 0:00:00");  上記parseのところで java.text.ParseException: Unparseable date: "2005/09/16 0:00:00" が発生してしまいます。 sh Test.rshで起動させた時も、該当JavaをWeb画面から呼び出した時もエラーにはなりません。 SSHを使用すると、getDateInstanceでの言語フォーマットが変わったりするのでしょうか・・。 似たような経験をされた方でもヒントでもいいので教えてください。 (シェルの事が分かっていないので、分かりにくい文になりすみません)

    • ベストアンサー
    • Java
  • 文字列を日付に変換でParseException

    文字列を日付に変換するところで、「ParseException: Unparseable date: "2013/08/06"   at java.text.DateFormat.parse(DateFormat.java:335) 」とエラー表示されました。 実際のコーディングは Date sgndate = new Date(); if(!StringUtil.isNull(rs.getString("sgnymd"))){ String lstdaysgn = rs.getString("sgnymd"); lstdaysgn = lstdaysgn.substring(0,4) + "/" + lstdaysgn.substring(5,7) + "/" +                               lstdaysgn.substring(8,10); sgndate = DateFormat.getDateInstance().parse(lstdaysgn); ・・・・・・・・・ここでエラー発生 } どこが悪いのか解りません。 よろしくご教授ください。

    • ベストアンサー
    • Java
  • 文字列のDateFormatへのパース

    とても単純なことを私が誤解しているのだと思うのですが、 文字列のDateFormatへのパースに関して、  DateFormat f = new SimpleDateFormat( "yyyy.MM.dd 'at' HH:mm:ss" );  try {   f.parse( "2001.07.04 at 12:08:56" );  } catch (ParseException e) {   e.printStackTrace();  } この形式だと正しくパースできるのですが、アルファベットの月や曜日が 含まれた下のような形式では、  java.text.ParseException: Unparseable date: "Wed, Jul 4, '01" 例外が発生してしまいます。  DateFormat f = new SimpleDateFormat( "EEE, MMM d, ''yy" );  try {   f.parse( "Wed, Jul 4, '01" );  } catch (ParseException e) {   e.printStackTrace();  } この下のデータサンプルはJavadocに掲載されている基本的な例ですので、 エラーになるはずはないのですが、ご助言頂ければ幸いです。

    • ベストアンサー
    • Java
  • Tomcatがサービス起動しない

    Servlet,JSPでシステムを構築しています。 Tomcatをインストールしたところ,なぜか%CATALINA_HOME%\bin\startup.batからでないと起動しません。管理ツールのサービスから起動しようとすると「サービス起動中にエラーが発生しました」と出て起動ができません。 開発用クライアントやサーバではそのような問題は出ていないのですが,本稼動用のサーバでのみそういった症状がでます。原因が良くわからずに困っています。 ------------------------- JAVA SDK 1.4.2 Tomcat 5.0.19 OS:Windows2000 Server Apache 2.0.49 JAVA_HOME=C:\j2sdk1.4.2 CATALINA_HOME=C:\Progra~1\Apache~1\Tomcat~1.0 (C:\Program Files\Apache Software Foundation\Tomcat 5.0)です。 ----------------------------

  • Tomcat起動時にエラー

    お世話になります。 以前は動いていたTomcatを久しぶりに起動(Start.bat) してみたら、コマンドプロンプトに以下のようなエラーが出て起動できません。 -- 2002-08-21 17:18:35 - ContextManager: Adding context Ctx( /test ) 2002-08-21 17:18:41 - PoolTcpConnector: Starting HttpConnectionHandler on 8080 FATAL:java.net.BindException: Address in use: JVM_Bind java.net.BindException: Address in use: JVM_Bind at java.net.PlainSocketImpl.socketBind(Native Method) at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:397) at java.net.ServerSocket.<init>(ServerSocket.java:170) at java.net.ServerSocket.<init>(ServerSocket.java:121) TOMCAT_HOME d:\jakarta-tomcat-3.2.4 JAVA_HOME c:\jdk1.3 PASS c:\jdk1.3\bin 等は宣言してあるのですが。。。 わかる方ご教授ください。よろしくお願いします。

  • 日付処理について

    いつもお世話になっております。 Java初心者です。 以下のとあるサンプルコードを理解しようと思い、調べているんですがAPI仕様などを見ても、どうも理解出来ないんです。 /** * 日付文字列をDateオブジェクトに変換します. */ public static Date stringToDate(String datestr){ Date date = null; try { date = new Date(DateFormat.getInstance().parse(datestr).getTime()); } catch (ParseException e) { } return date; } 引数;2004/11/22 00:00:00 戻り値:2004-11-22 という結果になります。 Javaに慣れてない為、 “date = new Date(DateFormat.getInstance().parse(datestr).getTime());” といったような書き方があると頭がついていけなくなる状態です。 どうか分かりやすいご説明を宜しくお願いします。

    • ベストアンサー
    • Java
  • Tomcatが起動できません

    はじめまして。TomcatについてなのですがEclipseのkeplerを現在使っています。 WebサーバーにTomcatを使っておりついこないだまではサーバーが動いていたのですが 今では、起動しようとするとエラーが起きて「サーバー ローカル・ホスト の Tomcat v7.0 サーバー は始動に失敗しました。」という表示が出るとともにコンソールでは「A child container failed during start」という表示が出ます。 サーバーは、再インストールなどを行いました。次の打開策をお願いします。

  • tomcatからのoracle接続エラーについて

    お世話になります。 javaサーブレットからoracleに接続する際、以下のエラーが発生して困っております。 エラー:java.lang.ClassNotFoundException: oracle.jdbc.OracleDriver 解決するための情報を頂けますでしょうか。 私がテストしている環境は、以下となります。 【Webサーバ】 centOS5.5. jdk1.6 tomcat5.5 【DBサーバ】 centOS5.5. oracle11g r2 jdbcドライバーは、ojdbc6.jarを使用しております。 ドライバーは、Webサーバの /WEB-INF/libと$TOMCAT_HOME/common/lib配下に設置しております。 環境変数クラスパスに$TOMCAT_HOME/common/libが、設定されていることも確認しております。 JDBCドライバについては、以下の3パターンで試してみましたがすべて同じエラーとなりました。  ・オラクルインストール時のもの(DBサーバ)  ・オラクルHPの11g r2(11.2.0.1)のもの  ・オラクルHPの11g r2(11.2.0.2)のもの どのJDBCドライバを配置した時も、cataline.outには、 oracle.jdbc.OracleDriverクラスが、追加できたというログが出力されておりました。 尚、同じWebサーバでpostgresqlに接続するjavaサーブレットは、/WEB-INF/lib 配下にJDBCドライバーを配置しているだけで問題なく動作しております。 お手数お掛け致しますが、ご教授宜しくお願い致します。

    • ベストアンサー
    • Java
  • TOMCAT起動エラー

    エクリプスでTOMCATを起動させると以下のようなエラーがでます Parse Fatal Error at line 1 column 1: Premature end of file. org.xml.sax.SAXParseException: Premature end of file. 調べていたらhttp://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=14048&forum=12で回答あるじゃんと思ったら、 『servlet.xml』 <?xml version='1.0' encoding='utf-8'?> 『web.xml』 <?xml version="1.0" encoding="ISO-8859-1"?> ・・・どこがいけないのかが分かりません 回答お願いします

  • Tomcatが突如起動しなく・・・。

    Linux2.4 + J2sdk1.3.1 + Tomcat3.3.1の組み合わせで、Servletの開発をしていたのですが、突如Servletの応答が返ってこなくなりました。普通にdoGetでHTMLを表示はできるのですが、XSLTなどを走らせると5分以上たっても応答がありません。 不審に思い、サーバを再起動してTomcatを立ち上げようとしたところ、豪快なエラーが・・・。 2003-02-04 20:53:14 - SessionIdGenerator: Opening /dev/random EmbededTomcat: exception initializing ContextManager java.lang.OutOfMemoryError at (以下32行省略) Guessed home=/usr/local/jakarta-tomcat-3.3.1 Exception: java.lang.reflect.InvocationTargetException java.lang.reflect.InvocationTargetException: org.apache.tomcat.core.TomcatException: EmbededTomcat.initContextManager at (22行省略) 察するに、JVMのメモリが足りないということなんでしょうが、何故突然こうなったかが皆目検討がつきません。いままで半年以上普通に使えていたもので・・・。 心当たりは、いままでServletの開発のためにサーバを動かしっぱなしで500回ほどコンパイル→デバッグを繰り返したことくらいでしょうか・・・。 原因と対策をご教示頂けたら嬉しく思います。 よろしくお願いいたします。

専門家に質問してみよう