我有一個簡單的程序有:我不明白怎麼web.xml中的作品/應該工作而使用servlet
登錄
過程
結果
作爲servlets和過濾器:
- AuthentifFilter
這是我的.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
<display-name>PDPJ Servlet Application</display-name>
<description>
Not in english so skipping this
</description>
<listener>
<listener-class>listeners.InitServlet</listener-class>
</listener>
<servlet>
<servlet-name>LoginServlet</servlet-name>
<servlet-class>servlet.LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>ProcessingServlet</servlet-name>
<servlet-class>servlet.ProcessingServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ProcessingServlet</servlet-name>
<url-pattern>/PDPJ_-_Servlet_-_V4/process/</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>ResultsServlet</servlet-name>
<servlet-class>servlet.ResultsServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ResultsServlet</servlet-name>
<url-pattern>/process/results</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>1200</session-timeout>
</session-config>
<filter>
<filter-name>AuthFilter</filter-name> <!-- mandatory -->
<filter-class>filter.AuthentificationFilter</filter-class> <!-- mandatory -->
</filter>
<filter-mapping>
<filter-name>AuthFilter</filter-name>
<url-pattern>/PDPJ_-_Servlet_-_V4/process/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
</filter-mapping>
</web-app>
現在,處理的servlet有 「/ PDPJ_- 的Servlet -_V4 /流程/」 的URL,用於只是「/ process /」。
事情是,我登錄後,url應該看起來像這樣http://localhost:8080/PDPJ_-_Servlet_-_V4/process/?username=admin&password=admin
它適用於手動輸入,但是如果我只點擊提交按鈕url變成http://localhost:8080/process/?username=admin&password=admin
,我只是不明白。
這裏是形式:
PrintWriter pw = resp.getWriter();
pw.println("<html><head></head><body>");
pw.println("<form action=\"/process/\"> " +
"Username:<input type=\"text\" name=\"username\"/><br/> " +
"Password:<input type=\"password\" name=\"password\"/><br/> " +
"<input type=\"submit\" value=\"login\"> " +
"</form> ");
pw.println("</body></html>");
有人能指出我錯過了什麼?
編輯此外,應該將.xml包含/ PDPJ_- 的Servlet -_V4 /或我可以告訴它,我希望有一個「相對路徑」或類似的東西?
作業只針對servlet,沒有jsp。接下來是Jsp。謝謝,但你能不能給我一個它應該如何工作的例子? – Kalec
@Kalec是什麼樣的例子?我說主導斜線使其絕對......所以相對......刪除主導斜線。 –
英語不是我的第一語言,我不明白,領先是第一還是最後? – Kalec