You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by Dino Chiesa <di...@microsoft.com> on 2005/03/30 11:21:53 UTC

RE: The service doesn't get deployed after making changes to the WSDL and generating a new deploy.wsdd

I would try: 
 - fixing the typos in the WSDL - I found one "deafult" which looks like
it should be default. what else is there? 
 - yanking all use of soapenc.  remove the soapenc namespace prefix and
all references to it, replace with xsd:something or derived types. 
 - replacing all ArrayOf_xxx with inline maxOccurs="unbounded"
declarations.  
 - standardizing on    elementFormDefault="qualified"  in every schema
in that WSDL
 - including XSD "import" directives in the <schema> elements where
appropriate
 - stopping the axis container, removing all services from the
server_config.wsdd , removing all classes from WEB-INF\classes, and then
restarting the container (jetty or whatever)
 - re-run WSDL2Java
 - recompile all impl classes, and then re-run the deploy.wsdd
 
enclosed is a doctored form of your "new" WSDL.  
 

 
________________________________

From: Soti, Dheeraj [mailto:dsoti@harris.com] 
Sent: Tuesday, March 29, 2005 5:03 PM
To: 'axis-user@ws.apache.org'
Subject: The service doesn't get deployed after making changes to the
WSDL and generating a new deploy.wsdd



Hi, 

I had working service and I modified the WSDL to add more array type
elements to the complex types and after that I ran WSDL2Java again to
obtain the new deploy.wsdd. Now if I use AdminClient to deploy the
service nothing happens. It doesn't give any error also. Just come out
saying "it's done" but the server-config.wsdd doesn't have any entry for
my service. Any idea what might have gone wrong?  I have attached the
new deploy.wsdd and new wsdl, old deploy.wsdd and old wsdl.

The new deploy.wsdd 
<!-- Use this file to deploy some handlers/chains and services      --> 
<!-- Two ways to do this:                                           --> 
<!--   java org.apache.axis.client.AdminClient deploy.wsdd          --> 
<!--      after the axis server is running                          --> 
<!-- or                                                             --> 
<!--   java org.apache.axis.utils.Admin client|server deploy.wsdd   --> 
<!--      from the same directory that the Axis engine runs         --> 

<deployment 
    xmlns="http://xml.apache.org/axis/wsdd/" 
    xmlns:java="http://xml.apache.org/axis/wsdd/providers/java"> 

  <!-- Services from HRSWebService WSDL service --> 

  <service name="ContentServiceWS" provider="java:RPC" style="wrapped"
use="literal"> 
      <parameter name="wsdlTargetNamespace" value="
http://services.hrs.harris.com/"/> 
      <parameter name="wsdlServiceElement" value="HRSWebService"/> 
      <parameter name="wsdlServicePort" value="ContentServiceWS"/> 
      <parameter name="className"
value="com.harris.hrs.services.ContentServiceSoapBindingImpl"/> 
      <parameter name="wsdlPortType" value="ContentServiceWS"/> 
      <operation name="createContent" qname="operNS:createContent"
xmlns:operNS="http://services.hrs.harris.com/"
returnQName="retNS:status" xmlns:retNS="http://services.hrs.harris.com/"
returnType="rtns:boolean" xmlns:rtns="http://www.w3.org/2001/XMLSchema"
soapAction="" >

        <parameter qname="pns:arg1" xmlns:pns="
http://services.hrs.harris.com/" type="tns:ProgramContentImpl"
xmlns:tns="http://impl.content.services.hrs.harris.com/"/>

      </operation> 
      <parameter name="allowedMethods" value="createContent"/> 

      <typeMapping 
        xmlns:ns="http://impl.media.services.hrs.harris.com/" 
        qname="ns:MediaImpl" 
        type="java:com.harris.hrs.services.media.impl.MediaImpl" 
        serializer="org.apache.axis.encoding.ser.BeanSerializerFactory" 
 
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory" 
        encodingStyle="" 
      /> 
      <typeMapping 
        xmlns:ns="http://impl.content.services.hrs.harris.com/" 
        qname="ns:ProgramContentImpl" 
 
