Jax-ws客户端弹簧xml bean配置到基于java的配置?

时间:2016-04-24 17:20:05

标签: java spring jax-ws spring-java-config

你能帮助我将以下基于spring xml的配置转换为基于java的bean配置吗?

<jaxws:client id="helloClient"
                  serviceClass="demo.spring.HelloWorld"
                  address="http://localhost:9002/HelloWorld" />

1 个答案:

答案 0 :(得分:4)

您只需要在任何配置类中使用您在问题中拥有的属性声明一个bean。 看起来应该是这样的:

@Bean(name = "helloClient") // this is the id
public HelloWorld helloWorld() {
    String address = "http://localhost:9002/HelloWorld";
    JaxWsProxyFactoryBean factoryBean = new JaxWsProxyFactoryBean();
    factoryBean.setServiceClass(HelloWorld.class);
    factoryBean.setAddress(address);

    return (HelloWorld) factoryBean.create();
}

您的方法将返回Service类的对象。 您需要一个Jax代理工厂bean来设置属性,然后创建客户端(将其转换为您的服务类)并返回它。