【问题标题】:Servlet doesn't work [closed]Servlet 不起作用 [关闭]
【发布时间】:2013-12-30 03:05:53
【问题描述】:

我正在用 Java 编写一个 Web 应用程序,我想将 Servlet 与 tomcat 一起使用。

在 Windows 上使用 Netbeans 的本地环境中,一切正常。问题是我的服务器的操作系统是 Ubuntu,当我复制 Netbeans 生成的构建文件夹时,我的 Web 应用程序不起作用。

我发现我的问题是我的 web.xml 文件。当它插入到 WEB-INF 文件夹中时,index.html 不会显示。我需要什么特别的东西才能在 Ubuntu 上运行它吗?

谢谢!

我的 web.xml 是:

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" 
      xmlns="http://java.sun.com/xml/ns/javaee"
      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_3_0.xsd">
    <servlet>
        <servlet-name>ServletManager</servlet-name>
        <servlet-class>Servlets.ServletManager</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>ServletManager</servlet-name>
        <url-pattern>/ServletManager</url-pattern>
    </servlet-mapping>
    <session-config>
        <session-timeout>
            30
        </session-timeout>
    </session-config>
</web-app>

【问题讨论】:

  • 复制了“构建文件夹”?您不是在 Tomcat 安装中为 webapps 文件夹创建 .war 文件吗?
  • 查看 Tomcat 日志文件是否有任何错误消息。如果是,则将该错误消息添加到您的帖子中。你在 Ubuntu 上使用的是哪个版本的 Tomcat?它是支持 Servlets 3.0 规范的版本吗(因为这是您的 web.xml 表示您正在使用的版本)?
  • 我倾向于投票结束这个问题。你说你的问题与Ubuntu有关。为什么会有相关性?它是 Java 和 Tomcat;操作系统无关紧要。您说问题是由您的 web.xml 引起的,但是如果您的 Web 应用程序可以在一个操作系统上运行,为什么 web.xml 会出现问题?当您说“它不起作用”时,我想知道您是如何尝试访问 Servlet 的。您的问题中有太多假设似乎是错误的。
  • 您好 Bruno,我没有创建 .war 文件。当我说“它不起作用时,会说我的 index.html 页面没有显示。我有两条错误消息:org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost] .StandardContext[]] 引起:java.lang.UnsupportedClassVersionError: Servlets/ServletManager : Unsupported major.minor version 51.0 (no puedo cargar clase Servlets.ServletManager) 谢谢!!

标签: java tomcat servlets netbeans ubuntu-12.04


【解决方案1】:

只是为了确保我正确理解您。

你有这个布局:

/app
/app/WEB-INF/web.xml
/app/index.html
/app/WEB-INF/classes/Servlets/ServletManager.class

您已复制所有文件,包括上面的 web.xml。

当你打电话时:

http://server:port/app/

您没有看到 index.html?

这是正确的,因为您没有 &lt;welcome-file-list&gt; 元素 (How to configure welcome file list in web.xml)

如果你打电话

http://server:port/index.html 

你应该看到你的index.html

但是 这是创建 Java-Web 应用程序的一种非常糟糕的方法。您应该使用一些构建管理工具,例如Maven

【讨论】:

  • 是的,我有相同的路径。但我没有看到我的 index.html。
猜你喜欢
  • 1970-01-01
  • 2017-11-27
  • 2016-03-19
  • 2014-10-05
  • 2017-05-20
  • 2012-09-29
  • 2015-03-12
  • 2012-01-28
相关资源
最近更新 更多