天天看點

Servlet也是有路徑的

在Tomcat部署的一個webapp裡,有很多jsp,為了正确的進行互相的引用,很是花了一番功夫。原以為Servlet會簡單一些,誰知滿不是這麼回事。

在web.xml中

<servlet>
     <servlet-name>myservlet</servlet-name>
     <servlet-class>foo.bar</servlet-class>
   </servlet>       
   <servlet-mapping>
   	 <servlet-name>myservlet</servlet-name>
   	 <url-pattern>/myserv.do</url-pattern>
   </servlet-mapping>  
           

原來以為不管在哪裡,隻要有這樣一個form

<form action="myserv.do">
  <input type="text" name="searchcontent"/>
  <input type="submit"/>
</form></td>
           

就可以通路到這個Servlet,但事實是,/myserv.do實際上訓示了這個Servlet的虛拟路徑。是以必須明确的訓示

<form action="/myserv.do">
           

這裡還需要看你有沒有指定應用的root。否則/所代表的是不一樣的--有可能是webapps目錄。