如何在Ubuntu上创建Servlet和/或JSP项目?

时间:2013-11-13 17:33:48

标签: java jsp tomcat servlets

我已经安装了tomcat 7,javaservlet 3.0和openjdk 7.我已安装了示例,但我无法在浏览器中找到它们。 Tomcat文档说我需要$CATALINA_BASE/webapps/子目录中的应用程序,但我没有这样的可变性。

我已在myapp中使用/var/lib/tomcat7/webapps/ROOT创建了一个目录myapp/WEB-INF/classes/Servlet.java(我已编译该文件)和myapp/WEB-INF/web.xml

<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
     version="2.5">
    <servlet> 
        <servlet-name>TestServlet</servlet-name> 
        <servlet-class>TestServlet</servlet-class> 
        <description>This is a simple Hello World servlet</description> 
    </servlet> 
    <servlet-mapping> 
        <servlet-name>TestServlet</servlet-name> 
        <url-pattern>/test</url-pattern> 
    </servlet-mapping> 
</web-app>

但是当我去localhost:8080 / myapp / test我有错误404.这是我的servlet:

UPDATE 我将我的根目录更改为webapps / myapp,index.html文件正在加载(使用localhost/myapp/index.html),但我的servlet不断获得404.错误与正常错误不同,因为我没有像/foo/bar这样的错误网址的消息(使用URI)。 这是我的serlvet的代码(你好世界的例子):

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

class TestServlet extends HttpServlet {
    public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        response.setContentType("text/plain");
        PrintWriter out = response.getWriter();
        out.println("Hello");
    }
}

2 个答案:

答案 0 :(得分:0)

为什么不使用Eclipse EE生成和维护动态Web项目?让IDE处理项目结构要容易得多。另外,您可以找到许多有关如何使用Eclipse生成动态Web项目的指南。

问候

答案 1 :(得分:0)

当我向我的班级添加空构造函数时,它可以工作。