OS・アプリ, インターネット

JSPのクラスをコンパイルできません その後

Apache Tomcat を 7.0.86 へアップデートしたら...

エラーの出方が変わりました.(前回の本末
よくよく調べると,jspの拡張タグの位置がずれてる.

エラーを見ると...

例外 
javax.servlet.ServletException: JSPのクラスをコンパイルできません: 

An error occurred at line: [500] in the generated java file: [/usr/local/apache-tomcat-7.0.86/work/Catalina/localhost/~/****_jsp.java]
 Syntax error, insert "}" to complete Block

 An error occurred at line: [500] in the generated java file: [/usr/local/apache-tomcat-7.0.86/work/Catalina/localhost/~/****_jsp.java]
 Syntax error, insert "else Statement" to complete IfStatement

 JSPファイル: /pages/*****.jsp の中の107行目でエラーが発生しました
Syntax error, insert "while ( Expression ) ;" to complete DoStatement

で,ソースを調べたら

<div>
<h:form>
<a href="<% ・・・%>
:
<h:form>
<% } %>
</div>

おや? スクリプトレットで,if 分岐されていたのだが...
これじゃ,条件によっては”<h:form>”が閉じられませんね

ってことで,修正

<div>
<h:form>
<a href="<% ・・・%>
:
<% } %>
</h:form>
</div>

無事動くようになりました.

7.0.70 から 7.0.72 へ更新された際に,文法をきっちり見るようになった...けど,エラーの出方が的外れ? 7.0.86 でそのあたりもちゃんと治ったらしい.ってことで,モヤモヤも消えて一件落着


コメントを残す