`

使用 CXF + Spring (发布/调用) WebService配置文件

阅读更多
<?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:p="http://www.springframework.org/schema/p"  
    xmlns:jaxws="http://cxf.apache.org/jaxws" xmlns:jaxrs="http://cxf.apache.org/jaxrs"  
    xsi:schemaLocation="  
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.1.xsd  
http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd   
 http://cxf.apache.org/jaxrs http://cxf.apache.org/schemas/jaxrs.xsd">  
    <!-- 引cxf的一些核心配置 -->  
    <import resource="classpath:META-INF/cxf/cxf.xml" />  
    <import resource="classpath:META-INF/cxf/cxf-servlet.xml" />  
    <!-- 配置web service 实现类 -->  
    <bean id="uu" class="com.cxf.publish.ws.UseriImpl" />  
    <bean id="personService" class="com.cxf.publish.ws.PersonService" />  
    <!-- 发布web service 两种配置方式 -->  
    <!-- 1 -->  
    <jaxws:server serviceName="userService" id="rest_userInfoService" address="/ws_user">  
        <jaxws:serviceBean>  
            <ref bean="personService" />  
        </jaxws:serviceBean>  
        <jaxws:inInterceptors>  
            <bean class="org.apache.cxf.interceptor.LoggingOutInterceptor" />  
            <bean class="org.apache.cxf.interceptor.LoggingInInterceptor" />  
        </jaxws:inInterceptors>  
    </jaxws:server>  
    <!-- 2 -->  
    <jaxws:endpoint implementorClass="com.cxf.publish.ws.PersonService" address="/service">  
        <jaxws:inInterceptors>  
            <bean class="org.apache.cxf.interceptor.LoggingOutInterceptor" />  
            <bean class="org.apache.cxf.interceptor.LoggingInInterceptor" />  
        </jaxws:inInterceptors>  
    </jaxws:endpoint>  
</beans> 

 web.xml 配置

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0">
<!--   配置CXF SERVLET -->
  <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>/service/*</url-pattern>
  </servlet-mapping>
<!--   配置spring ContextLoaderListener -->
  <listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>
  <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:applicationContext.xml</param-value>
  </context-param>
</web-app>

 Spring 集成 WebService 客户调用端配置

<?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:p="http://www.springframework.org/schema/p"
xmlns:jaxws="http://cxf.apache.org/jaxws"
xmlns:jaxrs-client="http://cxf.apache.org/jaxrs-client"
xsi:schemaLocation="http://cxf.apache.org/jaxrs-client http://cxf.apache.org/schemas/jaxrs-client.xsd
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd">
	<!-- 配置web service 客户端 (接口) -->
	<jaxws:client id="user_service"
		serviceClass="com.cxf.publish.ws.UserServiceable" 
		address="http://localhost:8080/ws/service/ws_user">
		<jaxws:inInterceptors>
			<bean class="org.apache.cxf.interceptor.LoggingOutInterceptor"/>
		</jaxws:inInterceptors>
	</jaxws:client>
	<!-- 配置web service 客户端 (接口)-->
	<jaxws:client id="person_service"
		serviceClass="com.cxf.publish.ws.PersonServiceable" 
		address="http://localhost:8080/ws/service/ws_p">
		<!-- 配置进出日志拦截器 -->
		<jaxws:inInterceptors>
			<bean class="org.apache.cxf.interceptor.LoggingOutInterceptor"/>
			<bean class="org.apache.cxf.interceptor.LoggingInInterceptor"/>
		</jaxws:inInterceptors>
	</jaxws:client>
</beans>

 

分享到:
评论

相关推荐

    CXF+Spring+Tomcat发布WebService

    【标题】"CXF+Spring+Tomcat发布WebService"涉及的是使用Apache CXF框架与Spring框架结合,在Tomcat服务器上部署和消费Web服务的过程。这是一个常见的企业级应用开发场景,特别是对于实现基于SOAP协议的Web服务。...

    cxf+spring实现webservice

    4. **服务注册与发布**:使用Spring配置的`JAXWSServerFactoryBean`或`JAXRSServerFactoryBean`,将服务接口和实现绑定到特定的URL上,发布Web服务。 5. **客户端调用**:在需要消费Web服务的项目中,可以使用...

    CXF+Spring+Hibernate实现WebService

    3. **配置CXF**:在Spring配置文件中,配置CXF的Servlet,指定服务接口和实现类。 4. **发布服务**:通过CXF的Servlet将服务部署到Web服务器上。 5. **生成客户端代理**:使用CXF的WSDL2Java工具,根据服务的WSDL...

    Apache CXF2+Spring2.5轻松实现WebService

    完成这些配置后,只需启动Spring容器,Apache CXF就会自动发布Web服务,并处理来自客户端的请求。客户端可以通过WSDL文档来发现和调用服务。 在实际项目中,可能还需要处理安全、事务、异常处理等问题。Apache CXF...

    cxf+spring webservice demo client

    Apache CXF是一个开源的Java框架,它为构建和消费Web服务提供了强大的支持,而Spring框架则是一个广泛使用的应用开发框架,它简化了Java应用的配置和管理。 【描述】:“这个是cxf 集成spring 的webservice的例子 ...

    cxf+spring发布webservice和restservice

    本项目“cxf+spring发布webservice和restservice”专注于利用Apache CXF框架与Spring框架结合,实现这两种服务的发布。Apache CXF是一个开源的、功能丰富的服务栈,它使得开发者能够轻松地构建和部署SOAP和RESTful ...

    使用CXF和camel-cxf调用webservice

    1. **定义路由**:使用Camel的DSL(Domain Specific Language)或者XML配置文件,定义从何处获取输入,如何处理输入,然后如何调用Web服务并发送输出。 2. **数据转换**:Camel提供了丰富的组件和数据格式支持,可以...

    Spring+CXF+tomcat开发webservice

    2. 创建Spring配置文件,定义服务bean和CXF的配置。 3. 实现Web服务接口,并使用CXF的注解进行标记,如`@WebService`和`@SOAPBinding`。 4. 将服务部署到Tomcat服务器上,CXF会根据配置自动生成WSDL文件,这是服务的...

    cxf+spring+tomat开发webservice所需jar包

    它不包含在提供的jar文件列表中,但通常与CXF和Spring一起使用,因为它们可以部署在Tomcat上作为Web应用运行。Tomcat负责接收HTTP请求,调用应用服务器中的Java代码(如CXF服务),并将响应返回给客户端。 4. **...

    cxf+spring的webservice实例

    - **配置Spring**:创建Spring配置文件,定义CXF的bean,如`JaxWsServerFactoryBean`,并指定服务接口和服务实现。 - **发布服务**:通过Spring加载配置,CXF将自动发布Web服务,通常监听一个特定的HTTP端口。 - ...

    cxf+spring使用经验

    5. **配置 Spring**:在 Spring 配置文件中配置 CXF 组件,如服务发布、端点地址等。这通常涉及设置 `jaxws:endpoint` 配置元素。 ```xml id="helloWorldEndpoint" implementor="#helloWorldImpl" address="/...

    CXF2.1.3+spring3.0+struts2.3.4

    【标签】"CXF+spring WebService CXF"强调了这些组件的集成,特别是CXF作为Web服务的主要提供者,以及与Spring的紧密配合。CXF不仅可以用作服务提供者,还可以作为客户端来消费其他服务,这在Spring的管理下变得更加...

    cxf+spring webservice server demo

    3. **集成CXF和Spring**:在Spring中集成CXF,通常会使用Spring的`&lt;jaxws:service&gt;`或`&lt;jaxrs:server&gt;`标签来声明和配置Web服务。这样,服务实例的创建和管理都交给了Spring容器,同时还能利用Spring的其他功能,如...

    简单cxf+spring构建webservice服务

    4. **配置Spring**:在Spring的配置文件中声明并配置服务接口和其实现,使用`@WebService`注解标识服务接口,并使用`jaxws:endpoint`元素来暴露服务。 5. **部署服务**:通过CXF提供的Servlet或Jetty服务器来部署你...

    cxf+Spring实现webservice工程

    1. **配置Spring**:创建Spring配置文件,定义服务接口、其实现类以及CXF的服务器配置。这通常包括定义`&lt;jaxws:endpoint&gt;`元素来指定服务接口和实现类,以及设置服务绑定和地址。 2. **编写服务接口和服务实现**:...

    cxf+spring=webservice CXF 应用开发

    3. **Spring与CXF集成**:通过Spring的`&lt;jaxws:endpoint&gt;`或`&lt;jaxrs:server&gt;`标签,我们可以将CXF服务端点声明式地配置在Spring XML配置文件中,从而实现服务的发布。这种方式避免了手动编写CXF的配置文件,使得配置...

    webservice cxf+spring maven项目

    3. 配置CXF和Spring:在Spring配置文件中,声明CXF的bean,如JAX-WS的ServerFactoryBean,指定服务接口和实现类。 4. 发布服务:使用CXF的端点发布器,将服务暴露到指定的URL上。 【客户端调用】 对于Web服务的消费...

    cxf+spring实现webservice例子

    在这个例子中,由于压缩包里只包含了源代码,没有提供依赖库,因此在导入项目后,你需要自行下载并添加CXF和Spring的相关库到你的项目构建路径中,或者在Maven的pom.xml文件中配置远程仓库以解决依赖。 总的来说,...

    cxf+spring webService实例

    在这个"CXF+Spring WebService实例"中,我们将深入探讨如何利用这两个工具来创建、发布和消费Web服务。 CXF全称为CXF CXF (CXF XFire + XWS), 是一个开源的Java框架,它支持多种Web服务标准,如SOAP、WSDL、WS-...

    webservice+cxf+spring

    【标题】:“WebService+CXF+Spring”是一个关于在Java环境中使用Apache CXF框架与Spring框架集成实现Web服务的专题。Apache CXF是一个开源的Web服务框架,它允许开发人员创建和部署SOAP和RESTful Web服务。Spring...

Global site tag (gtag.js) - Google Analytics