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'>portNS:VaxSoapPort</wsdl-port
  -->
  |    anonymous wrote : <wsdl-port 
xmlns:portNS='https://www.acompany.com/VaxHttpTest/VaxSoap'>portNS:VaxSoapPort</wsdl-port>
  
  |    
<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'>portNS:VaxSoapPort</wsdl-port>
  | 

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'>portNS:VaxSoapPort</wsdl-port
  -->
  | 
(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#4036444

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4036444
_______________________________________________
jboss-user mailing list
jboss-user@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to