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 bu...@apache.org on 2003/04/27 23:50:43 UTC

DO NOT REPLY [Bug 19372] New: - .jws files contained in /services can not be served.

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=19372>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=19372

.jws files contained in /services can not be served.

           Summary: .jws files contained in /services can not be served.
           Product: Axis
           Version: 1.1rc2
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: Normal
          Priority: Other
         Component: Deployment / Registries
        AssignedTo: axis-dev@ws.apache.org
        ReportedBy: bmenasha@benmenasha.net


the web.xml file for the shipped web application includes the servlet-mapping.

  <servlet-mapping>
    <servlet-name>AxisServlet</servlet-name>
    <url-pattern>/services/*</url-pattern>
  </servlet-mapping>

any request for a web-services hosted within /services will fail, because 
AxisServlet.java always expects request.getServletPath() to return the relative 
path to the .jws file.

According to section 4.4 of the servlet spec, when the 
url "/services/EchoHeader.jws" is requested and it matches the prefix url-
pattern like the one shown above, the servletPath of the request will 
be "/services" not "/services/EchoHeader.jws"

To correct this problem, I would suggest that the calls to 
request.getServletPath() in AxisServlet.java be replaced with 
(request.getServletPath() + request.getPathInfo()) which will always be the 
relative path to the .jws file, even when a prefix url-pattern matched the 
requested url.