본문 바로가기

프레임워크/Spring

Struts2 + Spring 연동하기

1. jar 파일 설정하기
아래의 jar파일을 프로젝트의 lib 폴더에 복사한다.
spring.jar
struts2-spring-plugin-2.x.x.jar

2. 스프링 리스너 설정하기
스트럿츠 액션클래스의 객체생성을 스프링에 위임한다.
만일 스프링이 객체 생성에 실패하면 스트럿츠2 가 객첵를 생성한다.

web.xml에 스프링 리스너 등록

<!-- ContextLoaderListener가 읽는 applicationContext 설정 파일의 위치 지정-->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext.xml</param-value>
</context-param>

<!-- Struts2 FilterDispatcher 설정-->
<filter>
<filter-name>struts</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
<filter-name>sturts</filter-name>
<url-pattern>/*<url-pattern>
</filter-mapping>

<!-- ContextLoaderListener 지정 -->
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>



3. sturts.properties 설정
스트럿츠2의 ObjectFactory 를 SturtsSpringObjectFactory 로 등록한 후 몇 가지 설정을 한다.

.struts.properties 파일에서 설정

struts.objectFacotry = spring
#name, type, auto, constructor를 지정할 수 있으며 기본값은 name
struts.objectFactory.spring.autoWire = name


4. 스프링 설정파일(applicationContext.xml)에 객체 등록
<beans default-autowire="autodetect">
<bean id="securityService" class="example.SecurityServiece"/>
</beans>


원본 : http://darkhorizon.tistory.com/archive/20090406