jax-ws 예제 client시 실행시 error

235 views
Skip to first unread message

sup

unread,
Apr 25, 2010, 7:19:24 PM4/25/10
to PRO SPRING 25_KOR
안녕하세요 송인섭 이라고 합니다.
727p부터 나와있는 jax-ws예제를 돌려보려고 하니 아래와 같은 error가 발생합니다.

---------------------------------------------아
래----------------------------------------------------
2010. 4. 26 오전 8:06:55
org.springframework.context.support.AbstractApplicationContext
prepareRefresh
정보: Refreshing
org.springframework.context.support.FileSystemXmlApplicationContext@1ffb8dc:
display name
[org.springframework.context.support.FileSystemXmlApplicationContext@1ffb8dc];
startup date [Mon Apr 26 08:06:55 KST 2010]; root of context hierarchy
2010. 4. 26 오전 8:06:56
org.springframework.beans.factory.xml.XmlBeanDefinitionReader
loadBeanDefinitions
정보: Loading XML bean definitions from URL [file:/C:/Reference/spring
%202.5/Pro_Spring_2_5-4083/ch15/spring-remoting/WEB-INF/classes/com/
apress/prospring2/ch15/remoting/jaxws/client.xml]
2010. 4. 26 오전 8:06:57
org.springframework.context.support.AbstractApplicationContext
obtainFreshBeanFactory
정보: Bean factory for application context
[org.springframework.context.support.FileSystemXmlApplicationContext@1ffb8dc]:
org.springframework.beans.factory.support.DefaultListableBeanFactory@1f42b49
2010. 4. 26 오전 8:06:57
org.springframework.beans.factory.support.DefaultListableBeanFactory
preInstantiateSingletons
정보: Pre-instantiating singletons in
org.springframework.beans.factory.support.DefaultListableBeanFactory@1f42b49:
defining beans [helloWorldService]; root of factory hierarchy
2010. 4. 26 오전 8:06:59
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry
destroySingletons
정보: Destroying singletons in
org.springframework.beans.factory.support.DefaultListableBeanFactory@1f42b49:
defining beans [helloWorldService]; root of factory hierarchy
Exception in thread "main"
org.springframework.beans.factory.BeanCreationException: Error
creating bean with name 'helloWorldService' defined in URL [file:/C:/
Reference/spring%202.5/Pro_Spring_2_5-4083/ch15/spring-remoting/WEB-
INF/classes/com/apress/prospring2/ch15/remoting/jaxws/client.xml]:
Invocation of init method failed; nested exception is
java.lang.LinkageError: You are loading old SAAJ from jar:file:/C:/
Reference/spring%202.5/Pro_Spring_2_5-4083/ch15/spring-remoting/WEB-
INF/lib/saaj.jar!/javax/xml/soap/MessageFactory.class
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:
1260)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:
438)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory
$1.run(AbstractAutowireCapableBeanFactory.java:383)
at java.security.AccessController.doPrivileged(Native Method)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:
353)
at org.springframework.beans.factory.support.AbstractBeanFactory
$1.getObject(AbstractBeanFactory.java:245)
at
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:
169)
at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:
242)
at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:
164)
at
org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:
394)
at
org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:
736)
at
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:
369)
at
org.springframework.context.support.FileSystemXmlApplicationContext.<init>(FileSystemXmlApplicationContext.java:
126)
at
org.springframework.context.support.FileSystemXmlApplicationContext.<init>(FileSystemXmlApplicationContext.java:
69)
at
com.apress.prospring2.ch15.remoting.jaxws.HelloWorldClient.main(HelloWorldClient.java:
14)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:
110)
Caused by: java.lang.LinkageError: You are loading old SAAJ from
jar:file:/C:/Reference/spring%202.5/Pro_Spring_2_5-4083/ch15/spring-
remoting/WEB-INF/lib/saaj.jar!/javax/xml/soap/MessageFactory.class
at com.sun.xml.ws.api.SOAPVersion.<init>(SOAPVersion.java:184)
at com.sun.xml.ws.api.SOAPVersion.<clinit>(SOAPVersion.java:83)
at com.sun.xml.ws.api.BindingID.<clinit>(BindingID.java:318)
at
com.sun.xml.ws.wsdl.parser.RuntimeWSDLParser.parseBinding(RuntimeWSDLParser.java:
423)
at
com.sun.xml.ws.wsdl.parser.RuntimeWSDLParser.parseWSDL(RuntimeWSDLParser.java:
320)
at
com.sun.xml.ws.wsdl.parser.RuntimeWSDLParser.parse(RuntimeWSDLParser.java:
146)
at
com.sun.xml.ws.client.WSServiceDelegate.parseWSDL(WSServiceDelegate.java:
254)
at
com.sun.xml.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:
217)
at
com.sun.xml.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:
174)
at
com.sun.xml.ws.spi.ProviderImpl.createServiceDelegate(ProviderImpl.java:
104)
at javax.xml.ws.Service.<init>(Service.java:56)
at javax.xml.ws.Service.create(Service.java:680)
at
org.springframework.remoting.jaxws.LocalJaxWsServiceFactory.createJaxWsService(LocalJaxWsServiceFactory.java:
134)
at
org.springframework.remoting.jaxws.JaxWsPortClientInterceptor.prepare(JaxWsPortClientInterceptor.java:
146)
at
org.springframework.remoting.jaxws.JaxWsPortClientInterceptor.afterPropertiesSet(JaxWsPortClientInterceptor.java:
136)
at
org.springframework.remoting.jaxws.JaxWsPortProxyFactoryBean.afterPropertiesSet(JaxWsPortProxyFactoryBean.java:
47)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:
1288)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:
1257)
... 19 more
Caused by: java.lang.NoSuchMethodError:
javax.xml.soap.MessageFactory.newInstance(Ljava/lang/String;)Ljavax/
xml/soap/MessageFactory;
at com.sun.xml.ws.api.SOAPVersion.<init>(SOAPVersion.java:178)
... 36 more

Process finished with exit code 1

-------------------------------------------------------------------------------------------------------------------------
하나하나 배우면서 하다보니 무엇이 잘못되었는지 쉽게 눈에 들어오지 않네요...
그럼 확인 부탁드리며, 혹시나 하여 local의 source압축하여 보내드립니다.
...첨부가 되질 않는군요...
변경한것은 content root name을 remoting에서 spring-remoting으로 톰캣에 연결해서 돌려보았으며,
jax-rpc의 message관련 예제는 정상적으로 돌아갑니다.

--
Google 그룹스 'PRO SPRING 25_KOR' 그룹에 가입했으므로 본 메일이 전송되었습니다.
이 그룹에 게시하려면 prospr...@googlegroups.com(으)로 이메일을 보내세요.
그룹에서 탈퇴하려면 prospring25k...@googlegroups.com로 이메일을 보내주세요.
더 많은 옵션을 보려면 http://groups.google.com/group/prospring25k?hl=ko에서 그룹을 방문하세요.

백기선

unread,
Apr 25, 2010, 8:29:27 PM4/25/10
to prospr...@googlegroups.com
java.lang.LinkageError가 발생했군요. 어딘가 버전이 다른 같은 라이브러리가 두개 들어간것 같습니다.

메이븐 프로젝트니까 아마도 saaj.jar 라이브러리가 Maven 의존성 타고 중복된것 같습니다. 이클립스의 m2ecliipse 플러그인을 이용해서 pom.xml에서 의존성을 조사해서 예전 버전을 끌어오는 부분에 exclusion을 설정해주시면 될 것 같습니다.


2010년 4월 26일 오전 8:19, sup <ins...@gmail.com>님의 말:



--
좋은 하루 되세요~
Reply all
Reply to author
Forward
0 new messages