type="java:com.harris.hrs.services.content.impl.ProgramContentImpl" 
        serializer="org.apache.axis.encoding.ser.BeanSerializerFactory" 
 
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory" 
        encodingStyle="" 
      /> 
      <typeMapping 
        xmlns:ns="http://impl.storage.services.hrs.harris.com/" 
        qname="ns:StorageFileImpl" 
        type="java:com.harris.hrs.services.storage.impl.StorageFileImpl"

        serializer="org.apache.axis.encoding.ser.BeanSerializerFactory" 
 
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory" 
        encodingStyle="" 
      /> 
      <typeMapping 
        xmlns:ns="http://timecode.services.hrs.harris.com/" 
        qname="ns:ImmutableFrameTime" 
        type="java:com.harris.hrs.services.timecode.ImmutableFrameTime" 
        serializer="org.apache.axis.encoding.ser.BeanSerializerFactory" 
 
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory" 
        encodingStyle="" 
      /> 
      <typeMapping 
        xmlns:ns="http://impl.storage.services.hrs.harris.com/" 
        qname="ns:StorageDeviceImpl" 
 
type="java:com.harris.hrs.services.storage.impl.StorageDeviceImpl" 
        serializer="org.apache.axis.encoding.ser.BeanSerializerFactory" 
 
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory" 
        encodingStyle="" 
      /> 
      <typeMapping 
        xmlns:ns="http://services.hrs.harris.com/" 
        qname="ns:ArrayOf_StorageVolume" 
        type="java:com.harris.hrs.services.ArrayOf_StorageVolume" 
        serializer="org.apache.axis.encoding.ser.BeanSerializerFactory" 
 
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory" 
        encodingStyle="" 
      /> 
      <typeMapping 
        xmlns:ns="http://impl.storage.services.hrs.harris.com/" 
        qname="ns:StorageVolumeImpl" 
 
type="java:com.harris.hrs.services.storage.impl.StorageVolumeImpl" 
        serializer="org.apache.axis.encoding.ser.BeanSerializerFactory" 
 
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory" 
        encodingStyle="" 
      /> 
      <typeMapping 
        xmlns:ns="http://services.hrs.harris.com/" 
        qname="ns:ArrayOf_Media" 
        type="java:com.harris.hrs.services.ArrayOf_Media" 
        serializer="org.apache.axis.encoding.ser.BeanSerializerFactory" 
 
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory" 
        encodingStyle="" 
      /> 
      <typeMapping 
        xmlns:ns="http://impl.content.services.hrs.harris.com/" 
        qname="ns:ContentContainerImpl" 
 
type="java:com.harris.hrs.services.content.impl.ContentContainerImpl" 
        serializer="org.apache.axis.encoding.ser.BeanSerializerFactory" 
 
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory" 
        encodingStyle="" 
      /> 
      <typeMapping 
        xmlns:ns="http://services.hrs.harris.com/" 
        qname="ns:ArrayOf_content_ContentContainer" 
 
type="java:com.harris.hrs.services.ArrayOf_content_ContentContainer" 
        serializer="org.apache.axis.encoding.ser.BeanSerializerFactory" 
 
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory" 
        encodingStyle="" 
      /> 
  </service> 
</deployment> 

The new WSDL 
<?xml version="1.0" encoding="UTF-8"?> 
<wsdl:definitions targetNamespace="http://services.hrs.harris.com/" 
  xmlns:apachesoap="http://xml.apache.org/xml-soap" 
  xmlns:impl="http://services.hrs.harris.com/" 
  xmlns:intf="http://services.hrs.harris.com/" 
  xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" 
  xmlns:tns1="http://services.hrs.harris.com/" 
  xmlns:content="http://impl.content.services.hrs.harris.com/" 
  xmlns:media="http://impl.media.services.hrs.harris.com/" 
  xmlns:device="http://device.services.hrs.harris.com/" 
  xmlns:storage="http://impl.storage.services.hrs.harris.com/" 
  xmlns:timecode="http://timecode.services.hrs.harris.com/" 
  xmlns:config="http://config.services.hrs.harris.com/" 
  xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" 
  xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" 
  xmlns:xsd="http://www.w3.org/2001/XMLSchema"> 
