【问题标题】:Using Jersey and RESTful web services with Weblogic将 Jersey 和 RESTful Web 服务与 Weblogic 一起使用
【发布时间】:2011-01-27 21:33:18
【问题描述】:

我是使用 Jersey 框架和开发 Web 服务的新手。我正在使用 Weblogic v 10 作为现有项目的应用服务器,并尝试使用简单的 HelloWorld 示例开始。

不幸的是,在运行时,我在 com.sun.jersey.spi.container.servlet.WebComponent.createResourceConfig 的 com/sun/jersey/core/reflection/ReflectionHelper 上收到了 java.lang.NoClassDefFoundError 我尝试使用多个版本的Jersey(.jar 文件版本 1.1.4.1 和 1.1.5.1 和 1.3)但结果是一样的。我正在使用 Java 1.5 构建和运行它

包含 HelloWorld 类的 .jar 文件已正确加载到我的部署 WEB-INF\classes 文件夹中。至于 web.xml 文件,它只包含 Jersey 的 servlet-class 设置,该设置被找到,然后调用 WebComponent 类来执行初始化,并且当该模块尝试 createResourceConfig 时收到错误。已检查类路径并显示正确。

任何见解将不胜感激。

【问题讨论】:

  • 查看您的 jar 并确认 com/sun/jersey/core/reflection/ReflectionHelpe 实际上是它应该在的位置。
  • 感谢您的回复。我之前应该指定这个,但是 .jar 文件位于我的部署路径的 \lib 文件夹中,我还尝试将包含 ReflectionHelper 类的 .jar 文件直接扩展到我的 WEB-INF\classes 文件夹中。不幸的是,错误仍然存​​在。

标签: java web-services weblogic jersey


【解决方案1】:

您在 web 应用程序类路径中有多个版本的 com/sun/jersey/core/reflection/ReflectionHelper。

这就是导致 NoClassDefFoundError 的原因

注意:这与 ClassNotFoundException 不同。

您能否搜索类路径和所有库以查看多个 ReflectionHelper 类的位置?

我怀疑你还有所有的 -

我尝试过使用多个版本 Jersey .jar 文件(1.1.4.1 和 1.1.5.1 和 1.3)

  • 存在的版本。只保留一个 - 并删除分解的类。

【讨论】:

  • 感谢您的回复。我已经通过仅使用版本 1.1.5.1 超越了 NoClassDefFoundError;但是,它仅在我将爆炸的 .jar 文件保存在 /classes 文件夹中以及将 Jersy .jar 文件保存在 /lib 文件夹中时才有效。这似乎没有必要。现在,我确实收到了 404 - Not Found;服务器找不到与 Request-URI 匹配的任何内容;服务器上的详细日志显示了 Jersey PackagesResourceConfig 初始化的信息消息,并找到了根资源和提供程序类;我想这是我的下一个障碍。你以前见过这个吗?
  • @jfleming:基本 servlet 调用上的 404 通常是在浏览器上尝试的错误 URL,即与 com.sun.jersey.spi.container.servlet.ServletContainer 的 web.xml servlet 映射不匹配。你正在尝试的 URL 是什么?如果您已将 jersey servlet 映射到 <url-pattern>/*</url-pattern>,则应为 http:// localhost:port/<webappcontext>/<jersey-url>http:// localhost:port/<webappcontext>/
  • @jfleming:你真的不应该这样做——如果你有时间,你可以尝试一个新的项目,只保留 Web-inf/lib 下的 Jar。如果此答案有效,请随时接受 - 左侧的绿色大勾号。
  • 是的,有了一个新项目,这很有效。它有助于清除必须保留的额外版本的 Jersey 文件的残余。因此,将 1.1.5.1 与 Weblogic 10 和 Java 1.5 一起使用可以正常工作。现在开始做更大的事情。感谢您的帮助。
猜你喜欢
  • 2017-05-24
  • 2015-09-30
  • 1970-01-01
  • 2011-07-19
  • 1970-01-01
  • 1970-01-01
  • 2015-03-11
  • 2014-09-13
  • 1970-01-01
相关资源
最近更新 更多