Javaに関する様々な情報をご紹介します。

Javaに関する様々な情報をご紹介します。
評価

0

HTTPステータス 500 エラー

超初心者です。
JSPではじめてプログラムを作成しているのですが、環境は最初から提供されており、調べてはいるのですが、なかなか理解が進んでいない状態です。
いままですべてプログラム中に書き込んでいたものをclassファイルを作成してみることにして
以下の条件で実行したのですがエラーになってしまいます。最初 JDK1.6でやっていてそのためにエラーになったのかと思い 1.5にしましたがなおりません。なぜでしょう?
JDK1.5 Tomcat/5.5.17

<--エラー-->
javax.servlet.ServletException: Bad version number in .class file
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:272)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

6

回答

6645

閲覧

6件の回答

評価

0

エラーメッセージはそのまま検索してみることをおすすめします。
けっこうな確率で、何を意味していてどう解決したらいいかまで、調べることができます。

評価

0

おっしゃるとおりにやってみたところversion違いではないことおもったので直してみたのですがだめなのです。

最初にJDK1.6をインストールしそのあとJDK1.5をインストールしたので

javac
java
のバーションをそれぞれ調べたところ1.5と1.6で食い違っていたので
javaのバージョンも1.5にあわせましたがなおりません。

あとはいったいどこのversionをあわせたらいいのでしょう?

評価

0

>version違いではないことおもったので直してみたのですがだめなのです。
このエラーは、作成時のバージョンより低いバージョンで実行しようとしたときのものです。
作成時、実行時に使われるJavaがどれかを、きちんと確認してください。
コマンドプロンプトでjavaを打って出てくるもので、Tomcatが動いているとは限りません。

評価

0

最初にjava 1.6でコンパイルしてしまってそれが登録されていて、あとから1.5でコンパイルしなおしてのですが、置き換わっていなかっただけのようです。Tomcatを再起動したらできました。
おさわがせして申し訳ありませんでした。
疑問なのですがTomcatがつかんでいるclassファイルがどのバージョンでコンパイルされたものなのかはしらべようがないのでしょうか?

評価

0

Bad version numberのあたりに、メジャー・マイナーバージョンは出てませんでしたっけ。
出ていなければ、無理のような。

web.xmlのreloadableオプションがtrueであれば、classファイルが置換されたらコンテキスト全体が再読み込みされます…確実ではないけど。

評価

0

わかりました。ありがとうございました

質問から6ヶ月以上経過しているので、回答を書き込むことはできません。