@WebService
public interface HelloWorldService {
public String getNewName(String userName);
} 使用@WebService标识让CXF知道使用该接口来创建WSDL 4. 新建一个实现类@WebService(endpointInterface="org.app.demo.spring.service.HelloWorldService")
public class HelloWorldServiceImpl implements HelloWorldService {
public String getNewName(String userName) {
return "Hello Spring!" + userName;
}
} 5. 修改相应的配置文件 ApplicationContext.xml中加入如下代码<jaxws:endpoint
id="helloWorld"
implementor="org.app.demo.spring.service.impl.HelloWorldServiceImpl"
address="/HelloWorld" /> 或者 <bean id=" helloWorldService" class=" org.app.demo.spring.service.impl.HelloWorldServiceImpl" /><jaxws:endpoint
id="helloWorld"
implementor="#helloWorldService"
address="/HelloWorld" /> 注意:XML头文件需相应添加 xmlns:jaxws="http://cxf.apache.org/jaxws http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd web.xml中加入如下代码<servlet>
<servlet-name>CXFServlet</servlet-name>
<servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>CXFServlet</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping> 6. 启动Tomcat,打开http://localhost:8080/myapp/HelloWorld?wsdl就可以看到了 7. 客户端调用也很方便,如下代码:URL wsdlUrl = new URL("http://192.168.0.114:8080/myapp/HelloWorld?wsdl");
QName SERVICE_NAME = new QName("http://impl.service.spring.demo.app.org/","HelloWorldServiceImplService");
Service service = Service.create(wsdlUrl, SERVICE_NAME);
HelloWorldService hello = service.getPort(HelloWorldService.class);
System.out.println(hello.getNewName("WebService调用")); 然后执行代码后,会打印出 Hello Spring!WebService调用。 注意 1. IP地址为Webservice的服务器的地址。 2. 必须把相应的接口复制到客户端项目中。转载于:https://www.cnblogs.com/waiwai1015/p/4651029.html
