gpt4 book ai didi

java - Jersey 2.4 和 CXF 2.6

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

我已经实现了与 Jersey 2.4 的 API 集成,但在尝试启动我的 tomcat 时遇到问题

SEVERE: Servlet.service() for servlet [Jersey REST Service] in context with path [] threw exception [Servlet execution threw an exception] with root cause
java.lang.AbstractMethodError: javax.ws.rs.core.UriBuilder.uri(Ljava/lang/String;)Ljavax/ws/rs/core/UriBuilder;
at javax.ws.rs.core.UriBuilder.fromUri(UriBuilder.java:119)
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:286)
at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:218)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:81)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)

可能在使用 javax.ws.rs.core 中引用的 UriBuilder 和 org.apache.cxf.jaxrs.impl 中的 UriBuilderImpl 时存在冲突。如果我将我的 WEB-INF\lib 中的 cxf-2.6.0.jar 重命名为 zxf-2.6.0.jar(最后加载),一切正常。

我怎样才能以一种优雅的方式解决这个问题?

最佳答案

是的,这绝对是 UriBuilder 冲突,当您重命名 cxf jar 时,您会更改查找顺序,使正确的版本排在第一位。我建议使用 Maven 进行依赖管理,其中可以使用 exclude 标签来处理不需要的子依赖。

关于java - Jersey 2.4 和 CXF 2.6,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20286807/

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