昨天我在这里问了一整天都没有人理我这个问题,不知高手都到哪里去了.今天我灵机一动,发现了原来访问servlet可以这样:
<url-pattern></url-pattern>
把这里的url映射加多.jsp就可以在IIS里访问servlet了.
如这样:
  <servlet-mapping>
  <servlet-name>TestServletMore</servlet-name>
  <url-pattern>/more.jsp</url-pattern>
  </servlet-mapping>
就可以用http://localhost/more.jsp 访问TestServletMore了.

解决方案 »

  1.   

    只是我还不明白,为什么通过IIS上传较大一点图片图片却不行,而原来直接在tomcat里上传却没有问题.这是为什么?有没有给我解答一下啊?
    出现以下的错误:HTTP Status 500 - --------------------------------------------------------------------------------type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: String index out of range: -132711
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:358)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    root cause java.lang.StringIndexOutOfBoundsException: String index out of range: -132711
    java.lang.String.checkBounds(String.java:283)
    java.lang.String.<init>(String.java:370)
    com.jspsmart.upload.SmartUpload.upload(SmartUpload.java:350)
    org.apache.jsp.img_005fin_jsp._jspService(img_005fin_jsp.java:104)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    note The full stack trace of the root cause is available in the Tomcat logs.
    --------------------------------------------------------------------------------Apache Tomcat/5.0.19
      

  2.   

    我想也应该是修改一下app-default.xml或resin.conf吧,最好不要用原来默认的访问servlet url如:http://localhost:8080/servlet/*.应该改成http://localhost:8080/* 这样就可以访问servlet.因为在IIS里它找不到servlet这个虚拟目录,所以就不能访问.在IIS里它遇到.jsp的文件,它就交给tomcat或resin处理,所以servlet的url应该为它加上.jsp后缀.这样IIS才会交给tomcat,resin处理.
      

  3.   

    我也遇到过同样的问题,我用tomcat+IIS在2003下上传几百M的文件都没问题,可是换到2000Server下上传几百K的都不行,不过我没用fileupload,我的好象是DiskUpload类,然后自己写了一个组件,希望高手门给予解答