在servlet代码中使用html表单不起作用

时间:2014-02-19 16:56:09

标签: java html forms servlets

我正在尝试在我的servlet代码中使用表单;

 out.println("<FORM ACTION=\""+ BooksBought+"\"method = \"POST\">\n" +
         "<INPUT TYPE=\"SUBMIT\"\n "+
             "       VALUE=\"Update Order\">\n" +
             "</FORM>\n");

但我不断收到像BooksBought这样的错误无法解析为变量。 BooksBought是另一个独立工作的servlet,因此我知道这就是问题所在。请帮忙。

的web.xml      

<servlet-mapping>
  <servlet>
      <servlet-name>BooksBought</servlet-name>
      <servlet-class>BooksBought</servlet-class>
  </servlet>
  <servlet-name>BooksBought</servlet-name>
  <url-pattern>BooksBought</url-pattern>
</servlet-mapping> 

2 个答案:

答案 0 :(得分:0)

是的 - 这不是那么神奇。该操作需要是映射到BooksBought servlet的URL。你在战争中部署这些吗?你有没有设置web.xml?

退房:

What is url-pattern in web.xml and how to configure servlet

http://docs.oracle.com/javaee/7/tutorial/doc/servlets.htm

答案 1 :(得分:0)

如果BooksBought是一个servlet而不是一个变量,你应该做更多的事情:

   out.println("<FORM ACTION=\"BooksBought\" method=\"POST\">");

你还需要在“和方法之间加一个空格。你也可以使用单引号,这样你就不必转义引号。使它更容易阅读。

   out.println("<FORM ACTION='BooksBought' method='POST'>");

如果此表单的servlet比您要发布的表单更深,则需要添加一个../

   out.println("<FORM ACTION='../BooksBought' method='POST'>");