简体   繁体   English

线程“ main”中的异常java.lang.NoSuchMethodError:org.jboss.resteasy.util.CaseInsensitiveMap.add(Ljava / lang / String; Ljava / lang / Object;)V

[英]Exception in thread “main” java.lang.NoSuchMethodError: org.jboss.resteasy.util.CaseInsensitiveMap.add(Ljava/lang/String;Ljava/lang/Object;)V

I am new to RestEasy web-service .I am getting the proper response from the restEasy Web-Serivce but when I try to write a web-service client ,I am getting above error.Please find the code as below. 我是RestEasy Web服务的新手。我从restEasy Web-Serivce得到了正确的响应,但是当我尝试编写Web服务客户端时,出现了上述错误。请找到以下代码。 Please let me know where is the issue. 请让我知道问题出在哪里。 I am using RestEasy 3.0.9 Final. 我正在使用RestEasy 3.0.9 Final。

RestServiceClient.java RestServiceClient.java

import javax.ws.rs.client.Client;
import javax.ws.rs.client.ClientBuilder;
import javax.ws.rs.client.WebTarget;
import javax.ws.rs.core.Response;

public class RestServiceClient {

public static void main(String[] args) throws Exception {
    Client client = ClientBuilder.newBuilder().build();
    WebTarget target = client.target("http://localhost:8888/RestSpring/rest/response/hello");
    Response response = target.request().get();
    String value = response.readEntity(String.class);
    System.out.println("Response Value : "+value);
    response.close(); 
   }

}

Pom.xml Pom.xml

<properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <java-version>1.7</java-version>
        <spring.version>4.0.5.RELEASE</spring.version>
        <resteasy.version>3.0.9.Final</resteasy.version>
        <jax.rs.version>2.0</jax.rs.version>
        <javax.servlet.version>3.1.0</javax.servlet.version>
        <jackson.version>1.9.4</jackson.version>
    </properties>


    <dependencies>
      <!-- Spring Framework -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-core</artifactId>
            <version>${spring.version}</version>
        </dependency>
         <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-web</artifactId>
            <version>${spring.version}</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-beans</artifactId>
            <version>${spring.version}</version>
        </dependency> 

        <!-- RestEasy  -->
        <dependency>
            <groupId>org.jboss.resteasy</groupId>
            <artifactId>resteasy-jaxrs</artifactId>
            <version>${resteasy.version}</version>
        </dependency>

        <!-- RestEasy Spring Integration -->
        <dependency> 
            <groupId>org.jboss.resteasy</groupId> 
            <artifactId>resteasy-spring</artifactId> 
            <version>${resteasy.version}</version>
        </dependency>

        <!-- restEasy for file upload -->
        <dependency>
        <groupId>org.jboss.resteasy</groupId>
        <artifactId>resteasy-multipart-provider</artifactId>
        <version>2.2.0.GA</version>
       </dependency>

        <!-- RestEasy Jackson Json Mapper -->
        <dependency>
            <groupId>org.jboss.resteasy</groupId>
            <artifactId>resteasy-jackson-provider</artifactId>
            <version>${resteasy.version}</version>
        </dependency>

        <!-- JAX-RS -->
        <dependency>
            <groupId>javax.ws.rs</groupId>
            <artifactId>javax.ws.rs-api</artifactId>
            <version>${jax.rs.version}</version>
        </dependency>

        <!-- Servlet -->
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>${javax.servlet.version}</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>javax.inject</groupId>
            <artifactId>javax.inject</artifactId>
            <version>1</version>
        </dependency>

        <!-- Log4j Jar -->
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.17</version>
        </dependency>

        <!-- Apache Common Lang -->
        <dependency>
            <groupId>commons-lang</groupId>
            <artifactId>commons-lang</artifactId>
            <version>2.6</version>
        </dependency>
        <dependency>
            <groupId>commons-codec</groupId>
            <artifactId>commons-codec</artifactId>
            <version>1.9</version>
        </dependency>

        <!-- Junit and Mockito -->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.11</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.mockito</groupId>
            <artifactId>mockito-all</artifactId>
            <version>1.9.5</version>
            <scope>test</scope>
        </dependency>
        <!-- RestEasy Client -->
    <dependency>
        <groupId>org.jboss.resteasy</groupId>
        <artifactId>resteasy-client</artifactId>
        <version>3.0.2.Final</version>
    </dependency>

    </dependencies>

