University of Cincinnati logo and link  
WSDL File
 
  UC ingot First, remember what a WSDL file is.  Here's the one that was generated for my service:

<?xml version="1.0" encoding="UTF-8"?>

<definitions name="Chat_Service" targetNamespace="http://echoservice.org/wsdl" xmlns:tns="http://echoservice.org/wsdl" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:ns2="http://echoservice.org/types">
  <types>
    <schema targetNamespace="http://echoservice.org/types" xmlns:tns="http://echoservice.org/types" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:soap-enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns="http://www.w3.org/2001/XMLSchema">
      <import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
      <complexType name="Message">
        <sequence>
          <element name="destination" type="string"/>
          <element name="message" type="string"/>
          <element name="user" type="string"/></sequence></complexType></schema></types>
  <message name="Chat_login">
    <part name="String_1" type="xsd:string"/>
    <part name="String_2" type="xsd:string"/></message>
  <message name="Chat_loginResponse"/>
  <message name="Chat_sendMessage">
    <part name="Message_1" type="ns2:Message"/></message>
  <message name="Chat_sendMessageResponse"/>
  <message name="Chat_sendMessage2">
    <part name="String_1" type="xsd:string"/>
    <part name="String_2" type="xsd:string"/></message>
  <message name="Chat_sendMessage2Response"/>
  <portType name="Chat">
    <operation name="login" parameterOrder="String_1 String_2">
      <input message="tns:Chat_login"/>
      <output message="tns:Chat_loginResponse"/></operation>
    <operation name="sendMessage" parameterOrder="Message_1">
      <input message="tns:Chat_sendMessage"/>
      <output message="tns:Chat_sendMessageResponse"/></operation>
    <operation name="sendMessage2" parameterOrder="String_1 String_2">
      <input message="tns:Chat_sendMessage2"/>
      <output message="tns:Chat_sendMessage2Response"/></operation></portType>
  <binding name="ChatBinding" type="tns:Chat">
    <operation name="login">
      <input>
        <soap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" use="encoded" namespace="http://echoservice.org/wsdl"/></input>
      <output>
        <soap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" use="encoded" namespace="http://echoservice.org/wsdl"/></output>
      <soap:operation soapAction=""/></operation>
    <operation name="sendMessage">
      <input>
        <soap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" use="encoded" namespace="http://echoservice.org/wsdl"/></input>
      <output>
        <soap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" use="encoded" namespace="http://echoservice.org/wsdl"/></output>
      <soap:operation soapAction=""/></operation>
    <operation name="sendMessage2">
      <input>
        <soap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" use="encoded" namespace="http://echoservice.org/wsdl"/></input>
      <output>
        <soap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" use="encoded" namespace="http://echoservice.org/wsdl"/></output>
      <soap:operation soapAction=""/></operation>
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="rpc"/></binding>
  <service name="Chat_Service">
    <port name="ChatPort" binding="tns:ChatBinding">
      <soap:address location="REPLACE_WITH_ACTUAL_URL"/></port></service></definitions>
 

  • Take a look, see what is familiar.
    • Notice where the information in the config.xml file appears in this document.  Should these be changed in config.xml and the WSDL recompiled?
      • The xmlns tags represent a namespace.  Namespaces are XML's counterpart to Java packages.  Interestingly, there doesn't actually have to be anything at that namepace, and the namespace doesn't even have to be a URL.  It doesn't have to have anything at the location, either.  It just has to identify the elements and attributes as unique.  Since URLs generally are unique, more so than a simple String, URLs are used most frequently.
    • I realize that I am still sending a Message object, which contains three Strings.  If I have trouble, I may take this out and make it a single Message string again.
  • Since this is a generated document, we need not understand every detail.  But it does help to know what it contains.
 JAXR: The Registry