Commits

Takumi IINO committed e72e50f

move: アクション関連のユーティリティをaction以下に移動

Comments (0)

Files changed (5)

sastruts-oreo/src/main/java/jp/troter/seasar/struts/action/util/ActionFormValidationUtil.java

+package jp.troter.seasar.struts.action.util;
+
+import javax.servlet.ServletContext;
+import javax.servlet.http.HttpServletRequest;
+
+import org.apache.commons.validator.Validator;
+import org.apache.commons.validator.ValidatorException;
+import org.apache.struts.action.ActionMessages;
+import org.apache.struts.validator.Resources;
+import org.seasar.struts.config.S2ActionMapping;
+import org.seasar.struts.util.ActionFormUtil;
+import org.seasar.struts.util.RequestUtil;
+import org.seasar.struts.util.S2ActionMappingUtil;
+import org.seasar.struts.util.S2ExecuteConfigUtil;
+import org.seasar.struts.util.ServletContextUtil;
+
+/**
+ * {@code @Execute(validator=false)}の場合に
+ * 手動でアノテーションでのバリデーションを行うためのユーティリティ
+ */
+public class ActionFormValidationUtil {
+
+    protected ActionFormValidationUtil() {
+    }
+
+    /**
+     * バリデータによる検証を行います。
+     *
+     * @return エラーメッセージ
+     * @see org.seasar.struts.action.ActionWrapper$validateUsingValidator
+     */
+    public static ActionMessages validate() {
+        HttpServletRequest request = RequestUtil.getRequest();
+        ServletContext application = ServletContextUtil.getServletContext();
+        ActionMessages errors = new ActionMessages();
+        S2ActionMapping actionMapping = S2ActionMappingUtil.getActionMapping();
+        String validationKey = actionMapping.getName() + "_"
+                + S2ExecuteConfigUtil.getExecuteConfig().getMethod().getName();
+        Validator validator = Resources.initValidator(validationKey,
+                ActionFormUtil.getActionForm(request, actionMapping),
+                application, request, errors, 0);
+        try {
+            validator.validate();
+        } catch (ValidatorException e) {
+            throw new RuntimeException(e);
+        }
+        return errors;
+    }
+
+}

sastruts-oreo/src/main/java/jp/troter/seasar/struts/action/util/BeanWrapperUtil.java

+package jp.troter.seasar.struts.action.util;
+
+import java.lang.reflect.Field;
+
+import org.seasar.framework.beans.BeanDesc;
+import org.seasar.framework.beans.factory.BeanDescFactory;
+import org.seasar.framework.container.SingletonS2Container;
+import org.seasar.framework.util.FieldUtil;
+import org.seasar.struts.action.BeanWrapper;
+
+/**
+ * {@link org.seasar.struts.action.BeanWrapper}に関するユーティリティ。
+ * 
+ * <p>{@link org.seasar.struts.action.BeanWrapper}に対する追加操作、<br />
+ * コンポーネント取得時に利用できるユーティリティを含みます。</p>
+ */
+public class BeanWrapperUtil {
+
+    protected BeanWrapperUtil() {
+    }
+
+    /**
+     * {@link org.seasar.struts.action.BeanWrapper} がラップしているbeanを取り出します。
+     * 
+     * @param beanWrapper
+     * @return {@link org.seasar.struts.action.BeanWrapper}がラップしているbean
+     */
+    public static Object getBean(BeanWrapper beanWrapper) {
+        BeanDesc b = BeanDescFactory.getBeanDesc(BeanWrapper.class);
+        Field field = b.getField("bean");
+        field.setAccessible(true);
+        Object bean = FieldUtil.get(field, beanWrapper);
+        return bean;
+    }
+
+    /**
+     * 型を指定してキャストを行います。
+     *
+     * <p>{@link org.seasar.struts.action.BeanWrapper}が引数に渡された場合、<br />
+     * {@code BeanWrapper}がラップしているbeanを対象とします。</p>
+     *
+     * @param <T>
+     *            型
+     * @param clazz
+     *            型
+     * @param object
+     *            オブジェクト
+     * @return null objectがnullの場合 <br />
+     *         指定した型のインスタンス
+     *
+     * @throws ClassCastException
+     *         objectを指定した型にキャストできない場合
+     */
+    public static <T> T cast(Class<T> clazz, Object object) {
+        if (object == null) {
+            return null;
+        }
+        if (object instanceof BeanWrapper) {
+            Object bean = getBean((BeanWrapper) object);
+            return clazz.cast(bean);
+        }
+        if (clazz.isInstance(object)) {
+            return clazz.cast(object);
+        }
+
+        throw new ClassCastException(object.getClass().getName() + " cannot be cast to " + clazz.getName() + ".");
+    }
+
+    /**
+     * 型を指定してシングルトンのS2コンテナからコンポーネントを取得します。
+     * 
+     * <p>型を指定してシングルトンのS2コンテナからコンポーネントを取得します。<br />
+     * コンポーネントが{@link org.seasar.struts.action.BeanWrapper}の場合はラップされているbeanをコンポーネントとします。</p>
+     * @param <T>
+     *            コンポーネントの型
+     * @param componentClass
+     *            コンポーネントの型
+     * @return コンポーネント
+     */
+    public static <T> T getComponent(Class<T> componentClass) {
+        return getComponent(componentClass, null);
+    }
+
+    /**
+     * 名前を指定してシングルトンのS2コンテナからコンポーネントを取得します。
+     * 
+     * <p>名前を指定してシングルトンのS2コンテナからコンポーネントを取得します。<br />
+     * コンポーネントが{@link org.seasar.struts.action.BeanWrapper}の場合はラップされているbeanをコンポーネントとします。</p>
+     * @param componentName
+     *            コンポーネント名
+     * @return コンポーネント
+     */
+    public static Object getComponent(String componentName) {
+        return getComponent(Object.class, componentName);
+    }
+
+    /**
+     * nameのコンポーネントを取得します。
+     * 
+     * <p>nameのコンポーネントを取得します。<br />
+     * コンポーネントが{@link org.seasar.struts.action.BeanWrapper}の場合はラップされているbeanをコンポーネントとします。</p>
+     * @param <T>
+     *            コンポーネントの型
+     * @param componentClass
+     *            コンポーネントの型
+     * @param componentName
+     *            コンポーネント名
+     * @return コンポーネント
+     */
+    public static <T> T getComponent(Class<T> componentClass, String componentName) {
+        Object o = null;
+        if (componentName == null) {
+            o = SingletonS2Container.getComponent(componentClass);
+        } else {
+            o = SingletonS2Container.getComponent(componentName);
+        }
+        return cast(componentClass,o);
+    }
+
+}

