RestEasy-Links:javax.el-3.0.0.jar 在 Tomcat 上的部署期间未加载
RestEasy-Links: javax.el-3.0.0.jar is not loaded during the deployment on Tomcat
我打算写一些休息服务,但在 link 注入时遇到了一个问题。
我正在使用 resteasy 3.0.7.Final
和 resteasy-links 3.0.7.Final
。当我将应用程序部署到 Tomcat (7.0.59) 时,日志显示以下信息:
INFORMATION: validateJarFile(/Users/user/Workspace/.metadata/.plugins/
org.eclipse.wst.server.core/tmp0/wtpwebapps/jaxrs-wnck/WEB-INF/lib/javax.el-3.0.0.jar)
- jar not loaded. See Servlet Spec 3.0, section 10.7.2. Offending class:
javax/el/Expression.class
Apr 04, 2015 6:29:48 PM org.apache.catalina.loader.WebappClassLoader validateJarFile
INFORMATION: validateJarFile(/Users/user/Workspace/.metadata/.plugins/org.eclipse.wst.
server.core/tmp0/wtpwebapps/jaxrs-wnck/WEB-INF/lib/jboss-el-api_3.0_spec-1.0.0.Final.jar)
- jar not loaded. See Servlet Spec 3.0, section 10.7.2. Offending class:
javax/el/Expression.class
服务启动了,但是当我请求资源时,该资源执行 link 注入
RESTServiceDiscovery
字段,抛出 java.lang.ClassNotFoundException: javax.el.StandardELContext
。
-
谢谢!
在tomcat7中,表达式语言API规范版本为2.2,StandardELContext
在3.0版本中。
As described in the Java EE license agreement, servlet containers that
are not part of a Java EE product should not allow the application to
override Java SE platform classes, such as those in the java.* and
javax.* namespaces, that Java SE does not allow to be modified.
因此,您可以:
- 更新为 tomcat 8;
- 在 Java EE 容器中部署您的应用程序,这允许应用程序覆盖;
- 使用旧版本的 rest easy(3.0.5.Final 应该可以);
我打算写一些休息服务,但在 link 注入时遇到了一个问题。
我正在使用 resteasy 3.0.7.Final
和 resteasy-links 3.0.7.Final
。当我将应用程序部署到 Tomcat (7.0.59) 时,日志显示以下信息:
INFORMATION: validateJarFile(/Users/user/Workspace/.metadata/.plugins/
org.eclipse.wst.server.core/tmp0/wtpwebapps/jaxrs-wnck/WEB-INF/lib/javax.el-3.0.0.jar)
- jar not loaded. See Servlet Spec 3.0, section 10.7.2. Offending class:
javax/el/Expression.class
Apr 04, 2015 6:29:48 PM org.apache.catalina.loader.WebappClassLoader validateJarFile
INFORMATION: validateJarFile(/Users/user/Workspace/.metadata/.plugins/org.eclipse.wst.
server.core/tmp0/wtpwebapps/jaxrs-wnck/WEB-INF/lib/jboss-el-api_3.0_spec-1.0.0.Final.jar)
- jar not loaded. See Servlet Spec 3.0, section 10.7.2. Offending class:
javax/el/Expression.class
服务启动了,但是当我请求资源时,该资源执行 link 注入
RESTServiceDiscovery
字段,抛出 java.lang.ClassNotFoundException: javax.el.StandardELContext
。
- 谢谢!
在tomcat7中,表达式语言API规范版本为2.2,StandardELContext
在3.0版本中。
As described in the Java EE license agreement, servlet containers that are not part of a Java EE product should not allow the application to override Java SE platform classes, such as those in the java.* and javax.* namespaces, that Java SE does not allow to be modified.
因此,您可以:
- 更新为 tomcat 8;
- 在 Java EE 容器中部署您的应用程序,这允许应用程序覆盖;
- 使用旧版本的 rest easy(3.0.5.Final 应该可以);