gpt4 book ai didi

java - 将 Jersey 资源部署到 Servlet 3.0 API 感知容器中失败得很惨

转载 作者:行者123 更新时间:2023-11-30 11:50:48 24 4
gpt4 key购买 nike

(我不小心删除了我在这个问题中提到的要点;对于给您带来的不便,我们深表歉意。)

问题

我正在尝试使用 Servlet 3.0 API@Path 之后部署 Jersey 根资源(那些用 Jersey's user guide 注释注释的资源) .

我创建了一个 gist at GitHub包含两个类:Foo.java这是 Application 的子类暴露Bar.java (资源类)通过其 getClasses()方法。 (还有一个 pom.xml,所以任何人都可以轻松地自己尝试。)

但是,当我尝试将打包的 war 部署到 Jetty 8.0.x 实例时,我得到了 output available here at pastebin .

Foo.java 被调用,它的 getClasses() 方法也被调用,而 Bar.java 从未被调用。

我可以通过 http://localhost:8080/ 访问 Jetty 的欢迎页面,但是我既不能访问 http://localhost:8080/foo 也不能访问 http://localhost:8080/foo/bar。后两者导致以下错误:

Not Found ERROR

custom 404 page

可能是什么问题?我在这里做错了什么吗?

答案

考虑到我使用的 WAR (test-0.0.1-SNAPSHOT.war),我的应用程序路径变成了 http://localhost:8080/test-0.0.1-SNAPSHOT/foo/bar 而不是 http://localhost:8080/foo/bar。看到我在那里做了什么吗?好的。人们将此铭记在心,否则您将失去生命中 3 到 5 个小时的宝贵时间!

最佳答案

好的。我已经解决了这个问题。

我的应用程序路径不在 http://localhost:8080/foo/bar但在 http://localhost:8080/<the name of my war file>foo/bar .所以给出 pom.xml我把它贴成了http://localhost:8080/test-0.0.1-SNAPSHOT/foo/bar .

我讨厌 WAR 文件。

关于java - 将 Jersey 资源部署到 Servlet 3.0 API 感知容器中失败得很惨,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7750855/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com