스트럿츠 2 프로그래밍 입문 예제 > struts.xml 파일 내용
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<constant name="struts.devMode" value="true" />
<!-- 상속을 위한 abstract page -->
<package name="abstract-default" abstract="true">
</package>
<!-- struts.xml package file include -->
<include file="struts-ch2.xml"/>
<include file="struts-ch4.xml"/>
<include file="struts-user.xml"/>
<!-- namespace 사용 -->
<package name="parent" namespace="/sub" extends="struts-default">
<action name="ChangeWorld" class="com.korea.ch2.ChangeWorld">
<result name="success">/subPage.jsp</result>
</action>
</package>
<!-- default action 사용 -->
<!-- 네임스페이스당 하나만 존재 -->
<package name="default" extends="struts-default">
<default-action-ref name="DefaultAction" />
<action name="DefaultAction" class="com.korea.ch2.DefaultAction">
<result name="success">/default.jsp</result>
</action>
</package>
</struts>
<struts>
<package name="child-ch2" extends="struts-default">
<action name="ChangeWorld" class="com.korea.ch2.ChangeWorld">
<result name="success">/helloWorld.jsp</result>
</action>
<!-- 인자값 전달 -->
<action name="Login" class="com.korea.ch2.ChangeWorld" method="login">
<interceptor-ref name="params" />
<result name="success">/helloWorld.jsp</result>
</action>
<!-- action class 호출 시 method 지정 -->
<action name="InitState" class="com.korea.ch2.ChangeWorld" method="init">
<result name="success">/helloWorld.jsp</result>
</action>
<!-- 인자값 전달 -->
<action name="Member" class="com.korea.ch2.Member">
<interceptor-ref name="params"/>
<interceptor-ref name="validation"/>
<interceptor-ref name="workflow"/>
<result name="input">/login.jsp</result>
<result name="success">/member_result.jsp</result>
</action>
</package>
</struts>
<struts>
<package name="child-ch4" extends="struts-default">
<action name="HelloImpl" class="com.korea.ch2.HelloImpl">
<result name="success">/helloWorld.jsp</result>
</action>
</package>
</struts>
<struts>
<package name="user" extends="struts-default">
<!-- extends ActionSupport > override validate() -->
<!-- login.jsp 페이지로 이동 -->
<action name="UserRegForm">
<result>/login.jsp</result>
</action>
<action name="Member" class="com.korea.ch2.Member">
<interceptor-ref name="params"/>
<interceptor-ref name="validation"/>
<interceptor-ref name="workflow"/>
<result name="input">/login.jsp</result>
<result name="success">/member_result.jsp</result>
</action>
</package>
</struts>
<struts>
<package name="user" extends="struts-default">
<!-- User/UserDao 사용 -->
<!-- <input type="text" name="user.userId" />-->
<!-- 도메인 Object와 결합도 높음 (X) -->
<action name="UserRegForm">
<result>/login.jsp</result>
</action>
<action name="UserRegAction" class="com.korea.ch2.UserRegAction">
<interceptor-ref name="params"/>
<result name="success">/member_result.jsp</result>
</action>
<!--<input type="text" name="userId" />-->
<!-- 도메인 Object와 결합도 낮음 (O) -->
<action name="UserRegAction" class="com.korea.ch2.UserRegAction">
<!-- 순서도 영향을 미친다. -->
<interceptor-ref name="prepare"/>
<interceptor-ref name="modelDriven"/>
<interceptor-ref name="params"/>
<result name="success">/member_result.jsp</result>
</action>
</package>
</struts>