OK this is what I discovered:
The "Could not update IN parameter to be INOUT..." error comes from
processOutputDocElement method inside JAXRPCMetaDataBuilder class. The
processOutputDocElement is called from
anonymous wrote :
| buildParameterMetaDataDoc(OperationMetaData opMetaData, WSDLInterfaceOperation
wsdlOperation, ServiceEndpointMethodMapping seiMethodMapping,TypeMappingImpl typeMapping)
|
Now the description of this class is mentioning: "A meta data builder that is based
on webservices.xml." So I supposed that this error occurs due to issues related to my
webservices.xml.
Here is my webservices.xml :
| <webservices version='1.1'
xmlns='http://java.sun.com/xml/ns/j2ee'
xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'
xsi:schemaLocation='http://java.sun.com/xml/ns/j2ee
http://www.ibm.com/webservices/xsd/j2ee_web_services_1_1.xsd'>
| <webservice-description>
| <webservice-description-name>Vax</webservice-description-name>
| <wsdl-file>WebRoot/WEB-INF/wsdl/Vax.wsdl</wsdl-file>
|
<jaxrpc-mapping-file>WebRoot/WEB-INF/jaxrpc-mapping.xml</jaxrpc-mapping-file>
| <port-component>
| <port-component-name>VaxSoapPort</port-component-name>
| <!-- wsdl-port
xmlns:portNS='https://www.acompany.com/VaxHttpTest/Vax.asmx'>p...
-->
| anonymous wrote : <wsdl-port
xmlns:portNS='https://www.acompany.com/VaxHttpTest/VaxSoap'>po...
|
<service-endpoint-interface>ca.agenthttp.vax.VaxSoap</service-endpoint-interface>
| <service-impl-bean>
| <servlet-link>VaxSoap</servlet-link>
| </service-impl-bean>
| </port-component>
| </webservice-description>
| </webservices>
|
Now from the docs we know:
anonymous wrote :
| The port-component-name element specifies a port component's name. This name is
assigned by the module producer to name the service implementation bean in the
module's deployment descriptor. The name must be unique among the port component names
defined in the same module.
| Used in: port-component
| Example:
| <port-component-name>EmployeeService
| </port-component-name>
|
So according to this the wsdl-port tag line should be like this:
anonymous wrote :
| <wsdl-port
xmlns:portNS='https://www.acompany.com/VaxHttpTest/VaxSoap'>po...
|
I tried also to provide the target namespace like in the commented line:
anonymous wrote :
| <!-- wsdl-port
xmlns:portNS='https://www.acompany.com/VaxHttpTest/Vax.asmx'>p...
-->
|
(even if I know the correct use is like in the previous uncommented line) but with same
error results:
anonymous wrote :
| Could not update IN parameter to be INOUT, as indicated in the mapping: parameters
|
Is it possible that this occurs because the wsdl location URL points to
anonymous wrote :
|
https://www.acompany.com/VaxHttp/Vax?wsdl
|
but the real SEI is in fact "VaxSoap" class ???
Let me explain: "Vax" referenced in URL is just a simple javax.xml.rpc.Service
and looks like this:
| /*
| * JBoss, the OpenSource EJB server
| * Distributable under LGPL license. See terms of license at
gnu.org.
| */
|
| //Auto Generated by jbossws - Please do not edit!!!
|
| package ca.agenthttp.vax;
|
|
| import javax.xml.rpc.*;
|
|
| public interface Vax extends javax.xml.rpc.Service
| {
|
| public ca.agenthttp.vax.VaxSoap getVaxSoap() throws ServiceException;
|
| }
|
Now the ca.agenthttp.vax.VaxSoap is my real SEI which contains references to all the
published methods which are web servable.
Please confirm to me if this webservices.xml is properly configured or if I have to
reconfigure some other .xml files.
Last but not least this is my jboss-client.xml file:
| <?xml version="1.0" encoding="UTF-8"?>
|
| <jboss-client>
| <jndi-name>jbossws-client</jndi-name>
| <service-ref>
| <service-ref-name>Vax</service-ref-name>
| <wsdl-override>
|
https://www.acompany.com/VaxHttpTest/Vax.asmx?wsdl
| </wsdl-override>
| </service-ref>
| </jboss-client>
|
The service defined in Wax.wsdl looks like this:
| <wsdl:service name="Vax">
| <wsdl:port name="VaxSoap" binding="tns:VaxSoap">
| <soap:address
location="https://www.acompany.com/VaxHttpTest/Vax.asmx" />
| </wsdl:port>
| </wsdl:service>
|
Any suggestions ?
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4036444#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...