sastruts-oreo/src/main/java/jp/troter/seasar/struts/customizer/T4ActionCustomizer.java

  *
  * <h4>常にバリデータをセットアップする</h4>
  * <p>{@code @Execute(validator=false)}の場合にもアノテーションによるバリデーションを有効にする。<br />
- * バリデーションの実行には{@link jp.troter.seasar.struts.util.ActionFormValidationUtil}を利用します。
+ * バリデーションの実行には{@link jp.troter.seasar.struts.action.util.ActionFormValidationUtil}を利用します。
  * </p>
  *
  * <blockquote><pre>

sastruts-oreo/src/main/java/jp/troter/seasar/struts/util/ActionFormValidationUtil.java

-package jp.troter.seasar.struts.util;
-
-import javax.servlet.ServletContext;
-import javax.servlet.http.HttpServletRequest;
-
-import org.apache.commons.validator.Validator;
-import org.apache.commons.validator.ValidatorException;
-import org.apache.struts.action.ActionMessages;
-import org.apache.struts.validator.Resources;
-import org.seasar.struts.config.S2ActionMapping;
-import org.seasar.struts.util.ActionFormUtil;
-import org.seasar.struts.util.RequestUtil;
-import org.seasar.struts.util.S2ActionMappingUtil;
-import org.seasar.struts.util.S2ExecuteConfigUtil;
-import org.seasar.struts.util.ServletContextUtil;
-
-/**
- * {@code @Execute(validator=false)}の場合に
- * 手動でアノテーションでのバリデーションを行うためのユーティリティ
- */
-public class ActionFormValidationUtil {
-
-    protected ActionFormValidationUtil() {
-    }
-
-    /**
-     * バリデータによる検証を行います。
-     *
-     * @return エラーメッセージ
-     * @see org.seasar.struts.action.ActionWrapper$validateUsingValidator
-     */
-    public static ActionMessages validate() {
-        HttpServletRequest request = RequestUtil.getRequest();
-        ServletContext application = ServletContextUtil.getServletContext();
-        ActionMessages errors = new ActionMessages();
-        S2ActionMapping actionMapping = S2ActionMappingUtil.getActionMapping();
-        String validationKey = actionMapping.getName() + "_"
-                + S2ExecuteConfigUtil.getExecuteConfig().getMethod().getName();
-        Validator validator = Resources.initValidator(validationKey,
-                ActionFormUtil.getActionForm(request, actionMapping),
-                application, request, errors, 0);
-        try {
-            validator.validate();
-        } catch (ValidatorException e) {
-            throw new RuntimeException(e);
-        }
-        return errors;
-    }
-
-}

