axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Tom Jordahl <t...@macromedia.com>
Subject RE: cvs commit: xml-axis/java/src/org/apache/axis/wsdl/symbolTabl e SymbolTable.java
Date Fri, 13 Sep 2002 14:28:28 GMT
Arg!!!

Dims, after I just got through asking Chris to not make whitespace changes, you submit SymbolTable.java with NOTHING but whitespace changes (at least as far as I could see). :-)

Come on everyone, just check the diffs BEFORE you check in and life will be good.

--
Tom Jordahl
Macromedia Server Development



-----Original Message-----
From: dims@apache.org [mailto:dims@apache.org]
Sent: Friday, September 13, 2002 9:42 AM
To: xml-axis-cvs@apache.org
Subject: cvs commit: xml-axis/java/src/org/apache/axis/wsdl/symbolTable
SymbolTable.java


dims        2002/09/13 06:42:22

  Modified:    java/src/org/apache/axis/wsdl/symbolTable SymbolTable.java
  Added:       java/test/wsdl/terra build.xml TerraService.WSDL
                        TerraServiceTestCase.java
  Log:
  Test Case for Bug 8435 - WSDL2Java doesn't handle schema <list> enumerations
  
  Note:
  - Should we support <list>?
  - Adding a test case before adding support for <list>
  
  Revision  Changes    Path
  1.1                  xml-axis/java/test/wsdl/terra/build.xml
  
  Index: build.xml
  ===================================================================
  <?xml version="1.0" ?>
  <!DOCTYPE project [
          <!ENTITY properties SYSTEM "file:../../../xmls/properties.xml">
          <!ENTITY paths  SYSTEM "file:../../../xmls/path_refs.xml">
          <!ENTITY taskdefs SYSTEM "file:../../../xmls/taskdefs.xml">
          <!ENTITY taskdefs_post_compile SYSTEM "file:../../../xmls/taskdefs_post_compile.xml">
          <!ENTITY targets SYSTEM "file:../../../xmls/targets.xml">
  ]>
  
  <!-- ===================================================================
  <description>
     Test/Sample Component file for Axis
  
  Notes:
     This is a build file for use with the Jakarta Ant build tool.
  
  Prerequisites:
  
     jakarta-ant from http://jakarta.apache.org
  
  Build Instructions:
     To compile
          ant compile
     To execute
          ant run
  
  Author:
    Matt Seibert mseibert@us.ibm.com
  
  Copyright:
    Copyright (c) 2002-2003 Apache Software Foundation.
  </description>
  ==================================================================== -->
  
  <project default="compile">
  
  <property name="axis.home" location="../../.." />
  <property name="componentName" value="test/wsdl/terra" />
          &properties;
          &paths;
          &taskdefs;
          &taskdefs_post_compile;
          &targets;
  
  <target name="clean">
      <echo message="Removing ${build.dir}/classes/${componentName} and ${build.dir}/work/${componentName}" />
      <delete dir="${build.dir}/classes/${componentName}"/>
      <delete dir="${build.dir}/work/${componentName}"/>
  </target>
  
  <target name="copy" depends="setenv"/>
  
  <target name="compile" depends="copy">
    <echo message="Compiling test.wsdl.terra"/>
  
  <!--
      local version of the WSDL
      <wsdl2java url="${axis.home}/test/wsdl/terra/TerraService.WSDL"
  -->
      <wsdl2java url="http://terraservice.net/TerraService.asmx?WSDL"
                 output="${axis.home}/build/work"
                 verbose="no"
                 serverSide="no"
                 testcase="no">
          <mapping namespace="http://terraservice.net/terraserver/" package="test.wsdl.terra"/>
      </wsdl2java>
  
      <copy todir="${build.dir}/work/test/wsdl/terra" overwrite="yes">
        <fileset dir="${axis.home}/test/wsdl/terra">
          <include name="*TestCase.java"/>
        </fileset>
      </copy>
  
      <javac srcdir="${build.dir}/work" destdir="${build.dest}" fork="${javac.fork}"
             debug="${debug}">
        <classpath refid="classpath" />
        <include name="test/wsdl/terra/*.java" />
      </javac>
  </target>
  
  <target name="run" >
    <antcall target="execute-Component" />
  </target>
  
  </project>
  
  
  
  1.1                  xml-axis/java/test/wsdl/terra/TerraService.WSDL
  
  Index: TerraService.WSDL
  ===================================================================
  <?xml version="1.0" encoding="utf-8"?>
  <definitions xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:s0="http://terraservice.net/terraserver/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" targetNamespace="http://terraservice.net/terraserver/" xmlns="http://schemas.xmlsoap.org/wsdl/">
    <types>
      <s:schema elementFormDefault="qualified" targetNamespace="http://terraservice.net/terraserver/">
        <s:element name="ConvertLonLatPtToNearestPlace">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="point" type="s0:LonLatPt" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:complexType name="LonLatPt">
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="Lon" type="s:double" />
            <s:element minOccurs="1" maxOccurs="1" name="Lat" type="s:double" />
          </s:sequence>
        </s:complexType>
        <s:element name="ConvertLonLatPtToNearestPlaceResponse">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="ConvertLonLatPtToNearestPlaceResult" type="s:string" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:element name="ConvertLonLatPtToUtmPt">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="point" type="s0:LonLatPt" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:element name="ConvertLonLatPtToUtmPtResponse">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="ConvertLonLatPtToUtmPtResult" type="s0:UtmPt" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:complexType name="UtmPt">
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="Zone" type="s:int" />
            <s:element minOccurs="1" maxOccurs="1" name="X" type="s:double" />
            <s:element minOccurs="1" maxOccurs="1" name="Y" type="s:double" />
          </s:sequence>
        </s:complexType>
        <s:element name="ConvertUtmPtToLonLatPt">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="utm" type="s0:UtmPt" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:element name="ConvertUtmPtToLonLatPtResponse">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="ConvertUtmPtToLonLatPtResult" type="s0:LonLatPt" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:element name="ConvertPlaceToLonLatPt">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="place" type="s0:Place" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:complexType name="Place">
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="City" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="State" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="Country" type="s:string" />
          </s:sequence>
        </s:complexType>
        <s:element name="ConvertPlaceToLonLatPtResponse">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="ConvertPlaceToLonLatPtResult" type="s0:LonLatPt" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:element name="CountPlacesInRect">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="upperleft" type="s0:LonLatPt" />
              <s:element minOccurs="1" maxOccurs="1" name="lowerright" type="s0:LonLatPt" />
              <s:element minOccurs="1" maxOccurs="1" name="ptype" type="s0:PlaceType" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:simpleType name="PlaceType">
          <s:restriction base="s:string">
            <s:enumeration value="UnknownPlaceType" />
            <s:enumeration value="AirRailStation" />
            <s:enumeration value="BayGulf" />
            <s:enumeration value="CapePeninsula" />
            <s:enumeration value="CityTown" />
            <s:enumeration value="HillMountain" />
            <s:enumeration value="Island" />
            <s:enumeration value="Lake" />
            <s:enumeration value="OtherLandFeature" />
            <s:enumeration value="OtherWaterFeature" />
            <s:enumeration value="ParkBeach" />
            <s:enumeration value="PointOfInterest" />
            <s:enumeration value="River" />
          </s:restriction>
        </s:simpleType>
        <s:element name="CountPlacesInRectResponse">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="CountPlacesInRectResult" type="s:int" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:element name="GetAreaFromPt">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="center" type="s0:LonLatPt" />
              <s:element minOccurs="1" maxOccurs="1" name="theme" type="s0:Theme" />
              <s:element minOccurs="1" maxOccurs="1" name="scale" type="s0:Scale" />
              <s:element minOccurs="1" maxOccurs="1" name="displayPixWidth" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="displayPixHeight" type="s:int" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:simpleType name="Theme">
          <s:restriction base="s:string">
            <s:enumeration value="Photo" />
            <s:enumeration value="Topo" />
            <s:enumeration value="Relief" />
          </s:restriction>
        </s:simpleType>
        <s:simpleType name="Scale">
          <s:restriction base="s:string">
            <s:enumeration value="Scale1mm" />
            <s:enumeration value="Scale2mm" />
            <s:enumeration value="Scale4mm" />
            <s:enumeration value="Scale8mm" />
            <s:enumeration value="Scale16mm" />
            <s:enumeration value="Scale32mm" />
            <s:enumeration value="Scale63mm" />
            <s:enumeration value="Scale125mm" />
            <s:enumeration value="Scale250mm" />
            <s:enumeration value="Scale500mm" />
            <s:enumeration value="Scale1m" />
            <s:enumeration value="Scale2m" />
            <s:enumeration value="Scale4m" />
            <s:enumeration value="Scale8m" />
            <s:enumeration value="Scale16m" />
            <s:enumeration value="Scale32m" />
            <s:enumeration value="Scale64m" />
            <s:enumeration value="Scale128m" />
            <s:enumeration value="Scale256m" />
            <s:enumeration value="Scale512m" />
            <s:enumeration value="Scale1km" />
            <s:enumeration value="Scale2km" />
            <s:enumeration value="Scale4km" />
            <s:enumeration value="Scale8km" />
            <s:enumeration value="Scale16km" />
          </s:restriction>
        </s:simpleType>
        <s:element name="GetAreaFromPtResponse">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="GetAreaFromPtResult" type="s0:AreaBoundingBox" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:complexType name="AreaBoundingBox">
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="NorthWest" type="s0:AreaCoordinate" />
            <s:element minOccurs="1" maxOccurs="1" name="NorthEast" type="s0:AreaCoordinate" />
            <s:element minOccurs="1" maxOccurs="1" name="SouthWest" type="s0:AreaCoordinate" />
            <s:element minOccurs="1" maxOccurs="1" name="SouthEast" type="s0:AreaCoordinate" />
            <s:element minOccurs="1" maxOccurs="1" name="Center" type="s0:AreaCoordinate" />
            <s:element minOccurs="0" maxOccurs="1" name="NearestPlace" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="OverlappingThemeInfos" type="s0:ArrayOfOverlappingThemeInfo" />
          </s:sequence>
        </s:complexType>
        <s:complexType name="AreaCoordinate">
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="TileMeta" type="s0:TileMeta" />
            <s:element minOccurs="1" maxOccurs="1" name="Offset" type="s0:LonLatPtOffset" />
          </s:sequence>
        </s:complexType>
        <s:complexType name="TileMeta">
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="Id" type="s0:TileId" />
            <s:element minOccurs="1" maxOccurs="1" name="TileExists" type="s:boolean" />
            <s:element minOccurs="1" maxOccurs="1" name="NorthWest" type="s0:LonLatPt" />
            <s:element minOccurs="1" maxOccurs="1" name="NorthEast" type="s0:LonLatPt" />
            <s:element minOccurs="1" maxOccurs="1" name="SouthWest" type="s0:LonLatPt" />
            <s:element minOccurs="1" maxOccurs="1" name="SouthEast" type="s0:LonLatPt" />
            <s:element minOccurs="1" maxOccurs="1" name="Center" type="s0:LonLatPt" />
            <s:element minOccurs="1" maxOccurs="1" name="Capture" type="s:dateTime" />
          </s:sequence>
        </s:complexType>
        <s:complexType name="TileId">
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="Theme" type="s0:Theme" />
            <s:element minOccurs="1" maxOccurs="1" name="Scale" type="s0:Scale" />
            <s:element minOccurs="1" maxOccurs="1" name="Scene" type="s:int" />
            <s:element minOccurs="1" maxOccurs="1" name="X" type="s:int" />
            <s:element minOccurs="1" maxOccurs="1" name="Y" type="s:int" />
          </s:sequence>
        </s:complexType>
        <s:complexType name="LonLatPtOffset">
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="Point" type="s0:LonLatPt" />
            <s:element minOccurs="1" maxOccurs="1" name="XOffset" type="s:int" />
            <s:element minOccurs="1" maxOccurs="1" name="YOffset" type="s:int" />
          </s:sequence>
        </s:complexType>
        <s:complexType name="ArrayOfOverlappingThemeInfo">
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="unbounded" name="OverlappingThemeInfo" type="s0:OverlappingThemeInfo" />
          </s:sequence>
        </s:complexType>
        <s:complexType name="OverlappingThemeInfo">
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="LocalTheme" type="s:boolean" />
            <s:element minOccurs="1" maxOccurs="1" name="Theme" type="s0:Theme" />
            <s:element minOccurs="1" maxOccurs="1" name="Point" type="s0:LonLatPt" />
            <s:element minOccurs="0" maxOccurs="1" name="ThemeName" type="s:string" />
            <s:element minOccurs="1" maxOccurs="1" name="Capture" type="s:dateTime" />
            <s:element minOccurs="1" maxOccurs="1" name="ProjectionId" type="s0:ProjectionType" />
            <s:element minOccurs="1" maxOccurs="1" name="LoScale" type="s0:Scale" />
            <s:element minOccurs="1" maxOccurs="1" name="HiScale" type="s0:Scale" />
            <s:element minOccurs="0" maxOccurs="1" name="Url" type="s:string" />
          </s:sequence>
        </s:complexType>
        <s:simpleType name="ProjectionType">
          <s:restriction base="s:string">
            <s:enumeration value="Geographic" />
            <s:enumeration value="UtmNad27" />
            <s:enumeration value="UtmNad83" />
          </s:restriction>
        </s:simpleType>
        <s:element name="GetAreaFromRect">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="upperLeft" type="s0:LonLatPt" />
              <s:element minOccurs="1" maxOccurs="1" name="lowerRight" type="s0:LonLatPt" />
              <s:element minOccurs="1" maxOccurs="1" name="theme" type="s0:Theme" />
              <s:element minOccurs="1" maxOccurs="1" name="scale" type="s0:Scale" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:element name="GetAreaFromRectResponse">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="GetAreaFromRectResult" type="s0:AreaBoundingBox" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:element name="GetAreaFromTileId">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="id" type="s0:TileId" />
              <s:element minOccurs="1" maxOccurs="1" name="displayPixWidth" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="displayPixHeight" type="s:int" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:element name="GetAreaFromTileIdResponse">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="GetAreaFromTileIdResult" type="s0:AreaBoundingBox" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:element name="GetLatLonMetrics">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="point" type="s0:LonLatPt" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:element name="GetLatLonMetricsResponse">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="GetLatLonMetricsResult" type="s0:ArrayOfThemeBoundingBox" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:complexType name="ArrayOfThemeBoundingBox">
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="unbounded" name="ThemeBoundingBox" type="s0:ThemeBoundingBox" />
          </s:sequence>
        </s:complexType>
        <s:complexType name="ThemeBoundingBox">
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="Theme" type="s0:Theme" />
            <s:element minOccurs="0" maxOccurs="1" name="ThemeName" type="s:string" />
            <s:element minOccurs="1" maxOccurs="1" name="Sparseness" type="s:int" />
            <s:element minOccurs="1" maxOccurs="1" name="LoScale" type="s0:Scale" />
            <s:element minOccurs="1" maxOccurs="1" name="HiScale" type="s0:Scale" />
            <s:element minOccurs="1" maxOccurs="1" name="ProjectionId" type="s0:ProjectionType" />
            <s:element minOccurs="0" maxOccurs="1" name="ProjectionName" type="s:string" />
            <s:element minOccurs="1" maxOccurs="1" name="WestLongitude" type="s:double" />
            <s:element minOccurs="1" maxOccurs="1" name="NorthLatitude" type="s:double" />
            <s:element minOccurs="1" maxOccurs="1" name="EastLongitude" type="s:double" />
            <s:element minOccurs="1" maxOccurs="1" name="SouthLatitude" type="s:double" />
          </s:sequence>
        </s:complexType>
        <s:element name="GetPlaceFacts">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="place" type="s0:Place" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:element name="GetPlaceFactsResponse">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="GetPlaceFactsResult" type="s0:PlaceFacts" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:complexType name="PlaceFacts">
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="Place" type="s0:Place" />
            <s:element minOccurs="1" maxOccurs="1" name="Center" type="s0:LonLatPt" />
            <s:element minOccurs="1" maxOccurs="1" name="AvailableThemeMask" type="s0:Themes" />
            <s:element minOccurs="1" maxOccurs="1" name="PlaceTypeId" type="s0:PlaceType" />
            <s:element minOccurs="1" maxOccurs="1" name="Population" type="s:int" />
          </s:sequence>
        </s:complexType>
        <s:simpleType name="Themes">
          <s:list>
            <s:simpleType>
              <s:restriction base="s:string">
                <s:enumeration value="Photo" />
                <s:enumeration value="Topo" />
                <s:enumeration value="Relief" />
              </s:restriction>
            </s:simpleType>
          </s:list>
        </s:simpleType>
        <s:element name="GetPlaceList">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="placeName" type="s:string" />
              <s:element minOccurs="1" maxOccurs="1" name="MaxItems" type="s:int" />
              <s:element minOccurs="1" maxOccurs="1" name="imagePresence" type="s:boolean" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:element name="GetPlaceListResponse">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="GetPlaceListResult" type="s0:ArrayOfPlaceFacts" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:complexType name="ArrayOfPlaceFacts">
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="unbounded" name="PlaceFacts" type="s0:PlaceFacts" />
          </s:sequence>
        </s:complexType>
        <s:element name="GetPlaceListInRect">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="upperleft" type="s0:LonLatPt" />
              <s:element minOccurs="1" maxOccurs="1" name="lowerright" type="s0:LonLatPt" />
              <s:element minOccurs="1" maxOccurs="1" name="ptype" type="s0:PlaceType" />
              <s:element minOccurs="1" maxOccurs="1" name="MaxItems" type="s:int" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:element name="GetPlaceListInRectResponse">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="GetPlaceListInRectResult" type="s0:ArrayOfPlaceFacts" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:element name="GetTheme">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="theme" type="s0:Theme" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:element name="GetThemeResponse">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="GetThemeResult" type="s0:ThemeInfo" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:complexType name="ThemeInfo">
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="Theme" type="s0:Theme" />
            <s:element minOccurs="0" maxOccurs="1" name="Name" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="Description" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="Supplier" type="s:string" />
            <s:element minOccurs="1" maxOccurs="1" name="LoScale" type="s0:Scale" />
            <s:element minOccurs="1" maxOccurs="1" name="HiScale" type="s0:Scale" />
            <s:element minOccurs="1" maxOccurs="1" name="ProjectionId" type="s0:ProjectionType" />
            <s:element minOccurs="0" maxOccurs="1" name="ProjectionName" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="CopyrightNotice" type="s:string" />
          </s:sequence>
        </s:complexType>
        <s:element name="GetTileMetaFromLonLatPt">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="point" type="s0:LonLatPt" />
              <s:element minOccurs="1" maxOccurs="1" name="theme" type="s0:Theme" />
              <s:element minOccurs="1" maxOccurs="1" name="scale" type="s0:Scale" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:element name="GetTileMetaFromLonLatPtResponse">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="GetTileMetaFromLonLatPtResult" type="s0:TileMeta" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:element name="GetTileMetaFromTileId">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="id" type="s0:TileId" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:element name="GetTileMetaFromTileIdResponse">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="GetTileMetaFromTileIdResult" type="s0:TileMeta" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:element name="GetTile">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="1" maxOccurs="1" name="id" type="s0:TileId" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:element name="GetTileResponse">
          <s:complexType>
            <s:sequence>
              <s:element minOccurs="0" maxOccurs="1" name="GetTileResult" type="s:base64Binary" />
            </s:sequence>
          </s:complexType>
        </s:element>
        <s:element name="ArrayOfPlaceFacts" nillable="true" type="s0:ArrayOfPlaceFacts" />
        <s:element name="ThemeInfo" type="s0:ThemeInfo" />
      </s:schema>
    </types>
    <message name="ConvertLonLatPtToNearestPlaceSoapIn">
      <part name="parameters" element="s0:ConvertLonLatPtToNearestPlace" />
    </message>
    <message name="ConvertLonLatPtToNearestPlaceSoapOut">
      <part name="parameters" element="s0:ConvertLonLatPtToNearestPlaceResponse" />
    </message>
    <message name="ConvertLonLatPtToUtmPtSoapIn">
      <part name="parameters" element="s0:ConvertLonLatPtToUtmPt" />
    </message>
    <message name="ConvertLonLatPtToUtmPtSoapOut">
      <part name="parameters" element="s0:ConvertLonLatPtToUtmPtResponse" />
    </message>
    <message name="ConvertUtmPtToLonLatPtSoapIn">
      <part name="parameters" element="s0:ConvertUtmPtToLonLatPt" />
    </message>
    <message name="ConvertUtmPtToLonLatPtSoapOut">
      <part name="parameters" element="s0:ConvertUtmPtToLonLatPtResponse" />
    </message>
    <message name="ConvertPlaceToLonLatPtSoapIn">
      <part name="parameters" element="s0:ConvertPlaceToLonLatPt" />
    </message>
    <message name="ConvertPlaceToLonLatPtSoapOut">
      <part name="parameters" element="s0:ConvertPlaceToLonLatPtResponse" />
    </message>
    <message name="CountPlacesInRectSoapIn">
      <part name="parameters" element="s0:CountPlacesInRect" />
    </message>
    <message name="CountPlacesInRectSoapOut">
      <part name="parameters" element="s0:CountPlacesInRectResponse" />
    </message>
    <message name="GetAreaFromPtSoapIn">
      <part name="parameters" element="s0:GetAreaFromPt" />
    </message>
    <message name="GetAreaFromPtSoapOut">
      <part name="parameters" element="s0:GetAreaFromPtResponse" />
    </message>
    <message name="GetAreaFromRectSoapIn">
      <part name="parameters" element="s0:GetAreaFromRect" />
    </message>
    <message name="GetAreaFromRectSoapOut">
      <part name="parameters" element="s0:GetAreaFromRectResponse" />
    </message>
    <message name="GetAreaFromTileIdSoapIn">
      <part name="parameters" element="s0:GetAreaFromTileId" />
    </message>
    <message name="GetAreaFromTileIdSoapOut">
      <part name="parameters" element="s0:GetAreaFromTileIdResponse" />
    </message>
    <message name="GetLatLonMetricsSoapIn">
      <part name="parameters" element="s0:GetLatLonMetrics" />
    </message>
    <message name="GetLatLonMetricsSoapOut">
      <part name="parameters" element="s0:GetLatLonMetricsResponse" />
    </message>
    <message name="GetPlaceFactsSoapIn">
      <part name="parameters" element="s0:GetPlaceFacts" />
    </message>
    <message name="GetPlaceFactsSoapOut">
      <part name="parameters" element="s0:GetPlaceFactsResponse" />
    </message>
    <message name="GetPlaceListSoapIn">
      <part name="parameters" element="s0:GetPlaceList" />
    </message>
    <message name="GetPlaceListSoapOut">
      <part name="parameters" element="s0:GetPlaceListResponse" />
    </message>
    <message name="GetPlaceListInRectSoapIn">
      <part name="parameters" element="s0:GetPlaceListInRect" />
    </message>
    <message name="GetPlaceListInRectSoapOut">
      <part name="parameters" element="s0:GetPlaceListInRectResponse" />
    </message>
    <message name="GetThemeSoapIn">
      <part name="parameters" element="s0:GetTheme" />
    </message>
    <message name="GetThemeSoapOut">
      <part name="parameters" element="s0:GetThemeResponse" />
    </message>
    <message name="GetTileMetaFromLonLatPtSoapIn">
      <part name="parameters" element="s0:GetTileMetaFromLonLatPt" />
    </message>
    <message name="GetTileMetaFromLonLatPtSoapOut">
      <part name="parameters" element="s0:GetTileMetaFromLonLatPtResponse" />
    </message>
    <message name="GetTileMetaFromTileIdSoapIn">
      <part name="parameters" element="s0:GetTileMetaFromTileId" />
    </message>
    <message name="GetTileMetaFromTileIdSoapOut">
      <part name="parameters" element="s0:GetTileMetaFromTileIdResponse" />
    </message>
    <message name="GetTileSoapIn">
      <part name="parameters" element="s0:GetTile" />
    </message>
    <message name="GetTileSoapOut">
      <part name="parameters" element="s0:GetTileResponse" />
    </message>
    <message name="GetPlaceListHttpGetIn">
      <part name="placeName" type="s:string" />
      <part name="MaxItems" type="s:string" />
      <part name="imagePresence" type="s:string" />
    </message>
    <message name="GetPlaceListHttpGetOut">
      <part name="Body" element="s0:ArrayOfPlaceFacts" />
    </message>
    <message name="GetThemeHttpGetIn">
      <part name="theme" type="s:string" />
    </message>
    <message name="GetThemeHttpGetOut">
      <part name="Body" element="s0:ThemeInfo" />
    </message>
    <message name="GetPlaceListHttpPostIn">
      <part name="placeName" type="s:string" />
      <part name="MaxItems" type="s:string" />
      <part name="imagePresence" type="s:string" />
    </message>
    <message name="GetPlaceListHttpPostOut">
      <part name="Body" element="s0:ArrayOfPlaceFacts" />
    </message>
    <message name="GetThemeHttpPostIn">
      <part name="theme" type="s:string" />
    </message>
    <message name="GetThemeHttpPostOut">
      <part name="Body" element="s0:ThemeInfo" />
    </message>
    <portType name="TerraServiceSoap">
      <operation name="ConvertLonLatPtToNearestPlace">
        <input message="s0:ConvertLonLatPtToNearestPlaceSoapIn" />
        <output message="s0:ConvertLonLatPtToNearestPlaceSoapOut" />
      </operation>
      <operation name="ConvertLonLatPtToUtmPt">
        <input message="s0:ConvertLonLatPtToUtmPtSoapIn" />
        <output message="s0:ConvertLonLatPtToUtmPtSoapOut" />
      </operation>
      <operation name="ConvertUtmPtToLonLatPt">
        <input message="s0:ConvertUtmPtToLonLatPtSoapIn" />
        <output message="s0:ConvertUtmPtToLonLatPtSoapOut" />
      </operation>
      <operation name="ConvertPlaceToLonLatPt">
        <input message="s0:ConvertPlaceToLonLatPtSoapIn" />
        <output message="s0:ConvertPlaceToLonLatPtSoapOut" />
      </operation>
      <operation name="CountPlacesInRect">
        <input message="s0:CountPlacesInRectSoapIn" />
        <output message="s0:CountPlacesInRectSoapOut" />
      </operation>
      <operation name="GetAreaFromPt">
        <input message="s0:GetAreaFromPtSoapIn" />
        <output message="s0:GetAreaFromPtSoapOut" />
      </operation>
      <operation name="GetAreaFromRect">
        <input message="s0:GetAreaFromRectSoapIn" />
        <output message="s0:GetAreaFromRectSoapOut" />
      </operation>
      <operation name="GetAreaFromTileId">
        <input message="s0:GetAreaFromTileIdSoapIn" />
        <output message="s0:GetAreaFromTileIdSoapOut" />
      </operation>
      <operation name="GetLatLonMetrics">
        <input message="s0:GetLatLonMetricsSoapIn" />
        <output message="s0:GetLatLonMetricsSoapOut" />
      </operation>
      <operation name="GetPlaceFacts">
        <input message="s0:GetPlaceFactsSoapIn" />
        <output message="s0:GetPlaceFactsSoapOut" />
      </operation>
      <operation name="GetPlaceList">
        <input message="s0:GetPlaceListSoapIn" />
        <output message="s0:GetPlaceListSoapOut" />
      </operation>
      <operation name="GetPlaceListInRect">
        <input message="s0:GetPlaceListInRectSoapIn" />
        <output message="s0:GetPlaceListInRectSoapOut" />
      </operation>
      <operation name="GetTheme">
        <input message="s0:GetThemeSoapIn" />
        <output message="s0:GetThemeSoapOut" />
      </operation>
      <operation name="GetTileMetaFromLonLatPt">
        <input message="s0:GetTileMetaFromLonLatPtSoapIn" />
        <output message="s0:GetTileMetaFromLonLatPtSoapOut" />
      </operation>
      <operation name="GetTileMetaFromTileId">
        <input message="s0:GetTileMetaFromTileIdSoapIn" />
        <output message="s0:GetTileMetaFromTileIdSoapOut" />
      </operation>
      <operation name="GetTile">
        <input message="s0:GetTileSoapIn" />
        <output message="s0:GetTileSoapOut" />
      </operation>
    </portType>
    <portType name="TerraServiceHttpGet">
      <operation name="GetPlaceList">
        <input message="s0:GetPlaceListHttpGetIn" />
        <output message="s0:GetPlaceListHttpGetOut" />
      </operation>
      <operation name="GetTheme">
        <input message="s0:GetThemeHttpGetIn" />
        <output message="s0:GetThemeHttpGetOut" />
      </operation>
    </portType>
    <portType name="TerraServiceHttpPost">
      <operation name="GetPlaceList">
        <input message="s0:GetPlaceListHttpPostIn" />
        <output message="s0:GetPlaceListHttpPostOut" />
      </operation>
      <operation name="GetTheme">
        <input message="s0:GetThemeHttpPostIn" />
        <output message="s0:GetThemeHttpPostOut" />
      </operation>
    </portType>
    <binding name="TerraServiceSoap" type="s0:TerraServiceSoap">
      <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" />
      <operation name="ConvertLonLatPtToNearestPlace">
        <soap:operation soapAction="http://terraservice.net/terraserver/ConvertLonLatPtToNearestPlace" style="document" />
        <input>
          <soap:body use="literal" />
        </input>
        <output>
          <soap:body use="literal" />
        </output>
      </operation>
      <operation name="ConvertLonLatPtToUtmPt">
        <soap:operation soapAction="http://terraservice.net/terraserver/ConvertLonLatPtToUtmPt" style="document" />
        <input>
          <soap:body use="literal" />
        </input>
        <output>
          <soap:body use="literal" />
        </output>
      </operation>
      <operation name="ConvertUtmPtToLonLatPt">
        <soap:operation soapAction="http://terraservice.net/terraserver/ConvertUtmPtToLonLatPt" style="document" />
        <input>
          <soap:body use="literal" />
        </input>
        <output>
          <soap:body use="literal" />
        </output>
      </operation>
      <operation name="ConvertPlaceToLonLatPt">
        <soap:operation soapAction="http://terraservice.net/terraserver/ConvertPlaceToLonLatPt" style="document" />
        <input>
          <soap:body use="literal" />
        </input>
        <output>
          <soap:body use="literal" />
        </output>
      </operation>
      <operation name="CountPlacesInRect">
        <soap:operation soapAction="http://terraservice.net/terraserver/CountPlacesInRect" style="document" />
        <input>
          <soap:body use="literal" />
        </input>
        <output>
          <soap:body use="literal" />
        </output>
      </operation>
      <operation name="GetAreaFromPt">
        <soap:operation soapAction="http://terraservice.net/terraserver/GetAreaFromPt" style="document" />
        <input>
          <soap:body use="literal" />
        </input>
        <output>
          <soap:body use="literal" />
        </output>
      </operation>
      <operation name="GetAreaFromRect">
        <soap:operation soapAction="http://terraservice.net/terraserver/GetAreaFromRect" style="document" />
        <input>
          <soap:body use="literal" />
        </input>
        <output>
          <soap:body use="literal" />
        </output>
      </operation>
      <operation name="GetAreaFromTileId">
        <soap:operation soapAction="http://terraservice.net/terraserver/GetAreaFromTileId" style="document" />
        <input>
          <soap:body use="literal" />
        </input>
        <output>
          <soap:body use="literal" />
        </output>
      </operation>
      <operation name="GetLatLonMetrics">
        <soap:operation soapAction="http://terraservice.net/terraserver/GetLatLonMetrics" style="document" />
        <input>
          <soap:body use="literal" />
        </input>
        <output>
          <soap:body use="literal" />
        </output>
      </operation>
      <operation name="GetPlaceFacts">
        <soap:operation soapAction="http://terraservice.net/terraserver/GetPlaceFacts" style="document" />
        <input>
          <soap:body use="literal" />
        </input>
        <output>
          <soap:body use="literal" />
        </output>
      </operation>
      <operation name="GetPlaceList">
        <soap:operation soapAction="http://terraservice.net/terraserver/GetPlaceList" style="document" />
        <input>
          <soap:body use="literal" />
        </input>
        <output>
          <soap:body use="literal" />
        </output>
      </operation>
      <operation name="GetPlaceListInRect">
        <soap:operation soapAction="http://terraservice.net/terraserver/GetPlaceListInRect" style="document" />
        <input>
          <soap:body use="literal" />
        </input>
        <output>
          <soap:body use="literal" />
        </output>
      </operation>
      <operation name="GetTheme">
        <soap:operation soapAction="http://terraservice.net/terraserver/GetTheme" style="document" />
        <input>
          <soap:body use="literal" />
        </input>
        <output>
          <soap:body use="literal" />
        </output>
      </operation>
      <operation name="GetTileMetaFromLonLatPt">
        <soap:operation soapAction="http://terraservice.net/terraserver/GetTileMetaFromLonLatPt" style="document" />
        <input>
          <soap:body use="literal" />
        </input>
        <output>
          <soap:body use="literal" />
        </output>
      </operation>
      <operation name="GetTileMetaFromTileId">
        <soap:operation soapAction="http://terraservice.net/terraserver/GetTileMetaFromTileId" style="document" />
        <input>
          <soap:body use="literal" />
        </input>
        <output>
          <soap:body use="literal" />
        </output>
      </operation>
      <operation name="GetTile">
        <soap:operation soapAction="http://terraservice.net/terraserver/GetTile" style="document" />
        <input>
          <soap:body use="literal" />
        </input>
        <output>
          <soap:body use="literal" />
        </output>
      </operation>
    </binding>
    <binding name="TerraServiceHttpGet" type="s0:TerraServiceHttpGet">
      <http:binding verb="GET" />
      <operation name="GetPlaceList">
        <http:operation location="/GetPlaceList" />
        <input>
          <http:urlEncoded />
        </input>
        <output>
          <mime:mimeXml part="Body" />
        </output>
      </operation>
      <operation name="GetTheme">
        <http:operation location="/GetTheme" />
        <input>
          <http:urlEncoded />
        </input>
        <output>
          <mime:mimeXml part="Body" />
        </output>
      </operation>
    </binding>
    <binding name="TerraServiceHttpPost" type="s0:TerraServiceHttpPost">
      <http:binding verb="POST" />
      <operation name="GetPlaceList">
        <http:operation location="/GetPlaceList" />
        <input>
          <mime:content type="application/x-www-form-urlencoded" />
        </input>
        <output>
          <mime:mimeXml part="Body" />
        </output>
      </operation>
      <operation name="GetTheme">
        <http:operation location="/GetTheme" />
        <input>
          <mime:content type="application/x-www-form-urlencoded" />
        </input>
        <output>
          <mime:mimeXml part="Body" />
        </output>
      </operation>
    </binding>
    <service name="TerraService">
      <port name="TerraServiceSoap" binding="s0:TerraServiceSoap">
        <soap:address location="http://terraservice.net/TerraService.asmx" />
      </port>
      <port name="TerraServiceHttpGet" binding="s0:TerraServiceHttpGet">
        <http:address location="http://terraservice.net/TerraService.asmx" />
      </port>
      <port name="TerraServiceHttpPost" binding="s0:TerraServiceHttpPost">
        <http:address location="http://terraservice.net/TerraService.asmx" />
      </port>
    </service>
  </definitions>
  
  
  1.1                  xml-axis/java/test/wsdl/terra/TerraServiceTestCase.java
  
  Index: TerraServiceTestCase.java
  ===================================================================
  /**
   * TerraServiceTestCase.java
   *
   * This file was auto-generated from WSDL
   * by the Apache Axis WSDL2Java emitter.
   */
  
  package test.wsdl.terra;
  
  public class TerraServiceTestCase extends junit.framework.TestCase {
      public TerraServiceTestCase(java.lang.String name) {
          super(name);
      }
  
      public void test11TerraServiceSoapGetPlaceList() {
          TerraServiceSoap binding;
          try {
              binding = new TerraServiceLocator().getTerraServiceSoap();
          }
          catch (javax.xml.rpc.ServiceException jre) {
              throw new junit.framework.AssertionFailedError("JAX-RPC ServiceException caught: " + jre);
          }
          assertTrue("binding is null", binding != null);
  
          try {
              ArrayOfPlaceFacts value = null;
              value = binding.getPlaceList(new java.lang.String("Boston"), 5, true);
              PlaceFacts[] facts = value.getPlaceFacts();
              for(int i=0;i<facts.length;i++){
                  System.out.println("City      :" + facts[i].getPlace().getCity());
                  System.out.println("State     :" + facts[i].getPlace().getState());
                  System.out.println("Country   :" + facts[i].getPlace().getCountry());
                  System.out.println("Lat       :" + facts[i].getCenter().getLon());
                  System.out.println("Long      :" + facts[i].getCenter().getLat());
                  System.out.println("Theme     :" + facts[i].getAvailableThemeMask());
                  System.out.println("PlaceType :" + facts[i].getPlaceTypeId().getValue());
                  System.out.println("Population:" + facts[i].getPopulation());
                  System.out.println("---------------------------");
              }
          }
          catch (java.rmi.RemoteException re) {
              throw new junit.framework.AssertionFailedError("Remote Exception caught: " + re);
          }
      }
  }
  
  
  
  1.34      +117 -117  xml-axis/java/src/org/apache/axis/wsdl/symbolTable/SymbolTable.java
  
  Index: SymbolTable.java
  ===================================================================
  RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/wsdl/symbolTable/SymbolTable.java,v
  retrieving revision 1.33
  retrieving revision 1.34
  diff -u -r1.33 -r1.34
  --- SymbolTable.java	9 Sep 2002 17:03:25 -0000	1.33
  +++ SymbolTable.java	13 Sep 2002 13:42:22 -0000	1.34
  @@ -204,7 +204,7 @@
               return null;
           }
       } // get
  -    
  +
   
       /**
        * Get the type entry for the given qname.
  @@ -292,7 +292,7 @@
       /**
        * Get the WSDL URI.  The WSDL URI is null until populate
        * is called, and ONLY if a WSDL URI is provided.
  -     * 
  +     *
        */
       public String getWSDLURI() {
           return wsdlURI;
  @@ -300,14 +300,14 @@
   
       /**
        * Are we wrapping literal soap body elements.
  -     */ 
  +     */
       public boolean isWrapped() {
           return wrapped;
       }
   
       /**
        * Turn on/off element wrapping for literal soap body's.
  -     */ 
  +     */
       public void setWrapped(boolean wrapped) {
           this.wrapped = wrapped;
       }
  @@ -390,7 +390,7 @@
   
       /**
        * Scan the Definition for undefined objects and throw an error.
  -     */ 
  +     */
       private void checkForUndefined(Definition def, String filename) throws IOException {
           if (def != null) {
               // Bindings
  @@ -428,7 +428,7 @@
                       }
                   }
               }
  -            
  +
   /* tomj: This is a bad idea, faults seem to be undefined
   // RJB reply:  this MUST be done for those systems that do something with
   // messages.  Perhaps we have to do an extra step for faults?  I'll leave
  @@ -461,8 +461,8 @@
                   // Report undefined types
                   if (entry instanceof UndefinedType) {
                       QName qn = entry.getQName();
  -                 
  -                    // Special case dateTime/timeInstant that changed 
  +
  +                    // Special case dateTime/timeInstant that changed
                       // from version to version.
                       if ((qn.getLocalPart().equals("dateTime") &&
                            !qn.getNamespaceURI().equals(Constants.URI_2001_SCHEMA_XSD)) ||
  @@ -472,8 +472,8 @@
                                   Messages.getMessage("wrongNamespace00",
                                                        qn.getLocalPart(),
                                                        qn.getNamespaceURI()));
  -                    } 
  -                    
  +                    }
  +
                       // Check for a undefined XSD Schema Type and throw
                       // an unsupported message instead of undefined
                       if (SchemaUtils.isSimpleSchemaType(entry.getQName())) {
  @@ -481,7 +481,7 @@
                                   Messages.getMessage("unsupportedSchemaType00",
                                                        qn.getLocalPart()));
                       }
  -                    
  +
                       // last case, its some other undefined thing
                       throw new IOException(
                               Messages.getMessage("undefined00",
  @@ -550,16 +550,16 @@
           // in them, but the URL class wont do the right thing when we later
           // process this URL as the contextURL.
           String path = spec.replace('\\', '/');
  -        
  +
           // See if we have a good URL.
           URL url = null;
           try {
               // first, try to treat spec as a full URL
               url = new URL(contextURL, path);
  -            
  +
               // if we are deail with files in both cases, create a url
               // by using the directory of the context URL.
  -            if (contextURL != null && 
  +            if (contextURL != null &&
                       url.getProtocol().equals("file") &&
                       contextURL.getProtocol().equals("file")) {
                   url = getFileURL(contextURL, path);
  @@ -586,7 +586,7 @@
               URL parent = new File(contextFileName).getParentFile().toURL();
               if (parent != null) {
                   return new URL(parent, path);
  -            } 
  +            }
           }
           return new URL("file", "", path);
       } // getFileURL
  @@ -602,7 +602,7 @@
                   NamedNodeMap attributes = child.getAttributes();
                   Node namespace = attributes.getNamedItem("namespace");
                   // skip XSD import of soap encoding
  -                if (namespace != null && 
  +                if (namespace != null &&
                           Constants.isSOAP_ENC(namespace.getNodeValue())) {
                       continue;
                   }
  @@ -686,11 +686,11 @@
                   // Create a type entry for the referenced type
                   BooleanHolder forElement = new BooleanHolder();
                   QName refQName = Utils.getTypeQName(node, forElement, false);
  -                
  +
                   if (refQName != null && !forElement.value) {
                       createTypeFromRef(node);
  -                    
  -                    // Get the symbol table entry and make sure it is a simple 
  +
  +                    // Get the symbol table entry and make sure it is a simple
                       // type
                       if (refQName != null) {
                           TypeEntry refType = getTypeEntry(refQName, false);
  @@ -719,7 +719,7 @@
               }
               else if (localPart.equals("part") &&
                        Constants.isWSDL(nodeKind.getNamespaceURI())) {
  -                
  +
                   // This is a wsdl part.  Create an TypeEntry representing the reference
                   createTypeFromRef(node);
               }
  @@ -765,7 +765,7 @@
                   return;
               }
   
  -            // If the node has a type or ref attribute, get the 
  +            // If the node has a type or ref attribute, get the
               // qname representing the type
               BooleanHolder forElement = new BooleanHolder();
               QName refQName = Utils.getTypeQName(node, forElement, false);
  @@ -779,17 +779,17 @@
                       }
                       throw new IOException(Messages.getMessage("emptyref00", name));
                   }
  -                
  +
                   // Now get the TypeEntry
                   TypeEntry refType = getTypeEntry(refQName, forElement.value);
   
                   if (!belowSchemaLevel) {
                       symbolTablePut(new DefinedElement(qName, refType, node, ""));
                   }
  -            }   
  +            }
               else {
                   // Flow to here indicates no type= or ref= attribute.
  -                
  +
                   // See if this is an array or simple type definition.
                   IntHolder numDims = new IntHolder();
                   numDims.value = 0;
  @@ -818,7 +818,7 @@
   
                       TypeEntry defType = null;
                       if (isElement) {
  -                        if (!belowSchemaLevel) { 
  +                        if (!belowSchemaLevel) {
                               defType = new DefinedElement(qName, refType, node, dims);
                           }
                       } else {
  @@ -838,12 +838,12 @@
                       else {
   
                           // Create a type entry, set whether it should
  -                        // be mapped as a simple type, and put it in the 
  +                        // be mapped as a simple type, and put it in the
                           // symbol table.
                           TypeEntry te = null;
                           if (!isElement) {
                               te = new DefinedType(qName, node);
  -                            
  +
                               // check if we are an anonymous type underneath
                               // an element.  If so, we point the refType of the
                               // element to us (the real type).
  @@ -855,7 +855,7 @@
                                       parentType.setRefType(te);
                                   }
                               }
  -                            
  +
                           } else {
                               if (!belowSchemaLevel) {
                                   te = new DefinedElement(qName, node);
  @@ -872,9 +872,9 @@
               }
           }
       } // createTypeFromDef
  -    
  +
       /**
  -     * Node may contain a reference (via type=, ref=, or element= attributes) to 
  +     * Node may contain a reference (via type=, ref=, or element= attributes) to
        * another type.  Create a Type object representing this referenced type.
        */
       private void createTypeFromRef(Node node) throws IOException {
  @@ -890,11 +890,11 @@
                   }
                   throw new IOException(Messages.getMessage("emptyref00", name));
               }
  -        
  +
               // Get Type or Element depending on whether type attr was used.
               TypeEntry type = getTypeEntry(qName, forElement.value);
  -            
  -            // A symbol table entry is created if the TypeEntry is not found    
  +
  +            // A symbol table entry is created if the TypeEntry is not found
               if (type == null) {
                   // See if this is a special QName for collections
                   if (qName.getLocalPart().indexOf("[") > 0) {
  @@ -967,7 +967,7 @@
   
       /**
        * Create the parameters and store them in the bindingEntry.
  -     */ 
  +     */
       private void populateParameters() throws IOException {
           Iterator it = symbolTable.values().iterator();
           while (it.hasNext()) {
  @@ -975,19 +975,19 @@
               for (int i = 0; i < v.size(); ++i) {
                   if (v.get(i) instanceof BindingEntry) {
                       BindingEntry bEntry = (BindingEntry) v.get(i);
  -                    
  +
                       Binding binding = bEntry.getBinding();
                       PortType portType = binding.getPortType();
  -                    
  +
                       HashMap parameters = new HashMap();
                       Iterator operations = portType.getOperations().iterator();
  -                    
  +
                       // get parameters
                       while(operations.hasNext()) {
                           Operation operation = (Operation) operations.next();
                           String namespace = portType.getQName().getNamespaceURI();
  -                        Parameters parms = getOperationParameters(operation, 
  -                                                                  namespace, 
  +                        Parameters parms = getOperationParameters(operation,
  +                                                                  namespace,
                                                                     bEntry);
                           parameters.put(operation, parms);
                       }
  @@ -996,7 +996,7 @@
               }
           }
       } // populate Parameters
  -    
  +
       /**
        * For the given operation, this method returns the parameter info conveniently collated.
        * There is a bit of processing that is needed to write the interface, stub, and skeleton.
  @@ -1004,7 +1004,7 @@
        * Parameters object.
        */
       public Parameters getOperationParameters(Operation operation,
  -                                              String namespace, 
  +                                              String namespace,
                                                 BindingEntry bindingEntry) throws IOException {
           Parameters parameters = new Parameters();
   
  @@ -1038,15 +1038,15 @@
               literalInput = (bindingEntry.getInputBodyType(operation) == BindingEntry.USE_LITERAL);
               literalOutput = (bindingEntry.getOutputBodyType(operation) == BindingEntry.USE_LITERAL);
           }
  -        
  +
           // Collect all the input parameters
           Input input = operation.getInput();
           if (input != null) {
               getParametersFromParts(inputs,
  -                                   input.getMessage().getOrderedParts(null), 
  -                                   literalInput, 
  -                                   operation.getName(), 
  -                                   bindingEntry, 
  +                                   input.getMessage().getOrderedParts(null),
  +                                   literalInput,
  +                                   operation.getName(),
  +                                   bindingEntry,
                                      false);
           }
   
  @@ -1054,10 +1054,10 @@
           Output output = operation.getOutput();
           if (output != null) {
               getParametersFromParts(outputs,
  -                                   output.getMessage().getOrderedParts(null), 
  -                                   literalOutput, 
  -                                   operation.getName(), 
  -                                   bindingEntry, 
  +                                   output.getMessage().getOrderedParts(null),
  +                                   literalOutput,
  +                                   operation.getName(),
  +                                   bindingEntry,
                                      true);  // output parts
           }
   
  @@ -1086,7 +1086,7 @@
               }
           }
   
  -        // Get the mode info about those parts that aren't in the 
  +        // Get the mode info about those parts that aren't in the
           // parameterOrder list. Since they're not in the parameterOrder list,
           // the order is, first all in (and inout) parameters, then all out
           // parameters, in the order they appear in the messages.
  @@ -1098,7 +1098,7 @@
   
           // Now that the remaining in and inout parameters are collected,
           // determine the status of outputs.  If there is only 1, then it
  -        // is the return value.  If there are more than 1, then they are 
  +        // is the return value.  If there are more than 1, then they are
           // out parameters.
           if (outputs.size() == 1) {
               parameters.returnParam = (Parameter)outputs.get(0);
  @@ -1134,12 +1134,12 @@
       /**
        * Add an in or inout parameter to the parameters object.
        */
  -    private void addInishParm(Vector inputs, 
  -                              Vector outputs, 
  -                              int index, 
  -                              int outdex, 
  -                              Parameters parameters, 
  -                              boolean trimInput) throws IOException {        
  +    private void addInishParm(Vector inputs,
  +                              Vector outputs,
  +                              int index,
  +                              int outdex,
  +                              Parameters parameters,
  +                              boolean trimInput) throws IOException {
           Parameter p = (Parameter)inputs.get(index);
           // If this is an element, we want the XML to reflect the element name
           // not the part name.
  @@ -1168,35 +1168,35 @@
                   // If we're here, we have both an input and an output
                   // part with the same name but different types.... guess
                   // it's not really an inout....
  -                // 
  -                //throw new IOException(Messages.getMessage("differentTypes00", 
  -                //     new String[] { p.getName(), 
  -                //                    p.getType().getQName().toString(), 
  +                //
  +                //throw new IOException(Messages.getMessage("differentTypes00",
  +                //     new String[] { p.getName(),
  +                //                    p.getType().getQName().toString(),
                   //                   outParam.getType().getQName().toString()
                   //                  }
                   //));
  -                
  +
                   // There is some controversy about this, and the specs are
                   // a bit vague about what should happen if the types don't
                   // agree.  Throwing an error is not correct with document/lit
                   // operations, as part names get resused (i.e. "body").
  -                // See WSDL 1.1 section 2.4.6, 
  -                //     WSDL 1.2 working draft 9 July 2002 section 2.3.1 
  +                // See WSDL 1.1 section 2.4.6,
  +                //     WSDL 1.2 working draft 9 July 2002 section 2.3.1
                   ++parameters.inputs;
               }
           } else {
               ++parameters.inputs;
           }
  -        
  +
           parameters.list.add(p);
       } // addInishParm
   
       /**
        * Add an output parameter to the parameters object.
        */
  -    private void addOutParm(Vector outputs, 
  -                            int outdex, 
  -                            Parameters parameters, 
  +    private void addOutParm(Vector outputs,
  +                            int outdex,
  +                            Parameters parameters,
                               boolean trim) {
           Parameter p = (Parameter)outputs.get(outdex);
   
  @@ -1218,12 +1218,12 @@
        * This method returns a vector containing Parameters which represent
        * each Part (shouldn't we call these "Parts" or something?)
        */
  -    public void getParametersFromParts(Vector v, 
  -                                       Collection parts, 
  -                                       boolean literal, 
  -                                       String opName, 
  -                                       BindingEntry bindingEntry, 
  -                                       boolean outputParts) 
  +    public void getParametersFromParts(Vector v,
  +                                       Collection parts,
  +                                       boolean literal,
  +                                       String opName,
  +                                       BindingEntry bindingEntry,
  +                                       boolean outputParts)
               throws IOException {
           Iterator i = parts.iterator();
   
  @@ -1248,17 +1248,17 @@
           // Hack alert - Try to sense "wrapped" document literal mode
           // if we haven't been told not to.
           // Criteria:
  -        //  - If there is a single element part, 
  +        //  - If there is a single element part,
           //  - That part is an element
           //  - That element has the same name as the operation
           //  - That element has no attributes (check done below)
           if (!nowrap &&
  -                literal && 
  +                literal &&
                   numberOfElements == 1 &&
                   possiblyWrapped) {
               wrapped = true;
           }
  -        
  +
           i = parts.iterator();
           while (i.hasNext()) {
               Parameter param = new Parameter();
  @@ -1268,10 +1268,10 @@
               String partName = part.getName();
   
               // We're either:
  -            // 1. encoded 
  +            // 1. encoded
               // 2. literal & not wrapped.
               if (!literal || !wrapped || elementName == null) {
  -                
  +
                   param.setName(partName);
   
                   // Add this type or element name
  @@ -1287,18 +1287,18 @@
                   } else {
                       // no type or element
                       throw new IOException(
  -                            Messages.getMessage("noTypeOrElement00", 
  -                                                 new String[] {partName, 
  +                            Messages.getMessage("noTypeOrElement00",
  +                                                 new String[] {partName,
                                                                  opName}));
                   }
                   setMIMEType(param, bindingEntry == null ? null :
                           bindingEntry.getMIMEType(opName, partName));
  -                                
  +
                   v.add(param);
  -                
  +
                   continue;   // next part
               }
  -            
  +
               // flow to here means wrapped literal !
   
               // See if we can map all the XML types to java(?) types
  @@ -1314,12 +1314,12 @@
                   String bindingName =
                     bindingEntry == null ? "unknown" : bindingEntry.getBinding().getQName().toString();
                   throw new IOException(
  -                        Messages.getMessage("literalTypePart00", 
  -                                             new String[] {partName, 
  -                                                           opName,  
  +                        Messages.getMessage("literalTypePart00",
  +                                             new String[] {partName,
  +                                                           opName,
                                                              bindingName}));
               }
  -            
  +
               // Get the node which corresponds to the type entry for this
               // element.  i.e.:
               //  <part name="part" element="foo:bar"/>
  @@ -1327,9 +1327,9 @@
               //  <schema targetNamespace="foo">
               //    <element name="bar"...>  <--- This one
               node = getTypeEntry(elementName, true).getNode();
  -            
  +
               // Check if this element is of the form:
  -            //    <element name="foo" type="tns:foo_type"/> 
  +            //    <element name="foo" type="tns:foo_type"/>
               BooleanHolder forElement = new BooleanHolder();
               QName type = Utils.getTypeQName(node, forElement, false);
               if (type != null && !forElement.value) {
  @@ -1337,15 +1337,15 @@
                   // corresponds to THAT definition.
                   node = getTypeEntry(type, false).getNode();
               }
  -            
  +
               // If we have nothing at this point, we're in trouble.
               if (node == null) {
                   throw new IOException(
  -                        Messages.getMessage("badTypeNode", 
  +                        Messages.getMessage("badTypeNode",
                                                new String[] {
  -                                                 partName, 
  -                                                 opName,  
  -                                                 elementName.toString()}));                
  +                                                 partName,
  +                                                 opName,
  +                                                 elementName.toString()}));
               }
   
               // check for attributes
  @@ -1354,17 +1354,17 @@
                   // can't do wrapped mode
                   wrapped = false;
               }
  -            
  +
               // More conditions for wrapped mode to track JAX-RPC RI behavior
               // If we are dealing with output parameters:
               // - wrapped operations "dig into" the structure of the returned element
               //   and return the inner element type IF:
               //  1) there are no attributes on the "wrapper" element
               //  2) there is a single element inside the "wrapper" (the return type)
  -            // 
  -            // - wrapped operations return a bean mapped to the entire return 
  +            //
  +            // - wrapped operations return a bean mapped to the entire return
               //   element otherwise
  -        
  +
   
               // Get the nested type entries.
               // TODO - If we are unable to represent any of the types in the
  @@ -1374,7 +1374,7 @@
                       SchemaUtils.getContainedElementDeclarations(node, this);
   
               // IF we got the types entries and we didn't find attributes
  -            // AND either we are not doing output params OR 
  +            // AND either we are not doing output params OR
               //     there is only one element in a wrapped output param
               // THEN use the things in this element as the parameters
               if (vTypes != null && wrapped &&
  @@ -1390,16 +1390,16 @@
                       v.add(p);
                   }
               } else {
  -                // - we were unable to get the types OR 
  +                // - we were unable to get the types OR
                   // - we found attributes OR
                   // - we are doing output parameters (and there is more than 1)
                   // so we can't use wrapped mode.
                   param.setName(partName);
  -                
  +
                   if (typeName != null) {
                       param.setType(getType(typeName));
                   } else if (elementName != null) {
  -                    
  +
                       // An ugly hack here to set the referenced flag on the
                       // element and the anonymous type that the element defines
                       // There must be a better way to get this done.
  @@ -1410,12 +1410,12 @@
                           TypeEntry anonType = getType(anonQName);
                           anonType.setIsReferenced(true);
                       }
  -                    
  +
                       param.setType(element);
                   }
                   setMIMEType(param, bindingEntry == null ? null :
                           bindingEntry.getMIMEType(opName, partName));
  -                
  +
                   v.add(param);
               }
           } // while
  @@ -1636,11 +1636,11 @@
   
               // do a bit of name validation
               if (service.getQName() == null ||
  -                service.getQName().getLocalPart() == null || 
  +                service.getQName().getLocalPart() == null ||
                   service.getQName().getLocalPart().equals("")) {
                   throw new IOException(Messages.getMessage("BadServiceName00"));
               }
  -            
  +
               ServiceEntry sEntry = new ServiceEntry(service);
               symbolTablePut(sEntry);
           }
  @@ -1649,7 +1649,7 @@
       /**
        * Set each SymTabEntry's isReferenced flag.  The default is false.  If no other symbol
        * references this symbol, then leave it false, otherwise set it to true.
  -     * (An exception to the rule is that derived types are set as referenced if 
  +     * (An exception to the rule is that derived types are set as referenced if
        * their base type is referenced.  This is necessary to support generation and
        * registration of derived types.)
        */
  @@ -1748,7 +1748,7 @@
                           setTypeReferences(referent, doc, literal);
                       }
                   }
  -                // If the Defined Element has an anonymous type, 
  +                // If the Defined Element has an anonymous type,
                   // process it with the current literal flag setting.
                   QName anonQName = SchemaUtils.getElementAnonQName(entry.getNode());
                   if (anonQName != null) {
  @@ -1961,13 +1961,13 @@
       } // setServiceReferences
   
       /**
  -     * Put the given SymTabEntry into the symbol table, if appropriate.  
  +     * Put the given SymTabEntry into the symbol table, if appropriate.
        */
       private void symbolTablePut(SymTabEntry entry) throws IOException {
           QName name = entry.getQName();
           if (get(name, entry.getClass()) == null) {
               // An entry of the given qname of the given type doesn't exist yet.
  -            if (entry instanceof Type && 
  +            if (entry instanceof Type &&
                   get(name, UndefinedType.class) != null) {
   
                   // A undefined type exists in the symbol table, which means
  @@ -1977,7 +1977,7 @@
   
                   if (((TypeEntry)get(name, UndefinedType.class)).isSimpleType() &&
                       !((TypeEntry)entry).isSimpleType()) {
  -                    // Problem if the undefined type was used in a 
  +                    // Problem if the undefined type was used in a
                       // simple type context.
                       throw new IOException(
                                             Messages.getMessage("AttrNotSimpleType01",
  @@ -1998,12 +1998,12 @@
                                   types.setElementAt(entry, j);
                               }
                           }
  -                        
  +
                           // Update all of the entries that refer to the unknown type
                           ((UndefinedType)oldEntry).update((Type)entry);
                       }
                   }
  -            } else if (entry instanceof Element && 
  +            } else if (entry instanceof Element &&
                   get(name, UndefinedElement.class) != null) {
                   // A undefined element exists in the symbol table, which means
                   // that the element is used, but we don't yet have a definition for
  @@ -2023,7 +2023,7 @@
                                   types.setElementAt(entry, j);
                               }
                           }
  -                        
  +
                           // Update all of the entries that refer to the unknown type
                           ((Undefined)oldEntry).update((Element)entry);
                       }
  @@ -2043,7 +2043,7 @@
               }
           }
           else {
  -            throw new IOException(
  +            System.out.println(
                       Messages.getMessage("alreadyExists00", "" + name));
           }
       } // symbolTablePut
  
  
  

Mime
View raw message