RestService.java RestService.java

import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;

import org.jboss.resteasy.annotations.providers.multipart.MultipartForm;
import org.springframework.stereotype.Controller;

import com.web.app.rest.object.Employee;
import com.web.app.rest.object.FileUploadForm;

@Controller
@Path("/response")
public class RestService {

    @GET
    @Path("/hello")
    public String sayHelloRestEasy(){
        System.out.println("Calling web!");
        return "RestEasy say Hello user!!!";


    }
}

Try use corresponding version of resteasy-multipart-provider: 尝试使用相应版本的resteasy-multipart-provider:

<dependency>
    <groupId>org.jboss.resteasy</groupId>
    <artifactId>resteasy-multipart-provider</artifactId>
    <version>${resteasy.version}</version>
</dependency>

2.2.0 seems to be very old 2.2.0似乎很旧

After change of version and removed javax.ws.rs-api jar getting the response from the servers. 更改版本并删除javax.ws.rs-api jar之后,从服务器获取响应。 this are the configuration file as below. 这是如下的配置文件。

pom.xml pom.xml

<properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <java-version>1.7</java-version>
        <spring.version>4.0.5.RELEASE</spring.version>
        <resteasy.version>3.0.9.Final</resteasy.version>
        <jax.rs.version>2.0</jax.rs.version>
        <javax.servlet.version>3.1.0</javax.servlet.version>
        <jackson.version>1.9.4</jackson.version>
    </properties>


    <dependencies>
      <!-- Spring Framework -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-core</artifactId>
            <version>${spring.version}</version>
        </dependency>
         <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-web</artifactId>
            <version>${spring.version}</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-beans</artifactId>
            <version>${spring.version}</version>
        </dependency> 

        <!-- RestEasy  -->
        <dependency>
            <groupId>org.jboss.resteasy</groupId>
            <artifactId>resteasy-jaxrs</artifactId>
            <version>${resteasy.version}</version>
        </dependency>

        <!-- RestEasy Spring Integration -->
        <dependency> 
            <groupId>org.jboss.resteasy</groupId> 
            <artifactId>resteasy-spring</artifactId> 
            <version>${resteasy.version}</version>
        </dependency>

        <!-- restEasy for file upload -->
         <dependency>
            <groupId>org.jboss.resteasy</groupId>
            <artifactId>resteasy-multipart-provider</artifactId>
            <version>${resteasy.version}</version>
          </dependency>

        <!-- RestEasy Jackson Json Mapper -->
        <dependency>
            <groupId>org.jboss.resteasy</groupId>
            <artifactId>resteasy-jackson-provider</artifactId>
            <version>${resteasy.version}</version>
        </dependency>

        <!-- JAX-RS -->
        <!-- 
        <dependency>
            <groupId>javax.ws.rs</groupId>
            <artifactId>javax.ws.rs-api</artifactId>
            <version>${jax.rs.version}</version>
        </dependency>
         -->
        <!-- Servlet -->
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>${javax.servlet.version}</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>javax.inject</groupId>
            <artifactId>javax.inject</artifactId>
            <version>1</version>
        </dependency>

        <!-- Log4j Jar -->
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.17</version>
        </dependency>

        <!-- Apache Common Lang -->
        <dependency>
            <groupId>commons-lang</groupId>
            <artifactId>commons-lang</artifactId>
            <version>2.6</version>
        </dependency>
        <dependency>
            <groupId>commons-codec</groupId>
            <artifactId>commons-codec</artifactId>
            <version>1.9</version>
        </dependency>

        <!-- Junit and Mockito -->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.11</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.mockito</groupId>
            <artifactId>mockito-all</artifactId>
            <version>1.9.5</version>
            <scope>test</scope>
        </dependency>
        <!-- RestEasy Client -->
    <dependency>
        <groupId>org.jboss.resteasy</groupId>
        <artifactId>resteasy-client</artifactId>
        <version>${resteasy.version}</version>
    </dependency>

    </dependencies>

