当前位置: 首页 > 知识库问答 >
问题:

无此方法访问JAX RS CXF Web服务时出错

易炳
2023-03-14

当我尝试访问我的JAX RS CXF web服务时,我没有遇到这样的方法错误。以下是我在构建路径中添加的JAR:

cxf-core-3.1.2.jar
cxf-rt-frontend-jaxrs-3.1.2.jar
cxf-rt-rs-client-3.1.2.jar
cxf-rt-rs-extension-providers-3.1.2.jar
cxf-rt-rs-extension-search-3.1.2.jar
cxf-rt-transports-http-3.1.2.jar
httpclient-4.4.1.jar
httpcore-4.4.1.jar
httpcore-nio-4.4.1.jar
javax.ws.rs-api-2.0.1.jar
jcl-over-slf4j-1.7.12.jar
jettison-1.3.7.jar
spring-aop-4.1.6.RELEASE.jar
spring-beans-4.1.6.RELEASE.jar
spring-context-4.1.6.RELEASE.jar
spring-core-4.1.6.RELEASE.jar
spring-expression-4.1.6.RELEASE.jar
spring-web-4.1.6.RELEASE.jar
stax2-api-3.1.4.jar
xml-resolver-1.2.jar
xmlbeans-2.6.0.jar
xmlschema-core-2.2.1.jar    
xmlsec-2.0.5.jar

J2EE版本为2.3,应用服务器为weblogic 12

我知道这是个罐子问题。但我无法解决它。这是抛出的错误:

java.lang.NoSuchMethodError: javax.ws.rs.NotFoundException.validate(Ljavax/ws/rs/core/Response;Ljavax/ws/rs/core/Response$Status;)Ljavax/ws/rs/core/Response;
    at javax.ws.rs.NotFoundException.(NotFoundException.java:126)
    at org.apache.cxf.jaxrs.utils.SpecExceptions.toNotFoundException(SpecExceptions.java:89)
    at org.apache.cxf.jaxrs.utils.ExceptionUtils.toNotFoundException(ExceptionUtils.java:122)
    at org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.processRequest(JAXRSInInterceptor.java:169)

共有1个答案

申屠喜
2023-03-14

该类和方法可能存在,并且与任何weblogic JAR冲突

在WEB-INF中的weblogic.xml中,添加javax.ws.rs.*包以指示weblogic选择WAR类路径中的包,如下所示。

样品weblogic.xml:

    <?xml version="1.0" encoding="UTF-8"?>  
<weblogic-web-app xmlns="http://xmlns.oracle.com/weblogic/weblogic-web-app" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsdhttp://xmlns.oracle.com/weblogic/weblogic-web-apphttp://xmlns.oracle.com/weblogic/weblogic-web-app/1.0/weblogic-web-app.xsd">
    <container-descriptor>  
        <prefer-application-packages>  
            <package-name>com.fasterxml.jackson.*</package-name>
            <package-name>org.eclipse.persistence.*</package-name>
            <package-name>javax.ws.rs.*</package-name>
        </prefer-application-packages>  
    </container-descriptor>  
</weblogic-web-app>

 类似资料:
  • 我已经安装了Jenkins和Sonarqube5.1.1(也尝试了LTS),它运行在Ubuntu服务器上,可以从外部访问。我已经安装了Jenkins SonarQube插件,一切都差不多工作了。如果我在Jenkins中将SonarQube服务器URL设置为localhost,那么一切都很好。但是到SonarQube(在Jenkins内部)的链接将指向localhost,当我从外部访问Jenkins

  • 我无法通过集装箱中的港口连接到django。我使用的地址是:0.0.0.0.:8000,请参阅:http://joxi.ru/Dr8MeGLhkBWnLm.我正在用一个命令创建一个图像和一个容器:“docker compose up-d”。 docker-compose.yaml Dockerfile 如何解决此问题?

  • 我无法从外部访问我的服务。首先,这里是我的conf yaml文件: nginx-pod.yaml nginx-service.yaml metallb-config.yaml 然后我创建了集群。命令 打印: 一切正常,而且< code > ku bectl describe service/nginx-service 打印: curl命令在主服务器打印。接下来我试图从另一个网络打开,它不起作用,但

  • 问题内容: 我有一个应该将文件发送到Web服务的程序,该程序需要SSL连接。我运行程序如下: 这很好,但是当我将第一行更改为 我收到以下错误: 因此,似乎该问题与我正在使用的JRE有关,但似乎没有意义的是非IBM JRE可以正常工作,而IBM JRE则不能。有什么想法或建议吗? 问题答案: 如果您的非IBM jre是sun,那么它已经附带了SSL类实现。 看来IBM jre根本不包含SSL实现类。

  • 停止服务器后日志文件的其余部分如下: 以下是我在sonar.properties文件中编写的一些属性: sonar.web.host=172.31.254.181 sonar.web.context=/sonar sonar.web.port=9000 sonar.jdbc.username=sonar sonar.jdbc.password=sonar sonar.jdbc.url=jdbc:m

  • 我是一个码头工人,我在前几天阅读了如何使用它的官方教程。我决定将我非常简单的spring-boot应用程序作为服务部署到集群中,但我无法从外部访问它。顺便说一下,当我用docker run启动docker时,容器是可以访问的。 所以我的春靴tomcat正在收听8081。 Dockerfile: docker-compose.yml: 我部署了两个服务,一个可视化程序和一个Spring引导应用程序。