메뉴 건너띄기
상단메뉴 바로가기
본문 바로가기

이 누리집은 대한민국 공식 전자정부 누리집입니다.

본문 영역

적용 지원, FAQ, Q&A 게시판을 통해 기술 문제 해결을 지원합니다.

묻고 답하기

webservice 적용 후 톰캣서버 기동 시 에러
  • 작성자

    이*진

  • 작성일

    2013-04-15 09:25:02

  • 조회수

    2,020

  • 구분

    실행환경

  • 진행상태

    완료

질문

프레임워크 중 웹서비스 관련하여 적용할려고 합니다.

각종 환경설정 후 톰캣서버 기동 시 아래와 같은 오류가 발생합니다.

2013-04-15 09:05:13,672 ERROR [org.springframework.web.context.ContextLoader] Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'egovWebServiceContext' defined in file [C:\eGovFrameDev-2.5.1-FullVer\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\myEgovBiz\WEB-INF\classes\egovframework\spring\com\context-common.xml]: Invocation of init method failed; nested exception is java.lang.NoSuchMethodError: org.objectweb.asm.ClassWriter.<init>(Z)V
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1420)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NoSuchMethodError: org.objectweb.asm.ClassWriter.<init>(Z)V
at egovframework.rte.itl.webservice.service.impl.EgovWebServiceClassLoaderImpl.createServiceEndpointInterfaceClass(EgovWebServiceClassLoaderImpl.java:399)
at egovframework.rte.itl.webservice.service.impl.EgovWebServiceClassLoaderImpl.loadClass(EgovWebServiceClassLoaderImpl.java:263)
at egovframework.rte.itl.webservice.service.impl.EgovWebServiceClassLoaderImpl.loadClass(EgovWebServiceClassLoaderImpl.java:208)
at egovframework.rte.itl.webservice.EgovWebServiceContext.initServerInfo(EgovWebServiceContext.java:423)
at egovframework.rte.itl.webservice.EgovWebServiceContext.init(EgovWebServiceContext.java:276)
... 22 more
Root cause follows.

원인이 무었인지요?

관련 환경설정파일은 첨부해드립니다.

첨부파일
답변

안녕하세요.. 이용진님..

CXF 적용 버전 차이로 인한 문제 같습니다..

CXF 적용 버전을 2.3.5로 맞추시면 되실 것 같습니다.

<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-frontend-jaxws</artifactId>
<version>2.3.5</version>
</dependency>

<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-transports-http</artifactId>
<version>2.3.5</version>
</dependency>

<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-transports-http-jetty</artifactId>
<version>2.3.5</version>
</dependency>

<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-databinding-aegis</artifactId>
<version>2.3.5</version>
</dependency>

또는 다른 library 상에 asm에 대한 버전이 3.3이 아닌 library가 포함되어 있는 경우도 있습니다.

이 경우는 다른 버전의 asm을 pom.xml 상에서 exclude 하시면 되실 것 같습니다.

그럼.. 즐거운 하루되십시오.
감사합니다.

이 페이지의 구성

묻고 답하기