【发布时间】:2014-05-10 10:14:31
【问题描述】:
我有一个用 Java 编写的基本 Web 应用程序,在本地主机上的 tomcat 上运行。目前它只是一个简单的应用程序,带有一个我从浏览器访问的 servlet。在本地主机上它运行良好,但是当我尝试通过 LAN 从另一台机器访问它时,它不会返回预期的结果。
我的 servlet 代码是
package demo;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletOutputStream;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class HelloServlet extends HttpServlet{
@Override
public void init() throws ServletException {
super.init();
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
String fname=req.getParameter("fname");
String lname=req.getParameter("lname");
ServletOutputStream pw=resp.getOutputStream();
pw.println("Hello"+" "+fname+" "+lname);
pw.close();
}
@Override
public void destroy() {
super.destroy();
}
}
我的 web.xml 代码是
<web-app xmlns="http://java.sun.com/xml/ns/j2ee" version="2.4">
<servlet>
<servlet-name>n1</servlet-name>
<servlet-class>demo.HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>n1</servlet-name>
<url-pattern>/myapp</url-pattern>
</servlet-mapping>
我的 HTML 表单代码是
<html>
<body>
<form method="post" action="http://localhost:8080/app1/myapp" name="myform">
<br />FirstName:<input type="text" name="fname" />
<br />LastName:<input type="text" name="lname" />
<br />
<input type="submit" value="Submit Form" />
<input type="reset" value="Reset" />
</form>
</body>
我使用 http://localhost:8080/app1/htmls/a.html 从浏览器访问我的 HTML 表单
当我从另一台机器使用相同的地址访问表单时,浏览器会显示表单,但点击提交按钮后,浏览器返回“找不到网页”。
【问题讨论】:
标签: jakarta-ee servlets web-applications