我有一个骆驼 cxf-rs 端点,它将请求分成两个主要部分。
form("cxfrs:bean:rsServer")
.when(isForward()).to("cxfrs:http://example.com")
.otherwise().process(myCustomDispatcher) // i want to get rid of this custom dispatcher
第一部分直接转发到不同的服务。
对于第二部分,我想调度/调用具有 jaxrs 注释的类/方法。目前我有一个自定义处理器myCustomerDispatcher
,可以复制注释中的逻辑并手动分派到类和方法。特别是@Path
和@PathParams
是重复的。
我试过了:
to("bean:MyJaxRsImplemantion")
这将适用于具有与骆驼交换中的参数匹配的单一方法的bean,但不考虑jax-rs注释。与 的若干组合
to("cxfrs:bean:cxfEndpoint?resourceClasses=MyJaxRsImplemantion")
。它要么需要一个转发地址,要么作用于创建骆驼交换的新端点。我找不到调用实际实现的方法。ProduceTemplates 似乎都处理单一的路径或情况。
问题:
我如何编写一个实际调用 jax-rs 资源方法而不转发到新服务的骆驼路由?