Webservices 之CXF 小例子
第一步:导入相关jar包
第二步:在接口中进行配置,类中可以不进行配置
package mycompany.webservice.server; import java.util.List; import javax.jws.WebParam; import javax.jws.WebService; @WebService public interface Greeting { public String greeting(String userName); }
package mycompany.webservice.server; import java.util.Calendar; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import javax.jws.WebService; @WebService(endpointInterface = "mycompany.webservice.server.Greeting") public class GreetingServiceImpl implements Greeting { public String greeting(String userName) { return "Hello " + userName + ", currentTime is " + Calendar.getInstance().getTime(); } }
第三步:新建spring。xml进行配置
这三个资源文件必须导入,否则会报错 <import resource="classpath:META-INF/cxf/cxf.xml" /> <import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" /> <import resource="classpath:META-INF/cxf/cxf-servlet.xml" /> <bean id="greetingServiceImpl" class="mycompany.webservice.server.GreetingServiceImpl"/> <jaxws:endpoint id="greetingService" implementor="#greetingServiceImpl" address="/Greeting" /> 注:address可以写绝对路径也可以写相对路径
第四步:web.xml中位置
spring进行配置 <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> CXF进行配置 <servlet> <servlet-name>CXFServlet</servlet-name> <servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>CXFServlet</servlet-name> <!--==这个设置很重要,那么我们的webservice的地址就是http://localhost:8080/yourProgramName/webservice/Greeting===--> <url-pattern>/webservice/*</url-pattern> </servlet-mapping>
第五步:生成客户端代码
在E:\apache-cxf-2.7.7\bin新建bat文件,内容如下
wsdl2Java -p com.test .svn?wsdl
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。