Tom*_*ien 5 eclipse glassfish jax-rs eclipselink maven
我使用Eclipse Luna(版本4.4.2)和Glassfish 4使用JAX-RS构建REST Web应用程序.
下面这段代码,这只是一个非常简单的REST api帖子,以前工作得很好,已经开始抛出一个非常奇怪的错误:
@POST
public Response addToWatchlist(WatchlistEntry watchlistentry)
{
return Response.ok(watchlist_service.addToWatchlist(watchlistentry).toString()).build();
}
Run Code Online (Sandbox Code Playgroud)
错误如下:
Warning: StandardWrapperValve[Jersey Web Application]: Servlet.service() for servlet Jersey Web Application threw exception
java.lang.ClassNotFoundException: javax.xml.parsers.ParserConfigurationException not found by org.eclipse.persistence.moxy
Run Code Online (Sandbox Code Playgroud)
所有我能够找到这个是这个网页:https: //java.net/jira/browse/JERSEY-2888
其中一条评论说这已在EclipseLink 2.6.1和Jersey 2.19中得到修复.
我是使用MAVEN和eclipse的新手 - 假设上述内容是正确的,我如何在Eclipse中获取我的Maven项目以更新Jersey版本?另外,我如何更新EclipseLink版本?他们的网站似乎只提供2.6.0版本:http://www.eclipse.org/eclipselink/#download
我假设这一切都可以通过eclipse本身来完成?
所有帮助赞赏!
编辑1:似乎eclipselink 2.6.1已于2015年10月15日发布,您可以在此处看到:http://www.eclipse.org/eclipselink/releases/
但是,正如你在这里看到的那样,似乎没有将"帮助 - >更新软件"整合到eclipse中:http://download.eclipse.org/rt/eclipselink/updates/
这非常烦人.
我正在构建我的REST网站,由于此错误,没有PUT或POST可以正常工作.
有谁知道如何让2.6.1工作?我正在使用Maven jersey-quickstart-webapp项目.
这个错误是面对皇家的痛苦.
编辑2:我今天有一个黑客工作.当我以程序方式检查运行时正在使用的eclipselink的版本时,它告诉我它是版本2.6.1,即使错误仍然存在:
Class<?> myClass = Class.forName("org.eclipse.persistence.Version");
Method myMethod = myClass.getMethod("getVersion");
String version = myMethod.invoke(null).toString();
System.out.println("version = " + version);
Run Code Online (Sandbox Code Playgroud)
在一个相关的问题(如何找到我的Eclipse项目使用的EclipseLink版本?)我发现了如何找到glassfish用于eclipse的实际jar文件.它们位于glassfish/modules目录中.在org.eclipse.persistence.core.jar文件中将有一个readme.html,它告诉你glassfish正在使用的eclipselink的版本.对我来说这是2.6.
我使用maven站点的最新版本手动更新了org.eclipse.persistence.core.jar和org.eclipse.persistence.moxy.jar文件.虽然这是非常hacky,因为我不知道通过这样做会有什么影响,它确实克服了这个问题.如果我找到正确的方法来做到这一点,我会在下面写下一个答案,对所有人而言.
通过更新 glassfish 使用的 eclipselink 版本解决了该问题。Eclipse 更新了它的版本,但 glassfish 需要它自己的更新。需要放置在 glassfish/modules 目录中的 jar 文件列表在这个答案中给出:How to change EclipseLink in GlashFish 4.0?
| 归档时间: |
|
| 查看次数: |
6420 次 |
| 最近记录: |