cxf spring,我的第一个DEMO

把cxf所有的包引进来就可以了。不需要另外引用spring的jar包。

用myeclipse建立webproject.这里贴SERVER端的实现代码

首先定义SEI:

package demo.sayhi.server;

import javax.jws.WebService;
import javax.jws.WebMethod;
import javax.jws.WebParam;

@WebService
public interface ISayHi {
	@WebMethod
	String HI(@WebParam(name="username") String text);
}

实现:

package demo.sayhi.server;

import javax.jws.WebService;
import javax.jws.WebMethod;

@WebService
public class SayHiImpl implements ISayHi{
	@WebMethod
	public String HI(String name)	
	{
		return "HI,"+name;
	}

WEB-INF/web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" 
	xmlns="http://java.sun.com/xml/ns/j2ee" 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
	http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>/WEB-INF/classes/applicationContext.xml</param-value>
    </context-param>
  <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
  <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>
        <url-pattern>/services/*</url-pattern>
    </servlet-mapping>
</web-app>

src/applicationContext.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:jaxws="http://cxf.apache.org/jaxws"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd">
<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="hi" class="demo.sayhi.server.SayHiImpl"></bean>
	 
	<jaxws:endpoint  id="sayhi"  implementor="#hi" address="/hi" >
	 <jaxws:inInterceptors>  
         <bean class="org.apache.cxf.interceptor.LoggingInInterceptor"/>  
    </jaxws:inInterceptors>  
    <jaxws:outInterceptors>  
          <bean class="org.apache.cxf.interceptor.LoggingOutInterceptor"/>  
    </jaxws:outInterceptors>      
    <jaxws:inFaultInterceptors>  
         <bean class="org.apache.cxf.interceptor.LoggingInInterceptor"/>  
    </jaxws:inFaultInterceptors>  
    <jaxws:outFaultInterceptors>  
          <bean class="org.apache.cxf.interceptor.LoggingOutInterceptor"/>  
    </jaxws:outFaultInterceptors>  
	 </jaxws:endpoint>
</beans>

相关推荐