EJB、Webアプリケーションなどの動作確認を行うと"Bad version number in .class"のエラーが表示される。
【現象】
EJBやWebアプリケーションの動作確認時にエラーメッセージが表示されます。
以下はWebアプリケーションの動作確認の例ですが、EJBではサーバのログに同様のエラーが出力されます。
HTTP Status 500 - type Exception report message description The server encountered an internal error () that prevented it from > fulfilling this request. exception javax.servlet.ServletException: JSVLT52352: サーブレットインスタンスを割り当て中のエラーです root cause java.lang.UnsupportedClassVersionError: Bad version number in .class > file |
【原因】
ビルドに使用する[Javaコンパイラー]の[コンパイラー準拠レベル]が、動作確認を行うサーバのJDK/JREのバージョンよりも新しい事が原因です。例:JDK準拠レベルが1.8で、サーバのJDK/JREが1.7。
【対処】
[Javaコンパイラー]の[コンパイラー準拠レベル]が、動作確認を行うサーバのJDK/JREのバージョンと同じか、古くなるような環境でビルドして再度動作確認してください。