- 浏览: 148934 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
august_000:
很有道理,我已经亲自测试过了:
public class ...
单例模式之线程安全解析 -
Chris_bing:
一个单例有这么多名堂,最后那个内部类的解决方案很有创意啊,受教 ...
单例模式之线程安全解析
现今的Web应用中经常使用Spring框架来装载JavaBean。如果要想将某些在Spring中装配的JavaBean发布成WebService,使用Axis2的Spring感知功能是非常容易做到的。
在本文的例子中,除了<Tomcat安装目录>\webapps\axis2目录及该目录中的相关库外,还需要Spring框架中的spring.jar文件,将该文件复制到<Tomcat安装目录>\webapps\axis2\WEB-INF\lib目录中。
下面先建立一个JavaBean(该JavaBean最终要被发布成WebService),代码如下:
package service; import entity.Person; public class SpringService { private String name; private String job; public void setName(String name) { this.name = name; } public void setJob(String job) { this.job = job; } public Person getPerson() { Person person = new Person(); person.setName(name); person.setJob(job); return person; } public String getGreeting(String name) { return "hello " + name; } }
其中Person也是一个JavaBean,代码如下: package entity; public class Person { private String name; private String job; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getJob() { return job; } public void setJob(String job) { this.job = job; } }
将上面两个Java源文件编译后,放到<Tomcat安装目录>\webapps\axis2\WEB-INF\classes目录中。
在<Tomcat安装目录>\webapps\axis2\WEB-INF\web.xml文件中加入下面的内容:
<listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <context-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/applicationContext.xml</param-value> </context-param>
在<Tomcat安装目录>\webapps\axis2\WEB-INF目录中建立一个applicationContext.xml文件,该文件是Spring框架用于装配JavaBean的配置文件,内容如下:
<?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:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd"> <bean id="springService" class="service.SpringService"> <property name="name" value="姚明" /> <property name="job" value="职业男篮" /> </bean> </beans>
在applicationContext.xml文件中装配了service.SpringService类,并被始化了name和job属性。在配置完SpringService类后,就可以直接在程序中FileSystemXmlApplicationContext类或其他类似功能的类读取applicationContext.xml文件中的内容,并获得SpringService类的对象实例。但现在我们并不这样做,而是将SpringService类发布成WebService。
在<Tomcat安装目录>\webapps\axis2\WEB-INF\lib目录中有一个axis2-spring-1.4.1.jar文件,该文件用于将被装配JavaBean的发布成WebService。在工程WEB-INF目录下,依次创建目录/WEB-INF/services/myservices(名称随便)/META-INF/,并在META-INF目录中建立一个services.xml文件,内容如下:
<service name="springService"> <description> Spring aware </description> <parameter name="ServiceObjectSupplier"> org.apache.axis2.extensions.spring.receivers.SpringServletContextObjectSupplier </parameter> <parameter name="SpringBeanName">springService</parameter> //SpringBeanName名字是固定的不能改 //springService是spring中注册的实现类的id <messageReceivers> <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out" class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" /> </messageReceivers> </service>
将工程到处war包文件,防止tomcat的webapps目录下,启动Tomcat后,就可以访问该WebService了。获得wsdl内容的URL如下:
http://localhost:8080/axis2/services/springService?wsdl
在将Spring中的装配JavaBean发布成WebService需要注意以下几点:
1. 由JavaBean编译生成的.class文件需要放在WEB-INF\classes目录中,或打成.jar包后放在WEB-INF\lib目录中,而/WEB-INF/services/myservices(名称随便)/META-INF/目录只需要包含一个services.xml文件即可。
2. services.xml的配置方法并不需要使用ServiceClass参数指定要发布成WebService的Java类,而是要指定在applicationContext.xml文件中的装配JavaBean的名称(SpringBeanName参数)。
3. 在services.xml文件中需要通过ServiceObjectSupplier参数指定SpringServletContextObjectSupplier类来获得Spring的ApplicationContext对象。
文章来源:http://androidguy.blog.51cto.com/974126/215189
发表评论
-
(转)Spring声明式事务配置详解
2013-11-11 16:45 1836Spring声明式事务功能应该是大家应用Spring中使用的最 ... -
(转)Java几款性能分析工具的对比
2013-11-01 14:26 1048来源:http://www.javaweb.cc/langua ... -
HashMap的遍历
2013-11-01 14:15 9121、新建一个HashMap Map<Integer , ... -
java将汉子转换成汉语拼音
2013-11-01 13:51 937import net.sourceforge.pinyin4j ... -
Spring加载properties文件的两种方式
2013-10-31 10:05 0在spring中可以通过下面的方式将配置文件中的项注入到配置中 ... -
动态加载spring .xml中的bean对象
2013-10-30 15:27 0在java中如何取得spring.xml中加载的bean对象? ... -
(转)Spring mvc+hibernate+freemarker(实战)
2013-10-28 19:40 1014http://zz563143188.iteye.com/bl ... -
(转)Java之美[从菜鸟到高手演变]系列之博文阅读导航
2013-10-28 17:00 1746Java之美[从菜鸟到高手演变]系列之博文阅读导航 http: ... -
(转)openssl 制作证书和签名java方法
2013-10-28 15:03 0Win32OpenSSL_Light-0_9_8k.exe ... -
(转)面向接口编程详解
2013-10-25 12:34 5老文章,自己学习。 面向接口编程详解(一) http://w ... -
(转)Java架构师之路:JAVA程序员必看的15本书
2013-10-08 18:24 0作为Java程序员来说,最 ... -
Java获取CPU ID和磁盘ID
2013-09-25 20:18 0原文链接:http://www.rgagnon.com/jav ... -
Java编程之备用程序段
2013-09-25 14:57 0记录一些程序段,供日常备用,持续增加中…… 1. Java中 ... -
(转)Java编程之AOP
2013-09-25 14:45 0链接: http://hw19886200.iteye.com ... -
Java编程之性能优化
2013-09-25 14:28 769最近的机器内存又爆满 ... -
使用axis2传输附件
2013-09-25 10:40 1080服务端Service文件: import java.io. ... -
Java应用程序项目打包成exe文件
2013-09-23 09:16 01.程序打包 首先将程序打成Jar包,打包命 ... -
(转)Java事务处理类型及差异总结
2013-09-18 13:54 1623一、什么是Java事务 ... -
JAVA文件_加密
2013-09-13 16:09 0import java.awt.*; import java ... -
(转)Java 实现Rsa 加密
2013-09-13 16:08 0import java.io.*; public class ...
相关推荐
**Axis2与Spring整合** 整合Axis2和Spring的主要目的是利用Spring的依赖注入(DI)和面向切面编程(AOP)特性,使得Web服务的创建和管理更加方便。以下是整合步骤: 1. **添加依赖**:在Maven项目中,需要在pom....
axis2与spring的集成,在application中配置要发布的Java类,然后配置aar文件,在aar打包文件中的services.xml要嵌入 <parameter name="ServiceObjectSupplier">org.apache.axis2.extensions.spring.receivers....
在本文中,我们将深入探讨如何将Axis2与Spring框架集成,以实现更强大的服务管理、依赖注入以及更好的企业级应用支持。以下是关于"java webservice之axis2与spring集成(二)"的详细知识点讲解: 1. **Spring框架**...
**Axis2与Spring整合的核心知识点** 1. **依赖注入(Dependency Injection, DI)**:Spring的核心特性之一,通过DI,可以将服务实例化和管理的工作交给Spring,使Axis2服务更易于测试和维护。 2. **服务组件...
将Axis2与Spring整合的主要目的是利用Spring的DI和AOP特性来管理和控制Web服务的生命周期。这可以通过在Axis2中使用SpringBeanServiceHost和SpringBeanAxisServlet实现。SpringBeanServiceHost允许将Spring的bean...
axis2-spring-1.5.4.jar是Axis2与Spring整合的关键组件,它提供了必要的类和接口,使得Spring容器能够管理Axis2服务的生命周期。这个jar包包含了 Axis2 和 Spring 之间的桥接器,使得 Axis2 的服务可以在 Spring ...
将Axis2与Spring整合可以让我们在Spring的环境中便捷地创建、管理和部署Web服务,同时利用Spring的众多优点。本文将深入探讨如何将这两者融合,并介绍相关的技术细节。 首先,理解Axis2 Web服务的核心概念。Axis2是...
标题中的“axis2+spring webservice”指的是使用Apache Axis2框架与Spring框架集成来开发Web服务。Apache Axis2是Java环境中广泛使用的Web服务引擎,它提供了高性能、灵活且可扩展的架构。Spring框架则是一个全面的...
在本文中,我们将深入探讨如何将Apache Axis2与Spring Boot集成,以构建一个高效、可扩展的Web服务应用。Apache Axis2是Java平台上的一个Web服务框架,它提供了高性能、灵活的服务开发和部署机制。而Spring Boot是...
3. **Axis2与Spring的集成模块**:使用Spring-WS模块或者Spring-AXIS2模块,这些模块提供了集成工具,帮助将Spring的bean暴露为Web服务。 4. **部署服务**:在Axis2的配置文件(如services.xml)中引用Spring上下文...
首先,让我们理解Spring与Axis2集成的基础知识。Spring框架提供了一个服务导向架构(SOA)的支持,允许开发者轻松地创建和消费Web服务。而Axis2是Apache软件基金会的一个项目,专门用于处理Web服务的生成、部署和...
本文将详细介绍如何通过集成Axis2与Spring框架来发布WebServices服务,并提供具体的配置示例。 #### 二、Axis2与Spring集成原理 在集成Axis2与Spring的过程中,主要涉及以下几个方面: 1. **服务定义**:通过Axis2...
3. **Axis2与Spring集成**:说明如何配置Spring应用上下文,将Spring Bean作为Axis2服务,以及如何利用Spring的IoC和AOP特性优化服务行为。 4. **创建服务**:详细步骤指导如何创建一个基于Axis2的服务,包括编写...
在提供的链接(http://blog.csdn.net/linlinv3/article/details/9017767)中,你可以找到更具体的关于如何在实际项目中集成和使用Axis2与Spring3.2.0的详细步骤和示例。对于Java Web开发者来说,理解并掌握这种整合...
将Axis2与Spring2.5整合的主要好处在于,可以利用Spring的IoC(Inversion of Control,控制反转)和AOP特性来管理和控制Web服务。这使得Web服务的配置和管理更加简便,同时也便于测试和维护。以下是一些整合的关键...
将Axis2与Spring集成可以带来诸多优势,如更好的服务治理、方便的依赖注入以及更简单的测试。 首先,我们需要理解如何配置Spring以支持Axis2。这通常涉及在Spring配置文件中定义一个`AxisService`bean,该bean包含...
本文档旨在介绍如何将Apache Axis2与Spring框架进行集成,以实现灵活的服务部署和管理。在实际应用中,开发者可能需要利用Spring来管理业务对象(例如POJOs),并希望通过Axis2提供这些服务。这种集成方式不仅能够...
Spring 集成 AXIS2 的 Web service 配置方法 Spring 是一个流行的 Java 应用程序框架,它提供了一个灵活的方式来构建企业级应用程序。AXIS2 是一个流行的 Web Service 引擎,它提供了一个强大的方式来构建 Web ...
”这意味着项目的核心功能是展示如何将Apache Axis2与Spring 3框架整合,以便利用Spring的依赖注入和管理能力来构建和控制Web服务。此外,资料是一个MyEclipse的Web工程,意味着它是用MyEclipse IDE创建的,开发者...
Spring还支持与其他框架的集成,如Axis2,使得Web服务的调用更加方便。 3. iBATIS:iBATIS(现在已经演变为MyBatis)是一个持久层框架,它简化了Java应用与数据库之间的交互。开发者可以通过XML或注解定义SQL查询,...