<!--WSDL created by Apache Axis version: 1.2RC2 Built on Nov 16, 2004
(12:19:44 EST)--> 
<wsdl:types> 
    <schema targetNamespace="http://timecode.services.hrs.harris.com/" 
        xmlns="http://www.w3.org/2001/XMLSchema"> 
        <complexType name="ImmutableFrameTime"> 
            <sequence> 
                <element name="frameCount" type="xsd:long"/>            
                <element name="frameRate" type="xsd:double" /> 
            </sequence>    
        </complexType> 
        
        <complexType name="TimeCodeImpl"> 
           <sequence> 
               <element name="frameTime" nillable="true"
type="timecode:ImmutableFrameTime"/> 
           </sequence>    
        </complexType> 
              
    </schema> 
    <schema targetNamespace="http://impl.media.services.hrs.harris.com/"

        xmlns="http://www.w3.org/2001/XMLSchema"> 
        <complexType name="MediaImpl"> 
            <sequence>        
                <element name="id" type="xsd:long"/> 
                <element name="storageFile"
type="storage:StorageFileImpl"/> 
                <element name="som" type="timecode:ImmutableFrameTime"/>

                <element name="resolution" type="xsd:int"/> 
            </sequence> 
        </complexType> 
    </schema> 

    <schema elementFormDefault="qualified" targetNamespace="
http://impl.content.services.hrs.harris.com/" 
        xmlns="http://www.w3.org/2001/XMLSchema"> 
        <complexType name="ContentContainerImpl"> 
            <sequence> 
                <element name="contentMetadata"
type="content:ProgramContentImpl"/> 
                <element name="id" type="xsd:long"/> 
                <element name="name" type="xsd:string"/> 
                <element name="description" nillable="true"
type="xsd:string"/> 
                <element name="mediaList" nillable="true"
type="impl:ArrayOf_Media" /> 
                <element name="directOriginator"
type="content:ContentContainerImpl"/>                    
            </sequence>                
        </complexType> 

        <complexType name="ProgramContentImpl"> 
            <sequence> 
                <element name="description" nillable="true"
type="xsd:string"/> 
                <element name="houseId" nillable="true"
type="xsd:string"/> 
                <element name="id" type="xsd:long"/> 
                <element name="title" nillable="true"
type="soapenc:string"/> 
                <element name="estimatedDuration" nillable="true"
type="timecode:ImmutableFrameTime"/> 
                <element name="episodeNumber" nillable="true" deafult=""
type="xsd:string"/> 
                <element name="umid" nillable="true" type="xsd:string"
default=""/> 
                <element name="episodeTitle" nillable="true"
type="xsd:string" default=""/> 
                <element name="contentRealizations" nillable="true"
type="impl:ArrayOf_content_ContentContainer"/> 
                <element name="numberProgramSegments" nillable="true"
default="1" type="xsd:int"/> 
            </sequence> 
        </complexType> 
    </schema> 
    <schema targetNamespace="http://device.services.hrs.harris.com/" 
        xmlns="http://www.w3.org/2001/XMLSchema"> 
        <complexType name="DeviceVendorImpl"> 
            <sequence>        
                <element name="name" type="xsd:string"/> 
                <element name="storageHandlerId" type="xsd:string"/> 
            </sequence>    
        </complexType> 
    </schema> 
    <schema elementFormDefault="qualified" targetNamespace="
http://services.hrs.harris.com/" 
        xmlns="http://www.w3.org/2001/XMLSchema"> 
        <import namespace="http://schemas.xmlsoap.org/soap/encoding/" />

        <complexType name="ArrayOf_content_ContentContainer"> 
            <sequence> 
                <element name="containers" maxOccurs="unbounded"
