axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Doug Davis" <...@us.ibm.com>
Subject RE: cvs commit: xml-axis/java/src/org/apache/axis/transport/http AxisServlet.java
Date Mon, 29 Oct 2001 18:12:07 GMT
Any problem you can see with jws files overlaying existing files
already exists so nothing has changed.  The class file should
end up in the same dir as the jws file - just like before.
I didn't see the need for the restriction, and in fact, see a larger
plus to adding support for it.  (The world is not flat   HA !!!  8-)
-Dug

Glen Daniels <gdaniels@macromedia.com> on 10/29/2001 01:01:28 PM

Please respond to axis-dev@xml.apache.org

To:   "'axis-dev@xml.apache.org'" <axis-dev@xml.apache.org>
cc:
Subject:  RE: cvs commit: xml-axis/java/src/org/apache/axis/transport/http
      AxisServlet.java




Doug, could you explain this a little more?

Where does the .class file end up?  What if the package hierarchy matches
an
existing file pattern in the webapp?

I personally would rather see package statements banned from JWS files, as
I
think it introduces too many potential complications.  You're already
saving
the file under a different extension, and potentially might want to add
deployment info to it - dyking out the package statement doesn't seem that
much of a price to pay.

--Glen

> -----Original Message-----
> From: dug@apache.org [mailto:dug@apache.org]
> Sent: Monday, October 29, 2001 12:43 PM
> To: xml-axis-cvs@apache.org
> Subject: cvs commit: xml-axis/java/src/org/apache/axis/transport/http
> AxisServlet.java
>
>
> dug         01/10/29 09:43:24
>
>   Modified:    java/src/org/apache/axis Constants.java
>                java/src/org/apache/axis/handlers JWSProcessor.java
>                java/src/org/apache/axis/transport/http
> AxisServlet.java
>   Log:
>   Add support for package names in jws files.
>   The URL will need to include the package name (with /
> instead of .'s)
>
>   Revision  Changes    Path
>   1.38      +6 -0
> xml-axis/java/src/org/apache/axis/Constants.java
>
>   Index: Constants.java
>   ===================================================================
>   RCS file:
> /home/cvs/xml-axis/java/src/org/apache/axis/Constants.java,v
>   retrieving revision 1.37
>   retrieving revision 1.38
>   diff -u -r1.37 -r1.38
>   --- Constants.java   2001/10/26 18:18:57  1.37
>   +++ Constants.java   2001/10/29 17:43:24  1.38
>   @@ -179,6 +179,12 @@
>
> //////////////////////////////////////////////////////////////
> ////////////
>        public static final String URI_DEBUG =
> "http://xml.apache.org/axis/debug";
>
>   +    // Absolute path of our home directory (if we can
> determine one)
>   +    public static final String MC_HOME_DIR = "homeDir" ;
>   +
>   +    // Relative path of the request URL (ie.
> http://.../axis/a.jws = /a.jws
>   +    public static final String MC_RELATIVE_PATH = "path";
>   +
>        // MessageContext param for the engine's path
>        public static final String MC_REALPATH = "realpath";
>        // MessageContext param for the location of config files
>
>
>
>   1.25      +12 -4
> xml-axis/java/src/org/apache/axis/handlers/JWSProcessor.java
>
>   Index: JWSProcessor.java
>   ===================================================================
>   RCS file:
> /home/cvs/xml-axis/java/src/org/apache/axis/handlers/JWSProces
> sor.java,v
>   retrieving revision 1.24
>   retrieving revision 1.25
>   diff -u -r1.24 -r1.25
>   --- JWSProcessor.java     2001/10/26 14:55:23  1.24
>   +++ JWSProcessor.java     2001/10/29 17:43:24  1.25
>   @@ -133,9 +133,15 @@
>
>                /* Get the class */
>                /*****************/
>   -            String clsName = f2.getName();
>   -            clsName = clsName.substring( 0, clsName.length()-4 );
>   +            String clsName = null ;
>   +            clsName =
> msgContext.getStrProp(Constants.MC_RELATIVE_PATH);
>   +            if ( clsName == null ) clsName = f2.getName();
>   +            if ( clsName != null && clsName.charAt(0) == '/' )
>   +                clsName = clsName.substring(1);
>
>   +            clsName = clsName.substring( 0, clsName.length()-4 );
>   +            clsName = clsName.replace('/', '.');
>   +
>                if (category.isInfoEnabled())
>                    category.info("ClsName: " + clsName );
>
>   @@ -164,10 +170,12 @@
>                    // proc.waitFor();
>                    FileOutputStream  out      = new
> FileOutputStream( errFile );
>                    Main              compiler = new Main(
> out, "javac" );
>   -                String            outdir   = f1.getParent();
>   +                String            outdir   = null ;
>                    String[]          args     = null ;
>
>   -                if (outdir == null) outdir=".";
>   +                outdir = msgContext.getStrProp(
> Constants.MC_HOME_DIR );
>   +                if ( outdir == null ) outdir = f1.getParent();
>   +                if ( outdir == null ) outdir = "." ;
>
>                    args = new String[] { "-d", outdir,
>                              "-classpath",
>
>
>
>   1.54      +4 -0
> 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/Axi
> sServlet.java,v
>   retrieving revision 1.53
>   retrieving revision 1.54
>   diff -u -r1.53 -r1.54
>   --- AxisServlet.java 2001/10/26 16:09:37  1.53
>   +++ AxisServlet.java 2001/10/29 17:43:24  1.54
>   @@ -145,6 +145,8 @@
>            HandlerRegistry hr = engine.getHandlerRegistry();
>            PrintWriter writer = res.getWriter();
>
>   +        msgContext.setProperty(Constants.MC_HOME_DIR,
> context.getRealPath("/"));
>   +
>            String realpath =
> context.getRealPath(req.getServletPath());
>            String configPath = context.getRealPath("/WEB-INF");
>            if (realpath != null) {
>   @@ -328,6 +330,8 @@
>
>            /* Save some HTTP specific info in the bag in case
> a handler needs it */
>
> /*************************************************************
> *********/
>   +        msgContext.setProperty(Constants.MC_HOME_DIR,
> context.getRealPath("/"));
>   +        msgContext.setProperty(Constants.MC_RELATIVE_PATH,
> req.getServletPath());
>
> msgContext.setProperty(HTTPConstants.MC_HTTP_SERVLET, this );
>
> msgContext.setProperty(HTTPConstants.MC_HTTP_SERVLETREQUEST, req );
>
> msgContext.setProperty(HTTPConstants.MC_HTTP_SERVLETRESPONSE, res );
>
>
>
>



Mime
View raw message