首先新建web项目Eclipse——>File——>New——>Other——>弹出框搜索web——>选择Dynamic Web Project;依次填入项目名等等......
右键项目名称添加maven能力 选中项目——>右键——>Configure——>Convert to Maven Project
项目目录如下:
接下来就是各种各样的jar包了,
一、pom文件引入jar包如下:
1 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 2 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 3 <modelVersion>4.0.0</modelVersion> 4 <groupId>testWservice1</groupId> 5 <artifactId>testWservice1</artifactId> 6 <version>0.0.1-SNAPSHOT</version> 7 <packaging>war</packaging> 8 <build> 9 <!-- <sourceDirectory>src</sourceDirectory> --> 10 <plugins> 11 <plugin> 12 <artifactId>maven-compiler-plugin</artifactId> 13 <version>3.1</version> 14 <configuration> 15 <source>1.6</source> 16 <target>1.6</target> 17 </configuration> 18 </plugin> 19 <plugin> 20 <artifactId>maven-war-plugin</artifactId> 21 <version>2.3</version> 22 <configuration> 23 <warSourceDirectory>WebContent</warSourceDirectory> 24 <failOnMissingWebXml>false</failOnMissingWebXml> 25 </configuration> 26 </plugin> 27 </plugins> 28 </build> 29 <properties> 30 <cxf.version>2.7.5</cxf.version> 31 </properties> 32 <dependencies> 33 <dependency> 34 <groupId>org.apache.cxf</groupId> 35 <artifactId>cxf-rt-frontend-jaxws</artifactId> 36 <version>${cxf.version}</version> 37 </dependency> 38 <dependency> 39 <groupId>org.apache.cxf</groupId> 40 <artifactId>cxf-rt-transports-http</artifactId> 41 <version>${cxf.version}</version> 42 </dependency> 43 <dependency> 44 <groupId>org.apache.cxf</groupId> 45 <artifactId>cxf-rt-transports-http-jetty</artifactId> 46 <version>${cxf.version}</version> 47 </dependency> 48 <dependency> 49 <groupId>org.springframework</groupId> 50 <artifactId>spring-aop</artifactId> 51 <version>3.2.3.RELEASE</version> 52 </dependency> 53 <dependency> 54 <groupId>org.dom4j</groupId> 55 <artifactId>com.springsource.org.dom4j</artifactId> 56 <version>1.6.1</version> 57 </dependency> 58 <dependency> 59 <groupId>org.springframework</groupId> 60 <artifactId>spring-beans</artifactId> 61 <version>3.2.3.RELEASE</version> 62 </dependency> 63 <dependency> 64 <groupId>org.springframework</groupId> 65 <artifactId>spring-context-support</artifactId> 66 <version>3.2.3.RELEASE</version> 67 </dependency> 68 <dependency> 69 <groupId>org.springframework</groupId> 70 <artifactId>spring-context</artifactId> 71 <version>3.2.3.RELEASE</version> 72 </dependency> 73 <dependency> 74 <groupId>org.springframework</groupId> 75 <artifactId>spring-webmvc</artifactId> 76 <version>3.2.3.RELEASE</version> 77 </dependency> 78 <dependency> 79 <groupId>org.springframework</groupId> 80 <artifactId>spring-oxm</artifactId> 81 <version>3.2.3.RELEASE</version> 82 </dependency> 83 <dependency> 84 <groupId>org.springframework</groupId> 85 <artifactId>spring-web</artifactId> 86 <version>3.2.3.RELEASE</version> 87 </dependency> 88 <dependency> 89 <groupId>com.thoughtworks.xstream</groupId> 90 <artifactId>xstream</artifactId> 91 <version>1.4.3</version> 92 </dependency> 93 <dependency> 94 <groupId>org.springframework</groupId> 95 <artifactId>spring-core</artifactId> 96 <version>3.2.3.RELEASE</version> 97 </dependency> 98 </dependencies> 99 </project>
二、接口和实现类
接口:IHelloWorld
1 package com.service; 2 3 import javax.jws.WebParam; 4 import javax.jws.WebService; 5 6 @WebService 7 public interface IHelloWorld { 8 9 public String sayHello(@WebParam(name = "userName") String userName); 10 }
实现类:HelloWorldImpl
1 package com.service.impl; 2 3 import javax.jws.WebService; 4 5 import com.service.IHelloWorld; 6 @WebService(serviceName="hello",endpointInterface="com.service.IHelloWorld") 7 public class HelloWorldImpl implements IHelloWorld { 8 9 @Override 10 public String sayHello(String userName) { 11 12 return "Hello " + userName + " web service!!!"; 13 } 14 15 }
三、Spring配置文件
springContext.xml
1 <?xml version="1.0" encoding="UTF-8"?> 2 <beans xmlns="http://www.springframework.org/schema/beans" 3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 4 xmlns:p="http://www.springframework.org/schema/p" 5 xmlns:jaxws="http://cxf.apache.org/jaxws" 6 xmlns:cxf="http://cxf.apache.org/core" 7 xsi:schemaLocation="http://www.springframework.org/schema/beans 8 http://www.springframework.org/schema/beans/spring-beans-2.5.xsd 9 http://cxf.apache.org/jaxws 10 http://cxf.apache.org/schemas/jaxws.xsd"> 11 12 <import resource="classpath*:META-INF/cxf/cxf.xml" /> 13 <import resource="classpath*:META-INF/cxf/cxf-extension-soap.xml" /> 14 <import resource="classpath*:META-INF/cxf/cxf-servlet.xml" /> 15 16 <!--class属性值要跟项目中实现类的包路径完全一致--> 17 <bean id="helloImpl" class="com.service.impl.HelloWorldImpl"/> 18 <jaxws:endpoint id="helloWorld" implementor="#helloImpl" address="/hello" /> 19 </beans>
四、web.xml配置
1 <?xml version="1.0" encoding="UTF-8"?> 2 <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 3 xmlns="http://java.sun.com/xml/ns/javaee" 4 xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" 5 id="WebApp_ID" version="2.5"> 6 7 <context-param> 8 <param-name>contextConfigLocation</param-name> 9 <param-value>classpath:springContext.xml</param-value> 10 </context-param> 11 <listener> 12 <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> 13 </listener> 14 15 <servlet> 16 <servlet-name>cxf</servlet-name> 17 <servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class> 18 <load-on-startup>1</load-on-startup> 19 </servlet> 20 <servlet-mapping> 21 <servlet-name>cxf</servlet-name> 22 <url-pattern>/services/*</url-pattern> 23 </servlet-mapping> 24 <welcome-file-list> 25 <welcome-file>index.html</welcome-file> 26 </welcome-file-list> 27 </web-app>
五、访问webservice地址:http://IP:端口/项目名/web中的servlet映射url模型/Spring文件中的address?wsdl