sastruts-oreo/src/main/java/jp/troter/seasar/struts/util/BeanWrapperUtil.java

-package jp.troter.seasar.struts.util;
-
-import java.lang.reflect.Field;
-
-import org.seasar.framework.beans.BeanDesc;
-import org.seasar.framework.beans.factory.BeanDescFactory;
-import org.seasar.framework.container.SingletonS2Container;
-import org.seasar.framework.util.FieldUtil;
-import org.seasar.struts.action.BeanWrapper;
-
-/**
- * {@link org.seasar.struts.action.BeanWrapper}に関するユーティリティ。
- * 
- * <p>{@link org.seasar.struts.action.BeanWrapper}に対する追加操作、<br />
- * コンポーネント取得時に利用できるユーティリティを含みます。</p>
- */
-public class BeanWrapperUtil {
-
-    protected BeanWrapperUtil() {
-    }
-
-    /**
-     * {@link org.seasar.struts.action.BeanWrapper} がラップしているbeanを取り出します。
-     * 
-     * @param beanWrapper
-     * @return {@link org.seasar.struts.action.BeanWrapper}がラップしているbean
-     */
-    public static Object getBean(BeanWrapper beanWrapper) {
-        BeanDesc b = BeanDescFactory.getBeanDesc(BeanWrapper.class);
-        Field field = b.getField("bean");
-        field.setAccessible(true);
-        Object bean = FieldUtil.get(field, beanWrapper);
-        return bean;
-    }
-
-    /**
-     * 型を指定してキャストを行います。
-     *
-     * <p>{@link org.seasar.struts.action.BeanWrapper}が引数に渡された場合、<br />
-     * {@code BeanWrapper}がラップしているbeanを対象とします。</p>
-     *
-     * @param <T>
-     *            型
-     * @param clazz
-     *            型
-     * @param object
-     *            オブジェクト
-     * @return null objectがnullの場合 <br />
-     *         指定した型のインスタンス
-     *
-     * @throws ClassCastException
-     *         objectを指定した型にキャストできない場合
-     */
-    public static <T> T cast(Class<T> clazz, Object object) {
-        if (object == null) {
-            return null;
-        }
-        if (object instanceof BeanWrapper) {
-            Object bean = getBean((BeanWrapper) object);
-            return clazz.cast(bean);
-        }
-        if (clazz.isInstance(object)) {
-            return clazz.cast(object);
-        }
-
-        throw new ClassCastException(object.getClass().getName() + " cannot be cast to " + clazz.getName() + ".");
-    }
-
-    /**
-     * 型を指定してシングルトンのS2コンテナからコンポーネントを取得します。
-     * 
-     * <p>型を指定してシングルトンのS2コンテナからコンポーネントを取得します。<br />
-     * コンポーネントが{@link org.seasar.struts.action.BeanWrapper}の場合はラップされているbeanをコンポーネントとします。</p>
-     * @param <T>
-     *            コンポーネントの型
-     * @param componentClass
-     *            コンポーネントの型
-     * @return コンポーネント
-     */
-    public static <T> T getComponent(Class<T> componentClass) {
-        return getComponent(componentClass, null);
-    }
-
-    /**
-     * 名前を指定してシングルトンのS2コンテナからコンポーネントを取得します。
-     * 
-     * <p>名前を指定してシングルトンのS2コンテナからコンポーネントを取得します。<br />
-     * コンポーネントが{@link org.seasar.struts.action.BeanWrapper}の場合はラップされているbeanをコンポーネントとします。</p>
-     * @param componentName
-     *            コンポーネント名
-     * @return コンポーネント
-     */
-    public static Object getComponent(String componentName) {
-        return getComponent(Object.class, componentName);
-    }
-
-    /**
-     * nameのコンポーネントを取得します。
-     * 
-     * <p>nameのコンポーネントを取得します。<br />
-     * コンポーネントが{@link org.seasar.struts.action.BeanWrapper}の場合はラップされているbeanをコンポーネントとします。</p>
-     * @param <T>
-     *            コンポーネントの型
-     * @param componentClass
-     *            コンポーネントの型
-     * @param componentName
-     *            コンポーネント名
-     * @return コンポーネント
-     */
-    public static <T> T getComponent(Class<T> componentClass, String componentName) {
-        Object o = null;
-        if (componentName == null) {
-            o = SingletonS2Container.getComponent(componentClass);
-        } else {
-            o = SingletonS2Container.getComponent(componentName);
-        }
-        return cast(componentClass,o);
-    }
-
-}