Java 在同一战争中从另一个Web服务调用Web服务-ApacheCXF

Java 在同一战争中从另一个Web服务调用Web服务-ApacheCXF,java,web-services,cxf,httpclient,Java,Web Services,Cxf,Httpclient,我有两个Web服务或端点,每个Web服务或端点有一个方法,每个方法都映射有一个URL。我正在从REST客户端调用一个web服务URL,在这个方法中,我想调用另一个映射到URL的web服务中的方法。如何在apache CXf中实现这一点 我尝试使用HttpClient从一个Web服务调用另一个Web服务,但如果我使用完整的URL并获得302代码,则得到404,但如果使用相对URL,则没有响应。可能出现的问题和正确的方法是什么?您可以尝试直接调用其他控制器,而无需httprequest。 例如,接下

我有两个Web服务或端点,每个Web服务或端点有一个方法,每个方法都映射有一个URL。我正在从REST客户端调用一个web服务URL,在这个方法中,我想调用另一个映射到URL的web服务中的方法。如何在apache CXf中实现这一点


我尝试使用HttpClient从一个Web服务调用另一个Web服务,但如果我使用完整的URL并获得302代码,则得到404,但如果使用相对URL,则没有响应。可能出现的问题和正确的方法是什么?

您可以尝试直接调用其他控制器,而无需httprequest。 例如,接下来的两个控制器包含所需的所有注释

@RestController
@RequestMapping("/a")
public class A{
     @RequestMapping(...)
    public void toCall(){
        //your code
    }
}
您想从控制器B调用控制器A的方法
toCall

@RestController
@RequestMapping("/b")
public class B{
     @RequestMapping(...)
    public void method(){
        A a = new A();
        a.toCall();
    }
}

302不是错误代码。如果这两个服务处于同一场战争中,为什么要使用web服务?听起来像是一件昂贵的东西,大卫说。那么我如何打电话到另一个端点呢?我可以创建其他类的实例并调用方法吗?例如,一个服务用于身份验证,另一个用于执行操作。现在,当调用操作服务时,我想首先进行身份验证并执行操作。@user7185698只需将端点实例注入另一个端点。或者使用业务逻辑定义一个对象并将其注入两个端点。这不是CXF问题。如果您使用spring配置或注释定义了端点,但不知道实例在哪里,那么请显示代码,以便人们可以向您提供建议Hanks nasim,我的问题是toCall()方法接受queryparam和原始数据作为输入,如何从a.toCall()进行管理?将参数直接放入方法toCall的params(param1,param2,…)。