有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Apache CXF为客户提供SEI

对于要创建web服务的apache cxf客户端的客户,如果他们使用JaxWsProxyFactoryBean,他们需要端点地址和SEI代码。关于提供端点地址没有问题,但是如何提供SEI?您只是将接口导出到jar中,然后将jar提供给客户?每次您更改SEI时,您必须与所有客户联系,并再次提供罐子

我指的是下面示例中的IDataService接口:

public static void main(String[] args) throws SomeException {  

    JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
    factory.getInInterceptors().add(new LoggingInInterceptor());
    factory.getOutInterceptors().add(new LoggingOutInterceptor());
    factory.setServiceClass(IDataService.class);
    factory.setAddress("http://localhost:8080/WSTest/services/dataService");
    IDataService client = (IDataService) factory.create();

}

共 (1) 个答案

  1. # 1 楼答案

    理想情况下,您应该给他们提供服务的WSDL—WSDL应该是这里的契约,他们可以使用任何可用的工具(wsdl2java等)生成自己的模板集

    如果客户机是公司内部的,那么可以创建一个精简项目,只包含接口、类型、消息,将其打包为jar,并通过一些内部存储库提供jar,假设您的接口不太频繁,即使它发生了更改,也会重新发布到内部存储库