0

我正在使用 Eclipse Indigo 我安装了 Maven 插件。

我有一个名为 squarefour 的 Eclipse 项目

新建-项目->网络->动态网络项目

目标运行时:apache Tomcat v7.0

动态网页模块版本:3.0

配置:Apace Tomcat v7.0 的默认配置

结束

Java资源->src->square[一个包]->SquareServlet.java

package square;

import java.io.*;
import javax.servlet.*;
import javax.servlet.annotation.*;
import javax.servlet.http.*;

/** Simple servlet for testing
*/

@WebServlet("/sqr")
public class SquareServlet extends HttpServlet {
  @Override
  public void doGet(HttpServletRequest request,
                    HttpServletResponse response)
      throws ServletException, IOException {
    response.setContentType("text/html");
    PrintWriter out = response.getWriter();
    out.println
      ("<!DOCTYPE html>\n" +
       "<html>\n" +
       "<head><title>A Test Servlet</title></head>\n" +
       "<body bgcolor=\"#fdf5e6\">\n" +
       "<h1>Square</h1>\n" +
       convert(request.getParameter("param")) +
       "</body></html>");
  }  
  public String convert (String x)
 {
  int z;
  try
  {
      z = Integer.parseInt(x);
  }
  catch (NumberFormatException e)
  {
          return "Input not an Integer";
      }
      z = z*z;
      Integer y = new Integer(z);
      return y.toString();
  }
}

然后是 WebContent->index.jsp

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<head>
    <meta name=viewprt content="user-scalable=no,width=device-width" />
</head>
<body>
<div data-role=page id=home>
    <div data-role=header>
            <h1>Number Fun</h1>
     </div>
<form action=sqr>
    <div data-role=content>
        <span> Integer </span>
        <input type="text" name="param" value="3" />
    </div>
    <div data-role=content>
        <input type="submit" data-role=button value="Square">
    </div>
</form>
</div>
</body>
</html>

然后,当我在服务器上运行 index.jsp 时,我也在使用 Tomcat 7.0。我可以输入我的号码,按下按钮,然后加载第二页,显示平方数(或错误消息)。

但是当我右键单击项目并配置-> Maven 项目时,一切都运行它的工具,方形包变成了一个文件夹。并且 pom.xml 在主项目文件夹中创建。

现在的问题是当我在服务器上运行 index.jsp 时,会显示第一个网页,但是当我按下提交按钮时

HTTP 状态 404 - /square4b/sqr


类型状态报告

消息 /square4b/sqr

描述 请求的资源 (/square4b/sqr) 不可用。


Apache Tomcat/7.0.28

显示。所以在 Eclipse 到 Maven 的转换之间出现了一些问题。我是否遗漏了一个步骤,或者其中一个文档中是否存在导致问题的错误?我已经重复了四次,每次都会出现错误。是因为我缺少 web.xml 文件吗?我知道 Tomcat 7.0 不需要动态 Web 模块 3.0 版

4

1 回答 1

0

从动态 Web 项目转换为 Maven 项目时,需要将包装从 .jar 更改为 .pom

于 2012-06-27T14:15:38.347 回答