我试图浏览JPA-RS教程,例如:
http://java.dzone.com/articles/introducing-eclipselink-jpa-rs或
http://www.eclipse.org/eclipselink/documentation/2.5/solutions/restful_jpa.htm
但是在尝试部署(使用maven和glassfish插件)我的glassfish上的应用程序后,我得到以下错误堆栈跟踪:
WebModule[/rest]Servlet /rest threw load() exception java.lang.ClassNotFoundException: org.eclipse.persistence.jpa.rs.resources.MetadataResource at org.glassfish.web.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1783) at org.glassfish.web.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1633 ) at org.eclipse.persistence.jpa.rs.service.JPARSApplication.(JPARSApplication.java:62) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at ...
我在导入的依赖项中找不到该类:
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
<version>7.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.eclipse.persistence</groupId>
<artifactId>eclipselink</artifactId>
<version>2.5.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.ws.rs</groupId>
<artifactId>javax.ws.rs-api</artifactId>
<version>2.0.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.eclipse.persistence</groupId>
<artifactId>org.eclipse.persistence.jpars</artifactId>
<version>2.6.0</version>
</dependency>
通过搜索该错误,我找不到与我分享同样问题的人。您是否能够通过获得该问题的解决方案来帮助我?如果您需要有关该项目的更多文本/背景信息,请告诉我。
亲切的问候。
答案 0 :(得分:0)
使用相同版本的eclipselink依赖项:eclipselink
和org.eclipse.persistence.jpars
都应为2.6.0,或两者都应为2.5.0。
使用2.6.0时org.eclipse.persistence.jpa.rs.resources.MetadataResource
位于eclipselink.jar