web.xml web.xml

 <listener> 
        <listener-class>org.jboss.resteasy.plugins.server.servlet.ResteasyBootstrap</listener-class> 
    </listener> 

    <listener> 
        <listener-class>org.jboss.resteasy.plugins.spring.SpringContextLoaderListener</listener-class> 
    </listener> 

    <servlet> 
        <servlet-name>Resteasy</servlet-name> 
        <servlet-class>org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher</servlet-class> 
        <load-on-startup>1</load-on-startup>
    </servlet>

    <servlet-mapping>
        <servlet-name>Resteasy</servlet-name>
        <url-pattern>/rest/*</url-pattern>
    </servlet-mapping>  

    <context-param>
        <param-name>resteasy.servlet.mapping.prefix</param-name>
        <param-value>/rest</param-value>
    </context-param>

    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>/WEB-INF/spring-servlet.xml</param-value>
    </context-param>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 java.lang.NoSuchMethodError:org.jboss.logging.Logger.getMessageLogger(Ljava / lang / Class; Ljava / lang / String;)Ljava / lang / Object; - java.lang.NoSuchMethodError: org.jboss.logging.Logger.getMessageLogger(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Object; 线程“主”中的异常java.lang.NoSuchMethodError:org.hibernate.cfg.Environment.verifyProperties(Ljava / util / Map;)V - Exception in thread “main” java.lang.NoSuchMethodError: org.hibernate.cfg.Environment.verifyProperties(Ljava/util/Map;)V java.lang.NoSuchMethodError:org.quartz.Scheduler.deleteTrigger(Ljava/lang/String;Ljava/lang/String;)V - java.lang.NoSuchMethodError:org.quartz.Scheduler.deleteTrigger(Ljava/lang/String;Ljava/lang/String;)V 线程“main”中的异常 java.lang.NoSuchMethodError: org.junit.platform.commons.util.ReflectionUtils.getDefaultClassLoader()Ljava/lang/ClassLoader; - Exception in thread "main" java.lang.NoSuchMethodError: org.junit.platform.commons.util.ReflectionUtils.getDefaultClassLoader()Ljava/lang/ClassLoader; java.lang.NoSuchMethodError: org.apache.poi.util.POILogger.log(I[Ljava/lang/Object;)V - java.lang.NoSuchMethodError: org.apache.poi.util.POILogger.log(I[Ljava/lang/Object;)V 线程“main”中的异常 java.lang.NoSuchMethodError: org.apache.hadoop.conf.Configuration.getPassword(Ljava/lang/String;)[C - Exception in thread "main" java.lang.NoSuchMethodError: org.apache.hadoop.conf.Configuration.getPassword(Ljava/lang/String;)[C 线程“Thread-3”中的异常 java.lang.NoSuchMethodError: org.apache.http.impl.client.DefaultRedirectStrategy。<init> ([Ljava/lang/String;)V - Exception in thread “Thread-3” java.lang.NoSuchMethodError: org.apache.http.impl.client.DefaultRedirectStrategy.<init>([Ljava/lang/String;)V 线程“AWT-EventQueue-0”中的异常 java.lang.NoSuchMethodError: org.apache.xmlbeans.XmlOptions.put(Ljava/lang/Object;)V - Exception in thread “AWT-EventQueue-0” java.lang.NoSuchMethodError: org.apache.xmlbeans.XmlOptions.put(Ljava/lang/Object;)V 线程“main”中的异常 java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkState(ZLjava/lang/String;Ljava/lang/Object;) - Exception in thread "main" java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkState(ZLjava/lang/String;Ljava/lang/Object;) 引起原因:java.lang.NoSuchMethodError:org.quartz.JobDataMap.put(Ljava / lang / String; Ljava / lang / Object;)Ljava / lang / Object - Caused by: java.lang.NoSuchMethodError: org.quartz.JobDataMap.put(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM