jax-rs 将多个 JSON 对象传递给 java 方法调用

发布于 2024-12-05 22:56:02 字数 109 浏览 0 评论 0原文

我正在使用 CXF Jax-rs,想要将 2 个 JSON 对象作为参数传递给我的其余服务方法。

我能够传递一个对象作为参数。

感谢任何帮助。

谢谢, 鲍勃

I am using CXF Jax-rs, wanted to pass 2 JSON objects as arguments to my rest service method.

I was able to pass one object as argument.

Appreciate any help.

thanks,
Bob

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

很糊涂小朋友 2024-12-12 22:56:02

我假设通过传递“JSON 对象”(不是最好的术语,但我想我知道这里的意思),您的意思是您正在通过实体主体将参数传递给服务方法,并指定其内容类型。

如您所知,在 JAX-RS 中只有一个参数可以是裸参数(即不使用 @PathParam@QueryParam@MatrixParam 等标记.) 并且该单个未注释的参数来自实体主体。

所以你不能传递两个这样的参数。这是不允许的。

您可以做的是将请求的实体正文编码为 JSON,如下所示:

{ "param1": { .... }, "param2": { .... } }

它将两个“对象”伪造为一个。

I assume by passing a "JSON object" (not the best terminology but I think I know what is meant here) you mean you are passing a parameter to a service method via an entity body, and specifying its content type.

As you know in JAX-RS only one parameter can be bare (that is, not marked with @PathParam or @QueryParam or @MatrixParam etc.) and that single unannotated parameter comes from the entity body.

So you cannot pass two such parameters. It is not allowed.

What you can do is encode your entity body of the request in JSON as follows:

{ "param1": { .... }, "param2": { .... } }

which fakes two "objects" into one.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文