在sever.xml中设置好虚拟目录/jsp影射到d:/myjsp中的myfirst工程,输入http://localhost/myjsp/myfirst时可以提交,但当输入http://localhost/jsp/myfirst却不能提交,这是为何?

解决方案 »

  1.   

    详细描述如下:
    我的tomcat 安装在c:\tomcat6下,并在sever.html下设置虚拟目录为 <Context  path="/jsp"  docBase="d:\myjsp" > </Context>,工程文件放在d:\myjsp\myproject,之后重启动tomcat,在tomcat 的manage中有/jsp (设置的虚拟目录)和/myproject,当点击myproject,他的url是:http://127.0.0.1/myproject出现一个用户信息填写页面,点击提交后能成功,但是当点击/jsp下的myproject,他的url是:http://127.0.0.1/jsp/myproject/WebRoot,出现用户信息填写页面,当点击提交的时候却显示找不到/jsp/myproject/WebRoot/Info,不是这是为何?我的web.xml部署描述文件如下: 
    <servlet> 
        <servlet-name>InvestInfo </servlet-name> 
        <servlet-class>servlet.InvestInfo </servlet-class> 
      </servlet>   
      <servlet-mapping> 
        <servlet-name>InvestInfo </servlet-name> 
        <url-pattern>/Info </url-pattern> 
      </servlet-mapping> 
      

  2.   

    <Context  path="/jsp"  docBase="d:\myjsp" >docBase 要直接映射到WebRoot目录
      

  3.   

      不可思议,估计你的server.xml里有myjsp这个虚拟路径,
      

  4.   

    /jsp映射到d:/myjsp先看这里。。TOMCAT想读web.xml去哪找去?他怎么知道在哪个文件夹?就算它知道在下级的文件夹里面找,如果里面好多工程,TOMCAT它读哪个工程呢?你要直接<Context  path="/jsp"  docBase="d:\myjsp\myfirst" > 这样。。它就以这个为根目录,找当前目录下的WEB-INF目录,再找web.xml。你用http://localhost/myjsp/myfirst能提交是因为,你的webapps目录里面有这个工程