jboss部署问题-无法访问servlet

ttisahbt  于 2022-11-08  发布在  其他
关注(0)|答案(6)|浏览(204)

我正在尝试编写一个简单的Web应用程序并部署在jboss EAP 6上。该应用程序名为“webapp”,我能够构建并将其部署到jboss。上下文根目录是/webapp。
然后,我可以访问localhost:8080/webapp,它返回一个“Hello World”,该值是从Eclipse在/src/main/webapp中生成的默认index.jsp中打印出来的。
然而,当我尝试实际访问localhost:8080/webapp/sessionsetup上的servlet时,我得到了以下错误:

JBWEB000065: HTTP Status 404 - /webapp/sessionsetup

JBWEB000309: type JBWEB000067: Status report

JBWEB000068: message /webapp/sessionsetup

JBWEB000069: description JBWEB000124: The requested resource is not available.

下面是我为servlet编写的简单代码:

@WebServlet("/sessionsetup")
public class SessionSetup extends HttpServlet{

private static final Logger log = LoggerFactory.getLogger(SessionSetup.class);

public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {
    log.info(this.toString());
    log.info("Do get method is called");

    response.setContentType("text/xml");

    PrintWriter printer = response.getWriter();
    printer.println("<html>");
    printer.println("<head>" + "</head>");
    printer.println("<body>");
    printer.println("<h1>" + "Welcome! You are in session setup" + "</h1>");
    printer.println("</body>");
    printer.println("</html>");

    printer.close();
    }

}

有没有人可以评论一下我可能错过了什么?有没有办法找到一些日志信息没有这个错误?我试图寻找server.log在/standalone/log,但没有找到任何东西.

o2g1uqev

o2g1uqev1#

可能有两个原因
(1)您可以在jboss服务器中配置standalone.xml
虚拟服务器名称=“默认主机”启用欢迎根=“false”〉
在enable-welcome-root中使用false而不是true
(2)你没有正确Map控制器

njthzxwz

njthzxwz2#

问题已解决。这似乎是web.xml的问题-删除此问题后,servlet即可使用。

ve7v8dk2

ve7v8dk23#

实际的问题应该是它在jboss中的部署方式(运行时名称)。
因此,如果您尝试访问该应用程序,它应该工作。
运行时名称:部署在服务器运行时中的名称。此名称相当于部署文件的文件名,并将构成默认Java Enterprise Edition应用程序和模块名称等内容的基础。此名称通常与'name'相同,但在某些情况下,用户可能希望有两个具有相同“runtime-name”的部署(例如,“foo.war”的两个版本),在这种情况下,部署将需要具有不同的“name”值,但将具有相同的“runtime-name”。

toiithl6

toiithl64#

这只是我的经验,关于这个问题可能如何发生,以及我解决问题的方式。
这个问题发生在没有war文件的情况下。当我部署
豪蒂奥
监视所需的jboss
若洛基亚
所以我只是下载并手动部署了.war文件到我的jboss中,然后问题就解决了。

wlzqhblo

wlzqhblo5#

我认为您必须添加WEB-INF/jboss-web.xml文件,在其中设置上下文根目录

<jboss-web>
    <context-root>contextroot</context-root>
</jboss-web>
odopli94

odopli946#

清理服务器在许多情况下都可以解决此问题。

相关问题