一,引入jar包
<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven.compiler.source>1.7</maven.compiler.source> <maven.compiler.target>1.7</maven.compiler.target> <junit.version>4.11</junit.version> <cxf.version>2.7.12</cxf.version> <slf4j.version>1.7.7</slf4j.version> </properties>
<dependency> <groupId>org.apache.cxf</groupId> <artifactId>cxf-rt-frontend-jaxws</artifactId> <version>${cxf.version}</version> </dependency> <dependency> <groupId>org.apache.cxf</groupId> <artifactId>cxf-rt-transports-http</artifactId> <version>${cxf.version}</version> </dependency> <!-- Jetty is needed if you're are not using the CXFServlet --> <dependency> <groupId>org.apache.cxf</groupId> <artifactId>cxf-rt-transports-http-jetty</artifactId> <version>${cxf.version}</version> </dependency>
二,暴露借口
<!-- SurveyService --> <bean id="BankTransaction" class="gdsbcw_cxf.BankTransactionImpl"></bean> <jaxws:endpoint id="bankService" implementor="#BankTransaction" address="/cxfService"></jaxws:endpoint> </beans>
三,配置客户端访问借口(如何是两个java项目,在客户端创建一个相同的借口(加上@webservice))
<bean id="client" class="gdsbcw_cxf.BankTransaction" factory-bean="clientFactory" factory-method="create" /> <bean id="clientFactory" class="org.apache.cxf.jaxws.JaxWsProxyFactoryBean"> <property name="serviceClass" value="gdsbcw_cxf.BankTransaction" /> <property name="address" value="http://localhost:8080/cxf/cxfService" /> </bean> </beans>
四,测试接口的调用
ApplicationContext ctx = new ClassPathXmlApplicationContext("spring-client.xml"); BankTransaction client = (BankTransaction) ctx.getBean("client"); String result = client.getAesSeed("123"); System.out.println(result);