通过LAN访问Java Web应用程序

时间:2014-03-31 07:03:28

标签: java-ee servlets web-applications

我有一个用Java编写的基本Web应用程序,在我的localhost上的tomcat上运行。目前它只是一个带有单个servlet的简单应用程序,我可以从浏览器访问它。在localhost上它运行正常,但是当我尝试通过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表单

当我使用相同的地址从另一台机器访问该表单时,浏览器会显示该表单,但在我单击“提交”按钮后,浏览器将返回“未找到网页”。

1 个答案:

答案 0 :(得分:1)

帖子操作转到localhost! 再试一次:

<form method="post" action="/app1/myapp" name="myform">
相关问题