nillable="true" type="content:ContentContainerImpl" /> 
            </sequence> 
        </complexType> 
        <complexType name="ArrayOf_Media"> 
            <sequence> 
                <element name="medias" maxOccurs="unbounded"
nillable="true" type="media:MediaImpl" /> 
            </sequence> 
        </complexType> 
        <complexType name="ArrayOf_StorageVolume"> 
            <sequence> 
                <element name="storages" maxOccurs="unbounded"
nillable="true" type="storage:StorageVolumeImpl" /> 
            </sequence>        
        </complexType> 
        <!--The following four elements have to be defined for
doc/literal wrapped--> 
        <complexType name="createContentInput"> 
            <sequence> 
                <element name="arg1" type="content:ProgramContentImpl"/>

            </sequence> 
        </complexType> 
        <complexType name="createContentOutput"> 
            <sequence> 
                <element name="status" type="xsd:boolean"/> 
            </sequence> 
        </complexType> 
        <element name="createContent" type="impl:createContentInput"/> 
        <element name="createContentResponse"
type="impl:createContentOutput"/> 
        <!--The above four elements have to be defined for doc/literal
wrapped--> 
    </schema>    
    <schema targetNamespace="
http://impl.storage.services.hrs.harris.com/" 
        xmlns="http://www.w3.org/2001/XMLSchema"> 
        <complexType name="StorageFileImpl"> 
            <sequence>        
                <element name="id" type="xsd:long"/> 
                <element name="pathName" type="xsd:string"/> 
                <element name="volume"
type="storage:StorageVolumeImpl"/> 
            </sequence>                
        </complexType> 
        <complexType name="StorageDeviceImpl"> 
            <sequence>        
                <element name="id" type="xsd:long"/> 
                <element name="name" type="xsd:string"/> 
                <element name="volumes"
type="impl:ArrayOf_StorageVolume"/> 
                <element name="deviceVendorName" type="xsd:string"/> 
                <element name="iPAddress" type="xsd:string"/> 
                <element name="protocol" type="xsd:string"/> 
                <element name="username" type="xsd:string"/> 
                <element name="password" type="xsd:string"/> 
            </sequence>                
        </complexType> 
        <complexType name="StorageVolumeImpl"> 
            <sequence> 
                <element name="id" type="xsd:long"/> 
                <element name="storageDevice"
type="storage:StorageDeviceImpl"/>                    
            </sequence> 
        </complexType> 
    </schema> 
 </wsdl:types> 

   <wsdl:message name="createContentRequest"> 
      <wsdl:part name="in0" element='impl:createContent'/> 
   </wsdl:message> 

   <wsdl:message name="createContentResponse"> 
      <wsdl:part name="createContentReturn"
element='impl:createContentResponse'/> 
   </wsdl:message> 
   <wsdl:portType name="ContentServiceWS"> 
      <wsdl:operation name="createContent" parameterOrder="in0"> 
         <wsdl:input message="impl:createContentRequest"
name="createContentRequest"/> 
         <wsdl:output message="impl:createContentResponse"
name="createContentResponse"/> 
      </wsdl:operation> 
   </wsdl:portType> 
  
   <wsdl:binding name="ContentServiceSoapBinding"
type="impl:ContentServiceWS"> 
      <wsdlsoap:binding transport="http://schemas.xmlsoap.org/soap/http"
style="document" /> 
      <wsdl:operation name="createContent"> 
         <wsdlsoap:operation soapAction=""/> 
         <wsdl:input name="createContentRequest"> 
            <wsdlsoap:body use="literal"/> 
         </wsdl:input> 
         <wsdl:output name="createContentResponse"> 
            <wsdlsoap:body use="literal"/> 
         </wsdl:output> 
      </wsdl:operation> 
   </wsdl:binding> 

   <wsdl:service name="HRSWebService"> 
      <wsdl:port binding="impl:ContentServiceSoapBinding"
