jax-rs 将多个 JSON 对象传递给 java 方法调用
我正在使用 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 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我假设通过传递“JSON 对象”(不是最好的术语,但我想我知道这里的意思),您的意思是您正在通过实体主体将参数传递给服务方法,并指定其内容类型。
如您所知,在 JAX-RS 中只有一个参数可以是裸参数(即不使用
@PathParam
或@QueryParam
或@MatrixParam
等标记.) 并且该单个未注释的参数来自实体主体。所以你不能传递两个这样的参数。这是不允许的。
您可以做的是将请求的实体正文编码为 JSON,如下所示:
它将两个“对象”伪造为一个。
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:
which fakes two "objects" into one.