首先到官网上下载CXF整套包导入项目中,另外CXF2.2以下版本需要jdk1.5而CXF2.3以上需要jdk1.6
axis2发布服务:
编写要发布服务的service
public class HelloService {
public String getInfo(String name){
return "姓名:"+name;
}
}
web.xml配置servlet
<servlet>
<servlet-name>AxisServlet</servlet-name>
<display-name>Apache-Axis Servlet</display-name>
<servlet-class>
org.apache.axis.transport.http.AxisServlet
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
这里的<url-pattern>/services/*</url-pattern>不能换成其它的,否则会找不到相应的WebService。
配置web.xml中bean文件
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/spring-service-bean.xml
</param -value>
</param -name>
</context-param>
spring-service-bean.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC
"-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id="HelloService" class="com.*.*.HelloService">
</bean>
</beans>
发布文件services.xml,放在services/META-INF里面
<service name="HelloService">
<parameter name="ServiceObjectSupplier" locked="false">org.apache.axis2.extensions.spring.receivers.SpringServletContextObjectSupplier</parameter>
<parameter name="SpringBeanName" locked="false">HelloService</parameter>
<operation name="getInfo">
<messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
</operation>
<!--不需要发布的-->
<excludeOperations>
<operation>方法名称</operation>
</excludeOperations>
<!--如果引用module要在此注明,本文没有引用-->
<module ref="name" />
</service>
发布项目可以运行了,客户端调用就不在赘述了,上篇博客有。
CXF集成spring发布webservice
发布service的类如上
web.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" 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">
<display-name>cxfwebservice</display-name>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext.xml</param-value>
</context-param>
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
<servlet>
<display-name>CXFServlet</display-name>
<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>/webservices/*</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
</web-app>
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-2.0.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="hello" class="com.*.*service" />
<jaxws:endpoint id="helloWorld" implementor="#hello"
address="/HelloWorld">
</jaxws:endpoint>
</beans>
运行项目就发布成功了,客户端调用请参照上篇博客。
分享到:
相关推荐
3. **消息处理器和服务部署**:了解如何配置和部署服务,以及如何处理入站和出站消息,是Axis2学习的重要部分。 4. **编码与解码机制**:理解数据如何从XML到Java对象(反之亦然)转换,以及Axiom(Axis Object ...
Apache Axis2和CXF都是Java世界中非常知名的Web服务框架,它们主要用于构建和部署Web服务。两者各有特色,适用于不同的应用场景。以下是对这两个框架特点、区别及适用场合的详细对比,以及它们在效率上的表现。 1. ...
本文主要对比了三种流行的Java Web服务框架:XFire、Axis2和CXF,以帮助开发者做出最佳选择。 首先,CXF是一个由Apache基金会维护的重量级SOA(面向服务架构)框架,它支持ESB(企业服务总线),并实现了Web服务、...
2. 创建Web服务:使用CXF的wsdl2java工具或者Axis的wsdl2java工具,从WSDL文件生成Java服务接口和服务实现。 3. 配置服务发布:在Spring配置文件中,通过CXF或Axis的配置元素,设置服务的地址和绑定信息。 4. 客户端...
CXF支持SOAP、RESTful、XML和JSON等多种通信协议,并且能够与Spring框架深度集成。 **Axis**,全称Apache Axis,是一个用于创建Web服务的工具集,它基于SOAP协议,允许开发者创建、部署和使用Web服务。Axis1.x版本...
Spring Boot以其简化Java应用程序开发的特性而受到广泛欢迎,而CXF则是一个流行的开源框架,用于构建和消费Web服务。当我们需要在Spring Boot应用中实现Web服务时,CXF提供了强大的支持。 首先,我们需要在项目中...
4. **Spring集成**:CXF与Spring框架深度集成,使得服务的配置和管理更加简便,可以利用Spring的依赖注入和AOP(面向切面编程)能力。 5. **调试与测试工具**:CXF提供了一套强大的调试和测试工具,如CXF的WS-...
- **Axis2**:支持多种序列化机制,如XMLBeans、JiBX、JaxMe和JAXB等,但在与Spring框架的集成上不如CXF方便。 - **CXF**:与Spring框架有着很好的集成,能够很好地利用Spring的各种特性,如依赖注入、事务管理等...
标题中的"axis2-1.8.0apache-cxf-3.4.4.rar"是一个压缩包文件,其中包含了两个重要的开源项目:Apache Axis2版本1.8.0和Apache CXF版本3.4.4。这两个项目都是用于构建和部署Web服务的重要工具,主要应用于Java开发...
2. **XFire (CXF)**:XFire(现为Apache CXF)是一个更现代的框架,它集成了Spring,使得服务端的开发更加简单,因为大部分逻辑都被封装到了底层API中。XFire支持直接配置生成WSDL,且能与Spring无缝集成,简化了...
总结起来,使用Axis2发布Web服务和生成客户端代码调用服务是一个标准化的过程,涉及到服务的编写、打包、部署以及客户端的代码生成和调用。了解并熟练掌握这一过程,对进行Java Web服务开发至关重要。在实际开发中,...
整合Spring和Axis2,主要是为了利用Spring的依赖注入和管理能力,以及Axis2的Web服务处理能力。整合过程主要包括以下步骤: - 配置Spring容器:首先在Spring配置文件中定义Web服务的bean,这些bean通常代表了服务...
CXF相比于Axis2,提供了更现代的特性和更好的性能,支持更多的协议和标准,如WS-I Basic Profile,WS-Security等,同时其与Spring的集成使得服务管理和依赖注入更加方便。 在选择WebService框架时,应考虑项目需求...
3. **创建Web服务**:在CXF中,可以通过注解或XML配置文件定义服务接口和服务实现。例如,可以使用`@WebService`注解标记一个Java类为Web服务接口,并使用`@Path`注解来定义RESTful服务的URL路径。 4. **CXF服务...
下面是关于Axis2和CXF的详细比较,以及如何使用它们来创建和发布Web服务。 1. 对比 Axis2 和 CXF Axis2是Apache软件基金会开发的一个Web服务引擎,其主要目标是提供一个高效且可扩展的平台,用于构建和部署Web服务...
需要注意的是,虽然这是一种可行的解决方案,但因为Axis1.4的年代久远,可能遇到一些兼容性和性能问题,所以在条件允许的情况下,推荐使用更新的Web服务框架,如Apache CXF或Spring Web Services的最新版本。
将Spring3 MVC和Hibernate整合的业务逻辑封装为服务,通过Axis2发布,可以使得服务接口对调用者透明,易于集成到其他系统中。 **Quartz** 是一个开源的作业调度框架,用于在Java应用程序中安排和执行任务。它支持...
Axis提供了一种简单的方式来发布和调用Web服务,通过WSDL(Web Services Description Language)来描述服务接口。它支持JAX-RPC(Java API for XML-based RPC)规范,使得开发者能够方便地将现有Java类转换为Web服务...
【描述】:虽然有多种Web服务技术,如XFire、CXF和JAX-WS,但Axis2以其易用性和与Spring的无缝集成而备受青睐。通过 Axis2,开发者可以快速地创建和部署Web服务,同时利用Spring的强大功能进行依赖注入和事务管理。 ...
在IT行业中,Web服务框架是开发分布式应用程序的关键工具,它们提供了构建、部署和服务接口的能力。XFire、CXF和Axis2都是Java世界中知名的Web服务框架,每一种都有其独特的特性和优势。让我们深入探讨一下这三种...