问题标签 [cxfrs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
35281 浏览

java - 在 REST 服务中返回 XML 响应

我正在编写一个 RESTful Web 服务,我想在其中返回一个包含一些结果集的 XML。我使用了 XSTREAM 并将对象解析为 XML 字符串。由于我需要返回这个字符串,我需要知道如何将它传递回调用客户端。

一种方法是将响应返回给调用客户端。我的示例代码在这里显示了我正在尝试做的事情。

不幸的是,它没有返回实体,尽管状态码是 200。我是否错误地实例化了 ResponseBuilder?我还在某处看到它应该按如下方式实例化:

请建议什么是返回 XML 作为响应的恰当方法。

我将 APACHE CXF 用于 RESTFUL 服务。(版本 2.2.3 - 我猜):D 提前感谢所有帮助。

0 投票
1 回答
5563 浏览

java - 为什么在调用 Camel 路由的 CXF-RS 端点时会收到 NullpointerException?

我的应用程序是一个 java webapp (WAR),它使用 Apache Camel 和(以及其他)CXF-RS 及其相应的 Camel 组件作为 JAX-RS 的实现,向外界提供 ReSTful 服务。

当使用 HTTP POST 和有效负载调用端点之一时,我得到了异常堆栈跟踪,如下所示。请注意,com.foo.FooService 和 com.foo.Foo 类是 JAXRS 注释的服务/资源对。

我特别困惑的是 create() 方法实际上被调用了,因为据我了解,用于 Camel 的 CXF-RS 以某种方式执行了一些魔术来拦截传入请求并将请求路由到 Camel 路由。

这些是类的简化版本:

我在我的 Spring XML 中配置 cxf:rsServer 如下:

路由在 Java 中定义如下:

这是我得到的例外:

0 投票
2 回答
9735 浏览

spring - 将 Camel 路由公开为 Web 容器下的 REST 服务

我有想要作为 REST Web 服务公开的骆驼路线。应用程序部署在 Web 容器(Jetty/Tomcat)上,Spring 也用于 DI 和其他“基础设施”事物。

我查看了camel-restletcamel-cxfrs组件,虽然它们都支持将路由公开为 REST 服务,但我无法找到如何避免启动单独的服务器。我真正想要的是能够以类似于为 Spring-WS 入站端点定义路由的方式定义 Camel 路由,例如

Web 应用程序的配置应该负责接受请求并将它们传输到适当的端点。

不得不承认,我很惊讶我无法找到有关该主题的足够信息,而且我认为我的要求并不是很奇特。

0 投票
1 回答
8852 浏览

java - How to route Rest request from a local service to a remote one using Camel

I am trying to route a rest request from a cxf rest service to another. I have had a look at http://camel.apache.org/cxfrs.html which helped understand part of the process. I have a classCastException at the level of the remoteService Invocation.

What am I doing wrong ?

Service Classes:

RouteBuilder:

Stacktrace:

0 投票
1 回答
3303 浏览

cxfrs - Apache CXFRS 和 CAMEL 配置

我想通过点击http://someotherhost站点上可用的 REST Web 服务来使用 REST 结果。我为它写了一个代理客户端

我想使用 apache CXFRS 客户端访问上述 REST 服务并将结果写入文件。我正在做以下事情,任何人都可以查看以下内容并评论我做错的事情。

a) 我使用 apache cxf 的骆驼上下文配置如下

b) MY Proxy 服务接口

c) 呼叫服务

d) 骆驼路线

0 投票
1 回答
6054 浏览

java - 使用 Jackson 解析 multipart/form-data 或 application/json

我将 CXF 与 JacksonJsonProvider 一起用于我的 REST 服务。我有一个测试方法如下

现在,如果我使用原始 JSON 字符串发出 POST 请求,如下所示

请求得到正确处理,因为我在发出请求时使用 Content-Type 作为“应用程序/json”。

但是由于我正在与外部服务集成,因此我收到了 multipart/form-data 或 application/x-www-urlencoded ,杰克逊中没有任何 afaik 可以处理它。如果有人能指出我正确的方向,那就太好了。

我可以使用 Jettison(CXF 的一部分)管理 multipart/form-data,但我想使用 Jackson。

0 投票
1 回答
1350 浏览

java - 骆驼请求/回复相关性

我有一个 CXFRS 端点,其中诸如“GET /files/x”之类的请求应从特定目录返回文件“x”,然后将其删除。这些文件是从另一个进程输出的,然后通过此路由快速使用。因此,如果需要,可以对它们进行轮询并临时保存在内存中。

下面是我的网络服务。

下面是不完整的路线。

我已经调查了内容丰富器模式,但这无济于事,因为消费者无法在丰富器中访问原始交换。因此,文件名不能从输入消息中动态确定。换句话说,下面的示例不会读取文件“x”,因为文件端点永远不会看到文件头。

我还尝试在 Web 服务路由和单独的文件路由之间使用聚合器模式,聚合策略如下所示。

这不起作用,因为聚合器模式似乎是“仅限于”交换;使用“in out”交换,消息到达聚合器后立即将回复返回给客户端,而不是在聚合完成后。随后,我开始编写下面的过程。

这个过程只允许我动态配置内容丰富器。我很难相信没有更好的方法来做到这一点。特别是,我关心线程和在上下文中不断添加/删除组件/端点。

任何人都可以提出更好的解决方案来解决这个问题吗?

0 投票
1 回答
1312 浏览

cxfrs - CXF:基于 Content-Type 的 JSON 和 XML 响应

我正在使用 cxf 并配置如下:

' <jaxrs:extensionMappings>
<entry key="json" value="application/json" />
<entry key="xml" value="application/xml" />
</jaxrs:extensionMappings>'

所以,我已经验证了内容标头是正确的,并且对拦截器的响应以 xml 的形式返回,但之后客户端总是得到 JSON 响应,而与标头无关...

有什么帮助吗?

0 投票
6 回答
46775 浏览

java - 未找到消息正文编写器:JSON:Apache CXF:RestFul Webservices

我正在使用 Apache CXF 来制作一个简单的宁静应用程序。我有一个客户端类,它将一个 JSON 对象发布到服务器,服务器在一些操作后返回一个 JSON。但是当我执行我得到的代码时

我的客户代码:

请帮忙。

0 投票
7 回答
51160 浏览

java - 未找到响应类 ArrayList 的消息正文编写器

当我试图返回列表时,它的抛出没有为响应类 ArrayList 找到消息正文编写器。

我的代码如下:

请帮我。提前致谢