name="ContentServiceWS"> 
         <wsdlsoap:address location="
http://localhost:8080/hrsApp/services/ContentServiceWS"/> 
      </wsdl:port> 
   </wsdl:service> 

</wsdl:definitions> 

The Old deploy.wsdd 

<!-- Use this file to deploy some handlers/chains and services      --> 
<!-- Two ways to do this:                                           --> 
<!--   java org.apache.axis.client.AdminClient deploy.wsdd          --> 
<!--      after the axis server is running                          --> 
<!-- or                                                             --> 
<!--   java org.apache.axis.utils.Admin client|server deploy.wsdd   --> 
<!--      from the same directory that the Axis engine runs         --> 

<deployment 
    xmlns="http://xml.apache.org/axis/wsdd/" 
    xmlns:java="http://xml.apache.org/axis/wsdd/providers/java"> 

  <!-- Services from HRSWebService WSDL service --> 

  <service name="ContentServiceWS" provider="java:RPC" style="wrapped"
use="literal"> 
      <parameter name="wsdlTargetNamespace" value="
http://services.hrs.harris.com/"/> 
      <parameter name="wsdlServiceElement" value="HRSWebService"/> 
      <parameter name="wsdlServicePort" value="ContentServiceWS"/> 
      <parameter name="className"
value="com.harris.hrs.services.ContentServiceSoapBindingImpl"/> 
      <parameter name="wsdlPortType" value="ContentServiceWS"/> 
      <operation name="createContent" qname="operNS:createContent"
xmlns:operNS="http://services.hrs.harris.com/"
returnQName="retNS:status" xmlns:retNS="http://services.hrs.harris.com/"
returnType="rtns:boolean" xmlns:rtns="http://www.w3.org/2001/XMLSchema"
soapAction="" >

        <parameter qname="pns:arg1" xmlns:pns="
http://services.hrs.harris.com/" type="tns:ProgramContentImpl"
xmlns:tns="http://impl.content.services.hrs.harris.com/"/>

      </operation> 
      <parameter name="allowedMethods" value="createContent"/> 

      <typeMapping 
        xmlns:ns="http://impl.content.services.hrs.harris.com/" 
        qname="ns:ProgramContentImpl" 
 
type="java:com.harris.hrs.services.content.impl.ProgramContentImpl" 
        serializer="org.apache.axis.encoding.ser.BeanSerializerFactory" 
 
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory" 
        encodingStyle="" 
      /> 
      <typeMapping 
        xmlns:ns="http://timecode.services.hrs.harris.com/" 
        qname="ns:ImmutableFrameTime" 
        type="java:com.harris.hrs.services.timecode.ImmutableFrameTime" 
        serializer="org.apache.axis.encoding.ser.BeanSerializerFactory" 
 
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory" 
        encodingStyle="" 
      /> 
  </service> 
</deployment> 

The old wsdl 
<?xml version="1.0" encoding="UTF-8"?> 
<wsdl:definitions targetNamespace="http://services.hrs.harris.com/" 
  xmlns:apachesoap="http://xml.apache.org/xml-soap" 
  xmlns:impl="http://services.hrs.harris.com/" 
  xmlns:intf="http://services.hrs.harris.com/" 
  xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" 
  xmlns:tns1="http://services.hrs.harris.com/" 
  xmlns:content="http://impl.content.services.hrs.harris.com/" 
  xmlns:media="http://impl.media.services.hrs.harris.com/" 
  xmlns:device="http://device.services.hrs.harris.com/" 
  xmlns:storage="http://impl.storage.services.hrs.harris.com/" 
  xmlns:timecode="http://timecode.services.hrs.harris.com/" 
  xmlns:config="http://config.services.hrs.harris.com/" 
  xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" 
  xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" 
  xmlns:xsd="http://www.w3.org/2001/XMLSchema"> 
