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

apache camel请求响应以及如何路由到下一个转换器

严升
2023-03-14

路由的概念在理论上很好,但在实践中,我有点困惑。我的web服务中有一个CXF方法

public Response someMethod(Request r) {
}

我没有得到的是我需要将请求路由到某个进一步的节点,所以我真的应该在 java 代码中这样做,还是会生成一个接口(希望是异步的),我可以将该节点连接到某个转换器到下一个节点验证器到某个存储和转发等,然后最终让存储和转发回复,并以某种方式从套接字发送响应请求最初来自。

在上述方法中,我被迫用该方法将响应返回给客户端,对吗?

如果我应该把代码放在webservices方法中,我应该调用一些camel上下文吗?

此外,我想要SOAP方法调用的“RAW”参数,不想处理SOAP头,然后还需要公开一些只接受字符串的REST API。

编辑:下面答案中的代理例子是我见过的最接近的例子,但即使是这个例子,如果我想走捷径,甚至不在管道中更早的节点调用真正的webservice,我也做不到。我似乎必须调用结束webservice代码,这是不希望的,因为我们没有任何webservice代码。我们试图通过webservice调用在现有的pojos中运行它。如果验证节点失败,我们希望返回响应,如果成功,我们希望将请求转发到另一个节点,如果该节点失败,我们返回响应,如果它成功,我们希望转发请求。这个好像没什么???此外,这对我来说似乎是一个非常典型的案例,所以我很惊讶,或者说我没有从所有这些ESB框架中得到什么(迄今为止是骡子、骆驼)。

谢谢迪恩

共有2个答案

蓬新
2023-03-14

从来没有解决过,我们放弃了骆驼,因为和自己的骆驼相比,它是相当痛苦的。

龚弘业
2023-03-14

看看这个官方示例,它将展示如何执行此操作或者如果您想要RAW请求,请使用此Cxf代理示例

如果您已经使用了SpringMVC Web应用程序,那么使用SpringWS和Jaxb可能会更容易一些。但这是一个品味问题。此处的示例代码

 类似资料:
  • 我在最新的应用程序中使用react router和redux,我面临着一些与基于当前url参数和查询所需状态更改相关的问题。 基本上,我有一个组件,需要在每次url更改时更新它的状态。状态是通过redux的道具传递给decorator的,就像这样 目前,我正在使用componentWillReceiveProps生命周期方法来响应来自react-router的url更改,因为当this.props

  • 本文向大家介绍请你说明一下,如何设置请求的编码以及响应内容的类型?相关面试题,主要包含被问及请你说明一下,如何设置请求的编码以及响应内容的类型?时的应答技巧和注意事项,需要的朋友参考一下 考察点:请求类型   通过请求对象(ServletRequest)的setCharacterEncoding(String)方法可以设置请求的编码,其实要彻底解决乱码问题就应该让页面、服务器、请求和响应、Java

  • 有谁能指导我用PHP编码的方法吗? <?xml version=“1.0”encoding=“UTF-8”?> string 响应 <?xml version=“1.0”encoding=“UTF-8”?> 我如何获得关于请求/响应的POST,Host,Content-Type,Content-Length,SOAPAction?

  • 问题内容: 我在最新的应用程序中使用react-router和redux,并且遇到了一些与基于当前url参数和查询所要求的状态更改有关的问题。 基本上,我有一个组件,每次URL更改时都需要更新其状态。像这样通过装饰器通过redux通过props传递状态 目前,我正在使用componentWillReceiveProps生命周期方法来响应来自react- router的url更改,因为当this.p

  • 我正在做一个项目,在这个项目中我正在创作一本书。创建图书后,将生成唯一的bookId,响应如下所示: 我有一个GET请求,它基本上使用bookid-http://localhost:port/{bookId}获取书籍的详细信息。 每当我创建一本书时,我都会尝试得到上面的URL以便我的响应看起来像这样: 这样,如果用户单击URL,就会导航到GET请求http://localhost:port/{bo

  • 我是WebApi的新手,我遵循了以下教程https://www.asp.net/web-api/overview/getting-start-with-aspnet-web-api/tutorial-your-first-web-api 一切都按预期工作--我有两个endpoint 我试图理解的是它们如何与控制器中定义的方法相关联。 控制器: