liguofeng29’s blog

個人勉強用ブログだっす。

Struts2

Struts2 - タグ - tokenタグ -2重送信防止

Strun2のtokenタグを使い2重送信(多重submit)を防止できる。 1. 入力画面を作成する(2重送信防止する画面) s-token.jsp <%@ page contentType="text/html; charset=UTF-8" language="java" errorPage=""%> <%@taglib prefix="s" uri="/struts-tags"%> <html> <head> <title>s:</title></head></html>…

Struts2 - タグ - UIタグ

struts2のUIタグは、formタグと非formタグ2種類ある。 formタグ textfield head checkboxlist radio select optgoup updownselect doubleselect optiontransferselect token : 2重サブミット防止 非formタグ actionerror : getActionErrors() != nullの場合…

Struts2 - タグ - データタグ

データタグはデータアクセス関連機能を提供する。Action内の属性、国際化など。 データタグ種類 s:action : Action実行、結果viewを読み込む s:bean : インスタンス生成 s:param : パラメータ提供 s:date : 日付出力、指定日付との差出力 s:push : Value Sta…

Struts2 - タグ - 制御タグ

制御タグはプロセス制御、ValueStackの操作などを行う。 制御タグ種類 if elseIf/elseif else append : 集合結合 generator : 分割 iterator : 集合巡り merge : 集合結合 subset : 集合一部取得 sort : ソート if/elseif/else <%@ page contentType="text/h…

Struts2 - タグ分類

struts2のタグ分類。 ・非UIタグ 制御タグ データタグ ・UIタグ formタグ 非formタグ ・Ajaxタグ

Struts2 - Stack Context

<%@ page contentType="text/html; charset=UTF-8" language="java" errorPage="" %> <%@ taglib prefix="s" uri="/struts-tags"%> <html> <head> <title>WELCOME</title> </head> <body> Value Stack:<br> ユーザ名:<s:property value="username"/><br> パスワード:<s:property value="password"/><br> Stack Conte…</s:property></s:property></body></html>

Struts2 - interceptor - 権限チェックを行う

1. interceptorを実装する package interceptor; import java.util.Map; import com.opensymphony.xwork2.Action; import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.inte…

Struts2 - interceptor

Struts2では、actionメソッド前後の処理(interceptor)を定義できる。 ・interceptor定義関連要素 <interceptors..> : rootタグ <interceptor..> : interceptor定義 <interceptor-stack..> : interceptorのstack定義 <interceptor-ref..> : interceptor参照 <param..> : interceptorのパラメータ定義 <default-interceptor-ref..> : デフォルトinterceptor ・デフォルトのin</default-interceptor-ref..></param..></interceptor-ref..></interceptor-stack..></interceptor..></interceptors..>…

Struts2 - ajax - jsonプラグイン利用

struts2-json-plugin-xx.xx.xx.jarを使い、ResultのタイプでJSONを使用できる。 sturts.xml 略 <constant name="struts.i18n.encoding" value="UTF-8"/> <package name="example" extends="json-default"> <action name="JSONExample" class="action.JSONExampleAction"> <result type="json"> </result></action></package></constant>

Struts2 - ajax - streamタイプ利用

struts.xml 略・・・ <action name="register" class="action.RegisterAction"> <result type="stream"> <param name="contentType">text/html</param> <param name="inputName">inputStream</param> </result> </action> RegisterAction.java 略・・・ public String execute() throws E…

Struts2 - validation(annotationと手動)

Struts2の検証は、検証ファイル以外にannotationと手動でも実現できる。 annotation利用 setterにannnotationをつける @RequiredStringValidator(key="name.requried") public String getName() { return this.name; } @RequiredStringValidator(message="an…

Struts2 - validation(検証ファイル利用)

Struts2のバリデーション機能を使い、入力値をチェックを行える。 ルール ファイル名 : <Action名>-validation.xml バリデーション失敗後は、input対応のviewを返す actionと同じパス内 サンプル JSP register-input.jsp <%@ page language="java" contentType="text/h</action名>…

Struts2 - 型変換例外処理

Struts2は、conversionErrorインターセプタで型変換例外を処理する。 struts-default.xml 略 <interceptor name="conversionError" class="org.apache.struts2.interceptor.StrutsConversionErrorInterceptor"/> 略 <interceptor-ref name="conversionError"/> 型変換例外処理流れ リクエスト ⇒ 型変換例外 ⇒ inputのview デフォルトメッセージ変更 グローバル リソースファイル xwork.defalut.in…</interceptor-ref></interceptor>

Struts2 - カスタム型変換

struts2は、カスタム型変換を提供している。 リクエストパラメータ「alex,20」 をuser.name=alex,user.age=20のuserオブジェクトへ変換可能。 カスタム型変換実装手順 ・型変化クラス定義 : TypeConverterのIFの実現する。 OGNLプロジェクトでは、TypeConver…

Struts2 - 自動型変換

Struts2は、自動的にリクエストパラメータを適切な型に変換してくれる。 基本型 + 配列 + 集合 boolean,Boolean char,Character int,Integer long,Long float,Float Date Array 集合 : デフォルトではArrayList OGNLに基づく変換 オブジェクト オブジェクト…

Struts2 - 国際化

Struts2を使い、国際化する方法。 【国際化の流れ】 国際化リソース読み込み 自動 : Action範囲、パッケージ範囲はシステムが自動読み込み 手動 : view(JSP)範囲、グローバル範囲は、タグと設定により手動読み込み <s:i18n.../> 国際化出力 Action内では、ActionSupprot#</s:i18n.../>…

Struts2 - Convention(協定) - Action Chain

Action処理後にviewではなく、他のActionへ遷移することをActionChainと言う。 Conventionによる、ActionChainする際にルール 遷移元Actionのview名がない 遷移先Actionは遷移元Actionと同じパッケージ内 遷移先ActionのURLは、firstActionName + resultCode…

Struts2 - Convention(協定)

Struts2.1からConventionプラグインを使い、strtus.xml,Annotionを使わず配置ができる。 【Actionの検索と射影の協定】 Action検索対象のパッケージ action actions struts struts2 パッケージ内容のActionクラス com.opensymphony,xwork2.Action実装 XxxxAc…

Struts2 - 例外処理

struts2のactionの例外処理については、フレームワークに依頼できる。 例外処理のフィルタ struts-default.xml <interceptors> <interceptor name="exception" class="com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor"/> <interceptor-stack name="defaultStack"> <interceptor-ref name="exception"/> </interceptor-stack> </interceptor></interceptors>

Struts2 - Action実装と配置

Actionクラスは、MVCモデルに置いてC(Controller)に該当する。 Actionクラスの実装 POJO(Plane Old Java Object) : なにも継承しないクラス public class LoginAction { // field,setter,gettor public String execute() throws Exception { return "success…