Struts2하고 Spring2.0하고 엮어서 presentation Layer를 Struts로 사용하고 Business Layer를 Spring으로 사용하려고 세팅을 하고 Action을 만든 후에 Action에서 Spring bean을 사용하려고 하면 아래와 같은 에러가 발생하는 경우가 있다. 

에러 메시지
이 에러를 고치는데 별 짓을 다 해보다가 결국 struts 설정에 에러가 있다는 걸 알았다.. ㅠㅠ(이틀을 날려버린..--;)

우선 struts랑 spring이랑 붙이려면 라이브러리 파일이 하나 필요하다. (라이브러리가 struts2 버젼과 같아야 한다.)

이 라이브러리를 추가해주고 나서

struts.properties 안에 "struts.objectFactory" 활성화 해 준 후에

struts.objectFactory = org.apache.struts2.spring.StrutsSpringObjectFactory

이렇게 명시해준다. 이건 object를 스프링이 관리해주도록 하는 거이란다.

그리고 중요한 것! 저 에러가나는 원인은

struts.objectFactory.spring.autoWire = name   <- 이 부분 때문에 그렇다.

저 autoWire를 name으로 설정해서 에러가 나는 것이다. 이걸 type으로 바꾸면 된다. 

struts.objectFactory.spring.autoWire = type 

으로 변경해주면 제대로 에러없이 돌아간다.

이거 몰라서 개고생 했다..--;;
Posted by 서오석
,