You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by gd...@apache.org on 2001/09/05 22:00:27 UTC

cvs commit: xml-axis/java/src/org/apache/axis/transport/http AxisServlet.java

gdaniels    01/09/05 13:00:27

  Modified:    java/src/org/apache/axis/transport/http AxisServlet.java
  Log:
  Optimize imports, change technique for getting query-string params
  (which will hopefully avoid the need for "WSDL=1" in some environments)
  and add a "list" param to get the server config in a browser (we should
  probably be able to switch this off at some point).
  
  Revision  Changes    Path
  1.44      +38 -8     xml-axis/java/src/org/apache/axis/transport/http/AxisServlet.java
  
  Index: AxisServlet.java
  ===================================================================
  RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/transport/http/AxisServlet.java,v
  retrieving revision 1.43
  retrieving revision 1.44
  diff -u -r1.43 -r1.44
  --- AxisServlet.java	2001/09/05 17:23:00	1.43
  +++ AxisServlet.java	2001/09/05 20:00:27	1.44
  @@ -55,17 +55,27 @@
   
   package org.apache.axis.transport.http ;
   
  -import java.io.*;
  -import javax.servlet.* ;
  -import javax.servlet.http.* ;
  -import org.apache.axis.* ;
  +import org.apache.axis.*;
   import org.apache.axis.configuration.FileProvider;
  +import org.apache.axis.message.SOAPEnvelope;
  +import org.apache.axis.message.SOAPFaultElement;
   import org.apache.axis.registries.HandlerRegistry;
  -import org.apache.axis.server.* ;
  -import org.apache.axis.utils.*;
  -import org.apache.axis.message.*;
  +import org.apache.axis.server.AxisServer;
  +import org.apache.axis.utils.Admin;
  +import org.apache.axis.utils.XMLUtils;
   import org.w3c.dom.Document;
   
  +import javax.servlet.ServletConfig;
  +import javax.servlet.ServletContext;
  +import javax.servlet.ServletException;
  +import javax.servlet.http.HttpServlet;
  +import javax.servlet.http.HttpServletRequest;
  +import javax.servlet.http.HttpServletResponse;
  +import javax.servlet.http.HttpSession;
  +import java.io.IOException;
  +import java.io.InputStream;
  +import java.util.Enumeration;
  +
   /**
    *
    * @author Doug Davis (dug@us.ibm.com)
  @@ -130,10 +140,30 @@
                           req.getServerPort() + req.getRequestURI();
   
                   msgContext.setProperty(MessageContext.TRANS_URL, url);
  +
  +                boolean wsdlRequested = false;
  +                boolean listRequested = false;
  +
  +                Enumeration enum = req.getParameterNames();
  +                while (enum.hasMoreElements()) {
  +                    String param = (String) enum.nextElement();
  +                    if (param.equalsIgnoreCase("wsdl")) {
  +                        wsdlRequested = true;
  +                    } else if (param.equalsIgnoreCase("list")) {
  +                        listRequested = true;
  +                    }
  +                }
   
  -                if (req.getParameter("WSDL") != null) {
  +                if (wsdlRequested) {
                       engine.generateWSDL(msgContext);
                       Document doc = (Document) msgContext.getProperty("WSDL");
  +                    if (doc != null) {
  +                        res.setContentType("text/xml");
  +                        XMLUtils.DocumentToWriter(doc, res.getWriter());
  +                        res.getWriter().close();
  +                    }
  +                } else if (listRequested) {
  +                    Document doc = Admin.listConfig(engine);
                       if (doc != null) {
                           res.setContentType("text/xml");
                           XMLUtils.DocumentToWriter(doc, res.getWriter());