しかし、Struts 2 の互換性軽視のバージョンアップはどうにかならんものか?

とりあえず、2.5 系は情報不足なんで、2.3 系で自習&検証を進めることにした。

なにせ、Struts 2 は初めての経験なので、ググった Web サイトなど参考にしつつテスト用にプロジェクトを作ってみてるんだけど、Struts 2 、マイナーバージョンどころかリビジョン違いですら互換性なさすぎやろ(^^;

たとえば、2.3.16 環境で動いてた Web システムが 2.3.31 環境で動かんとか・・・ありえんよね(^^;
まあ、Java や Tomcat のバージョンも絡んでくるから仕方ない面もあるんだろうけど。

今回、一番参考にした「CYOKODOG  JS DEVELOPER BLOG」の中の「2014年度版 Eclipse + Struts2 による Java Web アプリ開発入門」というページでも、

Googleで「Struts2 入門」で検索すると以下のようなさまざまな入門サイトがひっかかりますが、バージョンアップ毎の仕様変更が活発なせいなのか現時点の最新版 2.3.16 の Struts2 で動かそうとするうまくいきません。

@いう間にWebアプリを作れる「Struts 2」入門 - @IT
Struts2入門~基本形で理解する仕組みと構造~ - CodeZine
Struts2を使ってみる

なんて書かれてます。そうそう。"@いう間にWebアプリを作れる「Struts 2」入門 - @IT"サイトのとおりにやっても全然動かんかった(^^;

でも、「CYOKODOG  JS DEVELOPER BLOG」の記述どおりにやってもうちの環境ではうまくいかなくて、

struts2-convention-plugin-2.3.31.jar

を WebContent/WEB-INF/lib にコピーし、ビルド・パスに追加した上で、LoginAction.java を、

import org.apache.struts2.config.Result; 
 ↓
import org.apache.struts2.convention.annotation.Result;

@Result(name = "main", value = "main.action", type = ServletRedirectResult.class)
 ↓
@Result(name = "main", location = "main.action", type = "ServletRedirectResult")

と修正する・・・っていう対応が必要だった。
それと、

import org.apache.struts2.dispatcher.*;

は参照されていないので削除。まあ、これは警告レベルの問題なので、必須じゃないけど。

これで、うちの環境でも、

20161214_struts2.jpg

最初の表示まではとりあえずうまくいった。続きをやりますかね。

トラックバック(0)

このブログ記事を参照しているブログ一覧: しかし、Struts 2 の互換性軽視のバージョンアップはどうにかならんものか?

このブログ記事に対するトラックバックURL: https://blog.netandfield.com/mt/mt-tb.cgi/4215

コメントする

このブログ記事について

このページは、shinodaが2016年12月15日 00:19に書いたブログ記事です。

ひとつ前のブログ記事は「くそ安い、ドライブレコーダーを買ってみた(まだ未使用)」です。

次のブログ記事は「キャンプ場でピザ焼くのが楽しみじゃわい」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。


月別 アーカイブ

電気ウナギ的○○ mobile ver.

携帯版「電気ウナギ的○○」はこちら