2010-08-20 6 views
0

Apache Bean 클라이언트 프록시를 Spring bean으로 인스턴스화하는 J2EE 웹 응용 프로그램이 있습니다.Glassfish 3에서 Axis를 사용하는 .WAR을 재배포 할 수 없습니다.

응용 프로그램을 Glassfish 3 서버에 처음 배포하면 성공합니다. 내가 도메인을 다시 시작하고 다시 배포하는 경우

Instantiation of bean failed; nested exception is 
org.springframework.beans.factory.BeanDefinitionStoreException: Factory method 
[com.foo.bar.FooServicePortType com.foo.bar.config.ApplicationConfig.backendService()] threw exception; 
nested exception is java.lang.RuntimeException: 
java.lang.IllegalStateException: WEB9031: WebappClassLoader unable to load resource 
[META-INF/services/org.apache.axis.EngineConfigurationFactory], 
because it has not yet been started, or was already stopped 

가, 다시 성공 : 내가 배포를 취소하고 응용 프로그램을 다시 배포하는 경우에는, 나는 (봄의 스택 트레이스의 하단에있는) 다음 오류가 발생합니다.

왜 이런 생각입니까?

답변

1

이것은 축 라이브러리의 클래스 로더 누출로 인해 발생했습니다. 가장 쉬운 해결 방법은 공유 도메인 라이브러리의 일부가 아닌 응용 프로그램 자체에 Axis jar를 배포하는 것입니다.

+0

고마워요. Jacob .. 나는 동일한 문제를 겪고 있었고 JAX-RPC와 AXIS jar 파일을 공유 도메인 라이브러리 ext 폴더에서 제거하여 해결했습니다. –

관련 문제