IllegalArgumentException: Illegal argument passed to Paramet
stone_42 Jan 27, 2006 9:47 AMHello,
I wrote and deployed a very simple web service. When I looked at localhost:8080/ws4ee/services whether it was deployed correctly, there was a IllegalArgumentException.
The stacktrace was as follows:
java.lang.IllegalArgumentException: Illegal argument passed to ParameterDesc.setJavaType. The java type java.lang.String does not match the mode out at org.jboss.axis.description.ParameterDesc.setJavaType(ParameterDesc.java:269) at org.jboss.axis.description.ServiceDesc.syncOperationToClass(ServiceDesc.java:753) at org.jboss.axis.description.ServiceDesc.getSyncedOperationsForName(ServiceDesc.java:1187) at org.jboss.axis.description.ServiceDesc.loadServiceDescByIntrospectionRecursive(ServiceDesc.java:1045) at org.jboss.axis.description.ServiceDesc.loadServiceDescByIntrospection(ServiceDesc.java:972) at org.jboss.axis.providers.java.JavaProvider.initServiceDesc(JavaProvider.java:732) at org.jboss.webservice.server.InvokerProvider.initServiceDesc(InvokerProvider.java:106) at org.jboss.axis.handlers.soap.SOAPService.getInitializedServiceDesc(SOAPService.java:388) at org.jboss.axis.deployment.wsdd.WSDDService.makeNewInstance(WSDDService.java:560) at org.jboss.axis.deployment.wsdd.WSDDDeployment.getDeployedServices(WSDDDeployment.java:617) at org.jboss.axis.configuration.FileProvider.getDeployedServices(FileProvider.java:356) at org.jboss.webservice.server.AbstractServlet.reportAvailableServices(AbstractServlet.java:94) at org.jboss.webservice.server.ServiceEndpointServlet.doGet(ServiceEndpointServlet.java:69) at javax.servlet.http.HttpServlet.service(HttpServlet.java:697) at org.jboss.axis.transport.http.AxisServletBase.service(AxisServletBase.java:370) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81) [...]
I can't find the reason, as my wsdl is really simple:
<?xml version="1.0" encoding="UTF-8"?> <definitions targetNamespace="urn:sample" xmlns:tns="urn:sample" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <message name="sessionMsg"> <part name="id" type="xsd:int"/> <part name="sessionid" type="xsd:int"/> </message> <message name="theMessage"> <part name="id" type="xsd:int"/> <part name="text" type="xsd:string"/> </message> <portType name="testProcessPT"> <operation name="op2"> <input message="tns:theMessage"/> <output message="tns:sessionMsg"/> </operation> </portType> <binding name="testProcessPTBinding" type="tns:testProcessPT"> <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/> <operation name="op2"> <soap:operation soapAction=""/> <input> <soap:body use="literal" namespace="urn:sample"/> </input> <output> <soap:body use="literal" namespace="urn:sample"/> </output> </operation> </binding> <service name="testProcessService"> <port name="defaultPLNKPort" binding="tns:testProcessPTBinding"> <soap:address location="REPLACE_WITH_ACTUAL_URI"/> </port> </service> </definitions>
I used wscompile to create the java classes, with the following wscompile-cfg.xml:
<?xml version="1.0" encoding="UTF-8"?> <configuration xmlns="http://java.sun.com/xml/ns/jax-rpc/ri/config"> <wsdl location="service.wsdl" packageName="testProcess"> <namespaceMappingRegistry> <namespaceMapping namespace="urn:sample" packageName="testProcess" /> </namespaceMappingRegistry> </wsdl> </configuration>
The Ant task that started wscompile looks the following:
<java classname="LauncherBootstrap" fork="yes"> <classpath> <pathelement path="d:/tools/jwsdp-1.6/jwsdp-shared/bin" /> </classpath> <arg line="wscompile" /> <arg line="-import" /> <arg line="-s target/src"/> <arg line="-d target/classes"/> <arg line="-keep"/> <arg line="-g"/> <arg line="-mapping target/mapping.xml" /> <arg line="-f:norpcstructures,useonewayoperations,wsi,strict" /> <arg line="wscompile-cfg.xml" /> </java>
Can anyone help?
Thanks in advance,
Martin Steinle