2013-04-09 35 views
-2

一直試圖找到這一段時間的解決方案使用,我有一個表格在一個HTML文件呼叫從servlet和jsp如果

 <form id="form" name="form" method="post" ACTION="First_Q.jsp" > 

從如圖提交時高於目前只是進入一個jsp ...

但是我有一個表單servlet,我想要將表單數據傳遞到IF將執行的位置以決定用戶是否返回。我已經嘗試了多次改變ACTION到Game.FormServlet和Game/FormServlet,如其他示例中所示,但這不起作用。

遊戲文件夾與其他servlet放在src文件夾中。

基本上我想知道1.how到表單數據傳遞到Servlet 2.How到Servlet程序採取if語句的結果,並基於該移動到另一個JSP ..

設置設置 The_Quiz.RegistrationServlet.java

在其中一個答案建議引發以下錯誤

給我的錯誤

CVC-複雜type.2.4.a:無效的內容是˚F從元素'servlet-path'開始。預計會有一個'{「http:// java.sun.com/xml/ns/j2ee":servlet-class,」java.sun.com/xml/ns/j2ee":jsp-file}'。

回答

1

必須聲明servlet並將其映射到webapp的web.xml文件中的URL模式。

<servlet> 
    <servlet-name>SomeUniqueName</servlet-name> 
    <servlet-path>the.fully.qualified.name.of.the.ServletClass</servlet-path> 
</servlet> 
<servlet-mapping> 
    <servlet-name>SomeUniqueName</servlet-name> 
    <url-pattern>/foobar</url-pattern> 
</servlet-mapping> 

一旦做到這一點,您可以使用所選擇的URL來調用這個servlet:

<form id="form" name="form" method="post" action="${pageContext.request.contextPath}/foobar" > 
+0

將溶液冷卻,謝謝你,嘗試了幾種不同的方法,他們沒有工作,我會做這個,現在 – H65 2013-04-09 18:24:06

+0

設置 The_Quiz .RegistrationServlet.java H65 2013-04-10 07:59:39

+0

給我錯誤cvc-complex-type.2.4.a:發現從元素'servlet-path'開始的無效內容。其中一個'{「http:// java.sun.com/xml/ns/j2ee":servlet-class,」http://java.sun.com/xml/ns/j2ee":jsp-file}'是期待。 – H65 2013-04-10 07:59:59

1

表單操作映射到URL,而不是類。網址通過web.xml或註釋映射到課程。

表格數據可通過getParameter(String) method索取。

一旦你的數據,你可以在它作爲您認爲合適的,並使用一個RequestDispatcher轉發給適當的JSP:

ServletContext context = getServletContext(); 
RequestDispatcher rd = context.getRequestDispatcher("/WEB-INF/jsp/result.jsp"); 
rd.forward(request, response); 

任何servlet/JSP教程將爲您提供進一步的資料;我建議您在繼續閱讀之前閱讀其中的一篇文章,這樣可以節省很多時間。根據您的應用程序容器,您可能也想要利用新的註釋。

-1

我加了一個doPost方法,然後清洗它解決了這個問題