<!--WSDL created by Apache Axis version: 1.2RC2 Built on Nov 16, 2004
(12:19:44 EST)--> 
<wsdl:types> 
    <schema targetNamespace="http://timecode.services.hrs.harris.com/" 
        xmlns="http://www.w3.org/2001/XMLSchema"> 
        <complexType name="ImmutableFrameTime"> 
            <sequence> 
                <element name="frameCount" type="xsd:long"/>            
                <element name="frameRate" type="xsd:double" /> 
            </sequence>    
        </complexType> 
        
        <complexType name="TimeCodeImpl"> 
           <sequence> 
               <element name="frameTime" nillable="true"
type="timecode:ImmutableFrameTime"/> 
           </sequence>    
        </complexType> 
              
    </schema> 
    <schema targetNamespace="http://impl.media.services.hrs.harris.com/"

        xmlns="http://www.w3.org/2001/XMLSchema"> 
        <complexType name="MediaImpl"> 
            <sequence>        
                <element name="id" type="xsd:long"/> 
                <element name="storageFile"
type="storage:StorageFileImpl"/> 
                <element name="som" type="timecode:ImmutableFrameTime"/>

                <element name="resolution" type="xsd:int"/> 
            </sequence> 
        </complexType> 
    </schema> 

    <schema elementFormDefault="qualified" targetNamespace="
http://impl.content.services.hrs.harris.com/" 
        xmlns="http://www.w3.org/2001/XMLSchema"> 
        <complexType name="ContentContainerImpl"> 
            <sequence> 
                <element name="contentMetadata"
type="content:ProgramContentImpl"/> 
                <element name="id" type="xsd:long"/> 
                <element name="name" type="xsd:string"/> 
                <element name="description" nillable="true"
type="xsd:string"/> 
                <element name="mediaList" type="impl:ArrayOf_Media"/> 
                <element name="directOriginator"
type="content:ContentContainerImpl"/>                    
            </sequence>                
        </complexType> 

        <complexType name="ProgramContentImpl"> 
            <sequence> 
                <element name="description" nillable="true"
type="xsd:string"/> 
                <element name="houseId" nillable="true"
type="xsd:string"/> 
                <element name="id" type="xsd:long"/> 
                <element name="title" nillable="true"
type="soapenc:string"/> 
                <element name="estimatedDuration" nillable="true"
type="timecode:ImmutableFrameTime"/> 
                <element name="episodeNumber" nillable="true" deafult=""
type="xsd:string"/> 
                <element name="umid" nillable="true" type="xsd:string"
default=""/> 
                <element name="episodeTitle" nillable="true"
type="xsd:string" default=""/> 
                <!--element name="contentRealizations" nillable="true"
type="impl:ArrayOf_content_ContentContainer"/--> 
                <element name="numberProgramSegments" nillable="true"
default="1" type="xsd:int"/> 
            </sequence> 
        </complexType> 
    </schema> 
    <schema targetNamespace="http://device.services.hrs.harris.com/" 
        xmlns="http://www.w3.org/2001/XMLSchema"> 
        <complexType name="DeviceVendorImpl"> 
            <sequence>        
                <element name="name" type="xsd:string"/> 
                <element name="storageHandlerId" type="xsd:string"/> 
            </sequence>    
        </complexType> 
    </schema> 
    <schema elementFormDefault="qualified" targetNamespace="
http://services.hrs.harris.com/" 
        xmlns="http://www.w3.org/2001/XMLSchema"> 
        <import namespace="http://schemas.xmlsoap.org/soap/encoding/" />

        <complexType name="ArrayOf_content_ContentContainer"> 
            <complexContent> 
                <restriction base="soapenc:Array"> 
                    <attribute ref="soapenc:arrayType"
wsdl:arrayType="content:ContentContainerImpl[]" /> 
                </restriction> 
            </complexContent>    
        </complexType> 
        <complexType name="ArrayOf_Media"> 
            <complexContent> 
                <restriction base="soapenc:Array"> 
                    <attribute ref="soapenc:arrayType"
