2007년 12월 27일 목요일

Spring 에서 Java Mail 사용시 에러문

Spring에서 Java Mail을 이용하여 메일 데몬을 작성시 이상한 에러문구가 떴었다.


ApplicationContext에서는 아래와 같이 설정을 했었다.


<beans>
<bean id="javaMailSender"
  class="com.nanumsem.nnserp.common.util.AuthenticatedJavaMailSender">
  <property name="host">
   <value>smtp.xxxx.com</value>
  </property>
  <property name="username">
   <value>xxxxx</value>
  </property>
  <property name="password">
   <value>xxxxx</value>
  </property>
</bean>

<bean id="mimeMailSender" class="com.nanumsem.nnserp.common.util.MimeMailSender">
  <property name="sender">
   <ref bean="javaMailSender"/>
  </property>
</bean>
</beans>

그런데 실제 Tomcat 기동시
java.lang.NoClassDefFoundError: javax/mail/MessagingException
이런 에러 문구가 뜨면서 javaMailSender 빈인스턴스 생성시 실패하게 된다.

분석한 결과 Spring내에는 실제 Mail처리 관련 jar파일이 포함이 되어있지 않다는것이다.
Spring에서 Mail관련 기능을  구현하기 위해서는 별도로 J2EE 에 포함된 mail.jar를 필요로 하고 있다.

sun에서 mail.jar를 다운로드 받아 WEB-INF/lib 속에 넣고 다시 빌드를 했더니 그제야 정상적으로 빈을 생성하면서 기동되였다.

댓글 없음:

댓글 쓰기