Struts2でtilesプラグインが動かなくなった、そんなとき

Struts2でtilesプラグインを使っています。

最初は順調でした。

が、開発の開始時点からStruts2のバージョンを変更してきたところ、
具体的には、2.0.12 → 2.0.14 → 2.1.2 → 2.1.6 と変更してきたところ、
次のようなエラーが出ました。そんなとき。

Messages:
  1. org.apache.tiles.jsp.taglib.InsertDefinitionTag.doFinally()V
  2. java.lang.NoSuchMethodError: org.apache.tiles.jsp.taglib.InsertDefinitionTag.doFinally()V
  3. javax.servlet.ServletException: java.lang.NoSuchMethodError: org.apache.tiles.jsp.taglib.InsertDefinitionTag.doFinally()V
File: org/apache/jsp/WEB_002dINF/public_/Comment_005finput_jsp.java
Line number: 145

最初はまったくのなぞでしたが、とりあえず回避する方法はわかりました。

JSPファイルの中で、

<%@ taglib prefix=”s” uri=”/struts-tags” %>
<%@ taglib uri=”http://tiles.apache.org/tags-tiles” prefix=”tiles”%>

という記載があったのですが、tilesを先に読み込むことで、エラーが出なくなりました。

<%@ taglib uri=”http://tiles.apache.org/tags-tiles” prefix=”tiles”%>
<%@ taglib prefix=”s” uri=”/struts-tags” %>

Leave a Reply