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

javax.ws.rs.NotSupportedException:找不到类型:class的消息正文读取器

柳培
2023-03-14

我尝试在pom.xml中添加以下依赖项

<!-- Jersey-Json -->
    <dependency>
    <groupId>com.sun.jersey</groupId>
    <artifactId>jersey-json</artifactId>
    <version>1.8</version>
    </dependency>

以及下面的web.xml

null

<?xml version="1.0" encoding="UTF-8"?>

<web-app>
<servlet>
	<servlet-name>jersey-serlvet</servlet-name>
	<servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
	<!-- <init-param>
		<param-name>com.sun.jersey.config.property.packages</param-name>
		<param-value>com.mkyong.rest</param-value>
	</init-param> -->
	<init-param>
		<param-name>com.sun.jersey.api.json.POJOMappingFeature</param-name>
		<param-value>true</param-value>
	</init-param>
	<load-on-startup>1</load-on-startup>
  </servlet>
 
  <servlet-mapping>
	<servlet-name>jersey-serlvet</servlet-name>
	<url-pattern>/rest/*</url-pattern>
  </servlet-mapping>
</web-app>

null

与其他员额一样。但我还是得到了

2015-03-31T15:52:08.771+0530警告:loggername=“o.j.resteasy.core.exceptionhandler”threadname=“qtp1558867745-18”txnid=“”无法执行javax.ws.rs.NotSupportedException:在org.jboss.resteasy.curo.es.data.cdto.requestCDTo(内容类型为:text/plain)中找不到类型:class com.apple.ist.curo.es.data.cdto.requestCDTo的消息正文读取器;charset=UTF-8(位于ion.AbstracTreaderInterceptorContext.Proceed(AbstracTreaderInterceptorContext.java:53)~[resteasy-jaxrs-3.0.7.final.jar:na]在org.jboss.resteasy.core.MessageBodyParameterInjector.inject(MessageBodyParameterInjector.java:150)~[resteasy-jaxrs-3.0.7.final.jar:na]在7.final.jar:na]在org.jboss.resteasy.core.synchronousDispatcher.invoke(SynchronousDispatcher.java:179)[resteasy-jaxrs-3.0.7.final.jar:na]在org.jboss.resteasy.plugins.server.servlet.servatcher.service(ServletContainerDispatcher.service(ServletContainerDispatcher.java:220)[resteasy-jaxrs-3.0.7.final.jar:na]在jer.java:143)[JettyServer-9.2.5.v20141112.jar:9.2.5.v20141112]在org.eclipse.jetty.security.securityhandler.handle(securityhandler.java:577)[JettySecurity-9.2.5.v20141112.jar:9.2.5.v20141112]在org.eclipse.jetty.server.session.sessionhandler.dohandle(sessionhandler.java:223)[JettyServer-9.2.5.v20141112.jar:9.2.5.v20141112]]在org.eclipse.jetty.server.handler.handlerwrapper.handle(handlerwrapper.java:97)[jettyserver-9.2.5.v20141112.jar:9.2.5.v20141112]在org.eclipse.jetty.server.server.handle(server.java:497)[jettyserver-9.2.5.v20141112.jar:9.2.5.v20141112]在org.eclipse.jetty.server.httpchannel.handle(

我的代码如下:

@POST
@Path(PERSON_SALARY_PATH)
@Produces(MediaType.APPLICATION_JSON)
public String getSalary(@RequestBody RequestCDTO requestCDTO) {

共有2个答案

谢和颂
2023-03-14

添加@consumes(Mediatype.application_json),并确保您设置了请求头“content-type:application/json”。前者我不认为是必需的,但无论如何你应该留下它。后者是最重要的。由于某种原因,您的请求以“text/plain”标题发送出去

peeskillet的上述评论就是正确的答案。

萧煜
2023-03-14

在我的代码中,它在添加下面的依赖项后起作用

<dependency>
        <groupId>org.jboss.resteasy</groupId>
        <artifactId>resteasy-jackson2-provider</artifactId>
        <version>3.0.19.Final</version>
    </dependency>
 类似资料:
  • 我正在使用一个以AngularJS为客户端和泽西Rest WebService的应用程序。我能够通过使用angularJS$http.get()成功获取数据,但我很难将数据发布到服务器。我收到以下异常。 com.sun.jersey.spi.container.ContainerRequestgetEntity SEVERE:未找到Java类型、类dto.BookObject和MIME媒体类型(a

  • 问题内容: 当我尝试返回List时,没有找到响应类ArrayList的消息正文编写器。 我有如下代码: 请帮我。提前致谢 问题答案: 要返回列表,最好将其包装到带注释的容器中,并将该列表作为字段添加到该容器中,并标记为。 像这样:

  • 问题内容: 我正在使用Jersey来构建REST服务,并希望返回XML。 但是我的尝试失败,但有以下异常: javax.ws.rs.WebApplicationException:com.sun.jersey.api.MessageException:Java类java.util.ArrayList和Java类型类java.util.ArrayList和MIME媒体类型text / xml的消息正

  • 问题内容: 在尝试找出我的问题之后,我终于决定问您如何解决我的问题。我见过不同的人有相同的问题,我尝试了所有建议他们做的事情,但没有任何帮助解决我的问题。所以基本上我有一个使用Jersey进行构建的RESTful服务。对于我的客户,我想返回JSON格式的对象。我通读了不同的教程,并决定使用jersey- json-1.8库是有意义的。我像往常一样将所有内容添加到我的项目中,并尝试运行它,但是每次调

  • 问题内容: 我正在测试RESTful服务,当我执行RESTful服务时,尽管我的类路径(WEB-INF / lib)中包含以下jar,但是却遇到异常,但我没有使用Maven,而我的JDK版本是1.5。有关此问题的其他问题无助于解决问题。 程式码片段 web.xml 罐子清单 异常堆栈 我该如何解决这个问题? 问题答案: 确保您的项目中没有多个Jersey版本。在您提供的列表中,有3个不同版本(1.

  • 我写了一个JAX-RS服务器和客户端都使用泽西岛。我想将我的实体集合发送到客户端,并执行了以下步骤: 制作实体扩展Serializable 编写了一个自定义提供程序并将其扩展为支持集合 将实体和提供程序复制粘贴到客户端 我发出了一个请求,客户端在服务器端成功地处理了这个请求,但收到了一个错误: 服务器: 客户: 提供商: }