[JBossWS] - org.jboss.ws.WSException: arg0 is not a valid property on cl
by maffeis
I'm getting the following error in deploying a simple document/literal
web service with jbossws-3.0.1-native-2.0.4.GA on jboss 4.2.2.GA.
org.jboss.ws.WSException: arg0 is not a valid property on class ...
Full stack trace:
| 09:22:41,781 ERROR [MainDeployer] Could not start deployment: file:/C:/dev/tools/j2ee/jboss-4.2.2.GA/server/viperats/deploy/mobank-server-core.war
| org.jboss.ws.WSException: arg0 is not a valid property on class com.vipera.ts.server.ws.jaxws.NewOperation
| at com.sun.xml.bind.v2.runtime.JAXBContextImpl.getElementPropertyAccessor(JAXBContextImpl.java:926)
| at org.jboss.ws.metadata.accessor.JAXBAccessorFactory.create(JAXBAccessorFactory.java:51)
| at org.jboss.ws.metadata.umdm.EndpointMetaData.createAccessor(EndpointMetaData.java:713)
| at org.jboss.ws.metadata.umdm.EndpointMetaData.eagerInitializeAccessors(EndpointMetaData.java:694)
| at org.jboss.ws.metadata.umdm.EndpointMetaData.initializeInternal(EndpointMetaData.java:567)
| at org.jboss.ws.metadata.umdm.EndpointMetaData.eagerInitialize(EndpointMetaData.java:553)
| at org.jboss.ws.metadata.umdm.ServiceMetaData.eagerInitialize(ServiceMetaData.java:435)
| at org.jboss.ws.metadata.umdm.UnifiedMetaData.eagerInitialize(UnifiedMetaData.java:196)
| at org.jboss.wsf.stack.jbws.EagerInitializeDeploymentAspect.create(EagerInitializeDeploymentAspect.java:50)
|
This happens when the WAR holding the web service is deployed.
The WSDL (that's what you get when you create a document/literal WSDL using the Eclipse wizard):
| <?xml version="1.0" encoding="UTF-8" standalone="no"?>
| <wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://www.example.org/MyTest/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="MyTest" targetNamespace="http://www.example.org/MyTest/">
| <wsdl:types>
| <xsd:schema targetNamespace="http://www.example.org/MyTest/">
| <xsd:element name="NewOperation">
| <xsd:complexType>
| <xsd:sequence>
| <xsd:element name="in" type="xsd:string"/>
| </xsd:sequence>
| </xsd:complexType>
| </xsd:element>
| <xsd:element name="NewOperationResponse">
| <xsd:complexType>
| <xsd:sequence>
| <xsd:element name="out" type="xsd:string"/>
| </xsd:sequence>
| </xsd:complexType>
| </xsd:element>
| </xsd:schema>
| </wsdl:types>
| <wsdl:message name="NewOperationRequest">
| <wsdl:part element="tns:NewOperation" name="parameters"/>
| </wsdl:message>
| <wsdl:message name="NewOperationResponse">
| <wsdl:part element="tns:NewOperationResponse" name="parameters"/>
| </wsdl:message>
| <wsdl:portType name="MyTest">
| <wsdl:operation name="NewOperation">
| <wsdl:input message="tns:NewOperationRequest"/>
| <wsdl:output message="tns:NewOperationResponse"/>
| </wsdl:operation>
| </wsdl:portType>
| <wsdl:binding name="MyTestSOAP" type="tns:MyTest">
| <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
| <wsdl:operation name="NewOperation">
| <soap:operation soapAction="http://www.example.org/MyTest/NewOperation"/>
| <wsdl:input>
| <soap:body use="literal"/>
| </wsdl:input>
| <wsdl:output>
| <soap:body use="literal"/>
| </wsdl:output>
| </wsdl:operation>
| </wsdl:binding>
| <wsdl:service name="MyTest">
| <wsdl:port binding="tns:MyTestSOAP" name="MyTestSOAP">
| <soap:address location="http://www.example.org/"/>
| </wsdl:port>
| </wsdl:service>
| </wsdl:definitions>
|
The WebService implementation:
| @WebService(name = "MyTest", targetNamespace = "http://www.example.org/MyTest/")
| public class MyTestWebService implements MyTest {
| public String newOperation(String in) {
| return null;
| }
| }
|
web.xml configuration:
| <servlet>
| <servlet-name>MyTest</servlet-name>
| <servlet-class>com.vipera.ts.server.ws.MyTestWebService</servlet-class>
| </servlet>
|
| <servlet-mapping>
| <servlet-name>MyTest</servlet-name>
| <url-pattern>/mt</url-pattern>
| </servlet-mapping>
|
Workaround: In the WSDL, rename "in" to "arg0" and "out" to "return", but I'd rather like to avoid that.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4142264#4142264
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4142264
18 years
[EJB/JBoss] - Re: Classloader nightmare and ClassCastException. Isolatio
by tnine
I'm using the following version of Hibernate and Spring
Hibernate 3.2.6.ga
Hibernate Annotations 3.3.0.ga
Spring Framework 2.0.5
Here's the stacktrace
| 19:24:05,422 ERROR [JMSContainerInvoker] Exception in JMSCI message listener
| javax.ejb.TransactionRolledbackLocalException: Could not instantiate bean
| at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:262)
| at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:350)
| at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:181)
| at org.jboss.ejb.plugins.RunAsSecurityInterceptor.invoke(RunAsSecurityInterceptor.java:109)
| at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:205)
| at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:136)
| at org.jboss.ejb.MessageDrivenContainer.internalInvoke(MessageDrivenContainer.java:402)
| at org.jboss.ejb.Container.invoke(Container.java:954)
| at org.jboss.ejb.plugins.jms.JMSContainerInvoker.invoke(JMSContainerInvoker.java:987)
| at org.jboss.ejb.plugins.jms.JMSContainerInvoker$MessageListenerImpl.onMessage(JMSContainerInvoker.java:1287)
| at org.jboss.jms.asf.StdServerSession.onMessage(StdServerSession.java:266)
| at org.jboss.mq.SpyMessageConsumer.sessionConsumerProcessMessage(SpyMessageConsumer.java:905)
| at org.jboss.mq.SpyMessageConsumer.addMessage(SpyMessageConsumer.java:170)
| at org.jboss.mq.SpySession.run(SpySession.java:323)
| at org.jboss.jms.asf.StdServerSession.run(StdServerSession.java:194)
| at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:748)
| at java.lang.Thread.run(Thread.java:613)
| Caused by: javax.ejb.EJBException: Could not instantiate bean
| at org.jboss.ejb.plugins.AbstractInstancePool.get(AbstractInstancePool.java:206)
| at org.jboss.ejb.plugins.MessageDrivenInstanceInterceptor.invoke(MessageDrivenInstanceInterceptor.java:87)
| at org.jboss.ejb.plugins.CallValidationInterceptor.invoke(CallValidationInterceptor.java:63)
| at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:121)
| ... 16 more
| Caused by: javax.ejb.EJBException: org.springframework.beans.factory.access.BootstrapException: Unable to return specified BeanFactory instance: factory key [statementsMdb], from group with resource name [classpath*:beanRefContext.xml]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'statementsMdb' defined in URL [jar:file:/Users/toddnine/work/servers/jboss-4.0.5.GA/server/pefcu/tmp/deploy/tmp59925statements-app-1.0.0-beta-4-SNAPSHOT.ear-contents/mdb-1.0.0-beta-4-SNAPSHOT.jar!/beanRefContext.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.springframework.context.support.ClassPathXmlApplicationContext]: Illegal arguments for constructor; nested exception is java.lang.IllegalArgumentException: java.lang.ClassCastException@bfefb9
| at org.jboss.ejb.MessageDrivenEnterpriseContext.<init>(MessageDrivenEnterpriseContext.java:94)
| at org.jboss.ejb.plugins.MessageDrivenInstancePool.create(MessageDrivenInstancePool.java:50)
| at org.jboss.ejb.plugins.AbstractInstancePool.get(AbstractInstancePool.java:184)
| ... 19 more
| Caused by: org.springframework.beans.factory.access.BootstrapException: Unable to return specified BeanFactory instance: factory key [statementsMdb], from group with resource name [classpath*:beanRefContext.xml]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'statementsMdb' defined in URL [jar:file:/Users/toddnine/work/servers/jboss-4.0.5.GA/server/pefcu/tmp/deploy/tmp59925statements-app-1.0.0-beta-4-SNAPSHOT.ear-contents/mdb-1.0.0-beta-4-SNAPSHOT.jar!/beanRefContext.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.springframework.context.support.ClassPathXmlApplicationContext]: Illegal arguments for constructor; nested exception is java.lang.IllegalArgumentException: java.lang.ClassCastException@bfefb9
| at org.springframework.beans.factory.access.SingletonBeanFactoryLocator.useBeanFactory(SingletonBeanFactoryLocator.java:405)
| at org.springframework.ejb.support.AbstractEnterpriseBean.loadBeanFactory(AbstractEnterpriseBean.java:116)
| at org.springframework.ejb.support.AbstractMessageDrivenBean.ejbCreate(AbstractMessageDrivenBean.java:78)
| at sun.reflect.GeneratedMethodAccessor85.invoke(Unknown Source)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:585)
| at org.jboss.ejb.MessageDrivenEnterpriseContext.<init>(MessageDrivenEnterpriseContext.java:82)
| ... 21 more
| Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'statementsMdb' defined in URL [jar:file:/Users/toddnine/work/servers/jboss-4.0.5.GA/server/pefcu/tmp/deploy/tmp59925statements-app-1.0.0-beta-4-SNAPSHOT.ear-contents/mdb-1.0.0-beta-4-SNAPSHOT.jar!/beanRefContext.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.springframework.context.support.ClassPathXmlApplicationContext]: Illegal arguments for constructor; nested exception is java.lang.IllegalArgumentException: java.lang.ClassCastException@bfefb9
| at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:451)
| at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:251)
| at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:156)
| at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:248)
| at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:160)
| at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:733)
| at org.springframework.beans.factory.access.SingletonBeanFactoryLocator.useBeanFactory(SingletonBeanFactoryLocator.java:395)
| ... 27 more
| Caused by: org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.springframework.context.support.ClassPathXmlApplicationContext]: Illegal arguments for constructor; nested exception is java.lang.IllegalArgumentException: java.lang.ClassCastException@bfefb9
| at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:96)
| at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:87)
| at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:186)
| at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:800)
| at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:720)
| at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:387)
| ... 33 more
| Caused by: java.lang.IllegalArgumentException: java.lang.ClassCastException@bfefb9
| at sun.reflect.GeneratedConstructorAccessor39.newInstance(Unknown Source)
| at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
| at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
| at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:85)
| ... 38 more
|
Perhaps I missed the point, but I thought that scoped classloaders with override would allow me to use any version I choose. Is that not correct? Coincidentally, it works with Hibernate 3.2.0.ga and Annotations 3.2.0.ga.
Thanks,
Todd
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4142261#4142261
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4142261
18 years