gdaniels    02/02/08 06:45:02

  Modified:    java/src/org/apache/axis/handlers EchoHandler.java
  Log:
  Framework for static WSDL generation from the EchoHandler.
  
  Revision  Changes    Path
  1.27      +43 -0     xml-axis/java/src/org/apache/axis/handlers/EchoHandler.java
  
  Index: EchoHandler.java
  ===================================================================
  RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/handlers/EchoHandler.java,v
  retrieving revision 1.26
  retrieving revision 1.27
  diff -u -r1.26 -r1.27
  --- EchoHandler.java  10 Jan 2002 20:00:59 -0000      1.26
  +++ EchoHandler.java  8 Feb 2002 14:45:02 -0000       1.27
  @@ -60,7 +60,9 @@
   import org.apache.axis.MessageContext;
   import org.apache.axis.message.SOAPEnvelope;
   import org.apache.axis.utils.JavaUtils;
  +import org.apache.axis.utils.XMLUtils;
   import org.apache.log4j.Category;
  +import org.w3c.dom.Document;
   
   /**
    *
  @@ -84,4 +86,45 @@
           category.debug(JavaUtils.getMessage("exit00", "EchoHandler::invoke") );
       }
   
  +    public String wsdlStart = "<?xml version=\"1.0\" encoding=\"utf-8\" ?>" +
  +            "<definitions xmlns:s=\"http://www.w3.org/2001/XMLSchema\"; 
xmlns:http=\"http://schemas.xmlsoap.org/wsdl/http/\"; 
xmlns:mime=\"http://schemas.xmlsoap.org/wsdl/mime/\"; 
xmlns:soap=\"http://schemas.xmlsoap.org/wsdl/soap/\"; 
xmlns:soapenc=\"http://schemas.xmlsoap.org/soap/encoding/\"; 
xmlns:s0=\"http://tempuri.org/EchoService\"; 
targetNamespace=\"http://tempuri.org/EchoService\"; 
xmlns=\"http://schemas.xmlsoap.org/wsdl/\";>" +
  +            "<message name=\"request\">" +
  +            "<part name=\"content\" type=\"xsd:anyType\" />" +
  +            "</message>" +
  +            "<message name=\"response\">" +
  +            "<part name=\"content\" element=\"xsd:anyType\" />" +
  +            "</message>" +
  +            "<portType name=\"EchoSoap\">" +
  +            "<operation name=\"doIt\">" +
  +            "<input message=\"s0:request\" /> " +
  +            "<output message=\"s0:response\" /> " +
  +            "</operation>" +
  +            "</portType>" +
  +            "<binding name=\"EchoSoap\" type=\"s0:EchoSoap\">" +
  +            "<soap:binding transport=\"http://schemas.xmlsoap.org/soap/http\"; 
style=\"document\" />" +
  +            "<operation name=\"doIt\">" +
  +            "<soap:operation soapAction=\"http://tempuri.org/Echo\"; 
style=\"document\" />" +
  +            "<input>" +
  +            "<soap:body use=\"literal\" />" +
  +            "</input>" +
  +            "<output>" +
  +            "<soap:body use=\"literal\" />" +
  +            "</output>" +
  +            "</operation>" +
  +            "</binding>" +
  +            "<service name=\"Echo\">" +
  +            "<port name=\"EchoSoap\" binding=\"s0:EchoSoap\">" +
  +            "<soap:address location=\"http://";;
  +
  +    String wsdlEnd = "\" />" +
  +            "</port>" +
  +            "</service>" +
  +            "</definitions>";
  +
  +    public void generateWSDL(MessageContext msgContext) throws AxisFault {
  +        String url = msgContext.getStrProp("hostname"); // !!! Get this for real
  +        String wsdlString = wsdlStart + url + wsdlEnd;
  +        Document doc = XMLUtils.newDocument(wsdlString);
  +        msgContext.setProperty("WSDL", doc);
  +    }
   };
  
  
  


Reply via email to