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

使用Jersey的@BeanParam会导致415错误

尉迟明辉
2023-03-14

我试图以以下方式使用Jersey的@BeanParam注释:

这是我的豆子:

public class BeanParamModel {

@QueryParam(value = "param1")
private String param1;

public BeanParamModel(@QueryParam("param1") String param1) {
    this.param1 = param1;
}

public String getParam1() {
    return param1;
}

public void setParam1(String param1) {
    this.param1 = param1;
}}

这是需要使用它的资源方法

@Consumes("*/*")
@Path("mypath")
@GET
public Response getUpgradeStatus(@QueryParam("param1") String param1, @BeanParam BeanParamModel user) {
    return Response.ok().build();
}

现在我想使用一个单元测试来测试它,该单元测试使用以下url向测试服务器发送超文本传输协议请求:

GET超文本传输协议://path_to_resource?参数1

我的问题是,这导致了415响应,泽西打印了这条消息:

找不到Java类BeanParamModel、Java类型类BeanParamModel和MIME媒体类型应用程序/八位字节流的消息正文读取器。与MIME媒体类型兼容的已注册邮件正文读取器为:。。。

我试图添加一个“应用程序/x-www-表单-urlencoded”标头,但该标头类型的消息也会重复。我还尝试使用应用程序/json头,由于输入结束,这导致jackson映射器的EOF期望。

谁能告诉我我哪里做得不对?从@BeanParam的球衣留档来看,这似乎很简单。

共有1个答案

简滨海
2023-03-14

有了@GET,你就不应该有@Consumes。

 类似资料:
  • 我正在尝试使用NPM的gulp-git模块推送到我的远程存储库。add&commit部分运行良好,但在尝试执行远程推送时遇到流错误。 TypeError:undefined不是write(C:\src\git\ig\node_module\gulp-git\node_module\through2\node_module\readable-stream\lib_stream_readable.js

  • 在本例中,我在一个包含2个副本的部署中运行“echoheaders”Nginx。当我删除一个pod时,我有时会收到约40秒的缓慢响应和错误。 我们正在库伯内特斯运行我们的API网关,并且需要能够允许库伯内特斯调度程序在它认为合适的时候处理pod。 我们最近想引入会话相关性,为此,我们想迁移到新的闪亮的NEG:网络endpoint组:https://cloud.google.com/load-bal

  • 我有一个jersey服务器的例子,它适用于XML,但不适用于JSON。 如果我将此xml请求作为发送到服务器,则一切正常, 作为) 我在utilities-online.info将其翻译为JSON,并将其作为发送到相同的URL,具有相同的参数,但收到错误“400错误请求” 环境: Tomcat 7 球衣2.17 我尝试过的: 将添加到init-参数 启用init-参数为 添加了依赖项//

  • 我正在使用四核处理器的Windows7,SP1上运行Java1.8.0_45。有事吗?

  • 在kotlin引用的属性和字段一节中,写了以下示例: var AllByDefault:int?//错误:需要显式初始化器,隐含默认getter和setter @toniedzwiedz的回答解决了这个问题。这是我的错.我把属性和变量搞错了。

  • 问题内容: 在 Java 8 In Action 一书的第7.1.1节中,作者指出,通过添加功能,流可以从并行处理中受益。他们提供了一个简单的方法来说明这一点。我很好奇它的工作原理,所以我执行了以下代码: 令我惊讶的是,我收到此错误: 我在Windows 7 SP1上使用四核处理器运行Java 1.8.0_45。这是怎么回事? 问题答案: 在这里,您可以创建无限流并在之后对其进行限制。关于并行处理