wsdl:arrayType="media:MediaImpl[]" /> 
                </restriction> 
            </complexContent>    
        </complexType> 
        <complexType name="ArrayOf_StorageVolume"> 
            <complexContent> 
                <restriction base="soapenc:Array"> 
                    <attribute ref="soapenc:arrayType"
wsdl:arrayType="storage:StorageVolumeImpl[]" /> 
                </restriction> 
            </complexContent>          
        </complexType> 
        <!--The following four elements have to be defined for
doc/literal wrapped--> 
        <complexType name="createContentInput"> 
            <sequence> 
                <element name="arg1" type="content:ProgramContentImpl"/>

            </sequence> 
        </complexType> 
        <complexType name="createContentOutput"> 
            <sequence> 
                <element name="status" type="xsd:boolean"/> 
            </sequence> 
        </complexType> 
        <element name="createContent" type="impl:createContentInput"/> 
        <element name="createContentResponse"
type="impl:createContentOutput"/> 
        <!--The above four elements have to be defined for doc/literal
wrapped--> 
    </schema>    
    <schema targetNamespace="
http://impl.storage.services.hrs.harris.com/" 
        xmlns="http://www.w3.org/2001/XMLSchema"> 
        <complexType name="StorageFileImpl"> 
            <sequence>        
                <element name="id" type="xsd:long"/> 
                <element name="pathName" type="xsd:string"/> 
                <element name="volume"
type="storage:StorageVolumeImpl"/> 
            </sequence>                
        </complexType> 
        <complexType name="StorageDeviceImpl"> 
            <sequence>        
                <element name="id" type="xsd:long"/> 
                <element name="name" type="xsd:string"/> 
                <element name="volumes"
type="impl:ArrayOf_StorageVolume"/> 
                <element name="deviceVendorName" type="xsd:string"/> 
                <element name="iPAddress" type="xsd:string"/> 
                <element name="protocol" type="xsd:string"/> 
                <element name="username" type="xsd:string"/> 
                <element name="password" type="xsd:string"/> 
            </sequence>                
        </complexType> 
        <complexType name="StorageVolumeImpl"> 
            <sequence> 
                <element name="id" type="xsd:long"/> 
                <element name="storageDevice"
type="storage:StorageDeviceImpl"/>                    
            </sequence> 
        </complexType> 
    </schema> 
 </wsdl:types> 

   <wsdl:message name="createContentRequest"> 
      <wsdl:part name="in0" element='impl:createContent'/> 
   </wsdl:message> 

   <wsdl:message name="createContentResponse"> 
      <wsdl:part name="createContentReturn"
element='impl:createContentResponse'/> 
   </wsdl:message> 

   <wsdl:portType name="ContentServiceWS"> 
      <wsdl:operation name="createContent" parameterOrder="in0"> 
         <wsdl:input message="impl:createContentRequest"
name="createContentRequest"/> 
         <wsdl:output message="impl:createContentResponse"
name="createContentResponse"/> 
      </wsdl:operation> 
   </wsdl:portType> 
   
   <wsdl:binding name="ContentServiceSoapBinding"
type="impl:ContentServiceWS"> 
      <wsdlsoap:binding transport="http://schemas.xmlsoap.org/soap/http"
style="document" /> 
      <wsdl:operation name="createContent"> 
         <wsdlsoap:operation soapAction=""/> 
         <wsdl:input name="createContentRequest"> 
            <wsdlsoap:body use="literal"/> 
         </wsdl:input> 
         <wsdl:output name="createContentResponse"> 
            <wsdlsoap:body use="literal"/> 
         </wsdl:output> 
      </wsdl:operation> 
   </wsdl:binding> 

   <wsdl:service name="HRSWebService"> 
      <wsdl:port binding="impl:ContentServiceSoapBinding"
name="ContentServiceWS"> 
         <wsdlsoap:address location="
http://localhost:8080/hrsApp/services/ContentServiceWS"/> 
      </wsdl:port> 
   </wsdl:service> 
</wsdl:definitions>