基于OSGi和Spring开发Web应用

作为一个新的事实上的工业标准,OSGi 已经受到了广泛的关注, 其面向服 务(接口)的基本思想和动态模块部署的能力, 是企业级应用长期以来一直追 求的目标。Spring 是一个著名的 轻量级 J2EE 开发框架,其特点是面向接口编 程和非侵入式的依赖注入。将 OSGi 和 Spring 结合能充分发挥二者各自的特长 ,更好地满足企业级应用开发的需求。Spring 开发组织在 2008 年发布了将 OSGi 和 Spring 结合的第一个版本:Spring-DM。本文通过一个简单实例,介绍 如何利用 Spring-DM 开发基于 OSGi 和 Spring 架构的 Web 应用,同时探讨其 中用到的关键技术及其基本思想。

开发一个简单的OSGi Web应用实例

一个简单的 Web 应用

我们写一个简单的 Web 应用 compute.html :计算两个数字的和或乘积。如 下图所示:

图 1. 一个简单例子

为了体现 OSGi bundle 的动态部署能力,我们写两个 service bundle,其 中一个计算两个数字的和(称为 add bundle),另外一个计算两个数字的积( 称为 multiply bundle)。 当我们点击“Compute”按钮的时候,如果此时 add bundle 被部署,则页面将返回两个数字的和,否则如果此时 multiply bundle 被部署,则页面将返回两个数字的积。开发环境准备

1.下载 Eclipse 3.4

2.获取所有 OSGi, Equinox 和 Spring 的插件, 如下图所示:

1.打开 Eclipse, 设置 target platform 为上述插件集合

时间: 2024-09-10 12:24:02

基于OSGi和Spring开发Web应用的相关文章

基于google map api开发web和google earth的KML地标插件

KML文件很好做,在你的google earth(以下简称GE)中选择你自己的或是别人的marker或layer,就可以保存成静态的地标或图层信息(kmz或kml格式),发送给你的朋友,用他的GE打开你的文件就可以看到你所标注的marker信息. 这些相关的文章让我迷失了好一段时间,不过,我想要的是动态的地标.类似于EEMAP那样的GE插件.下面我将讲述它的工作原理和制做方法. 先说几个概念,google map api是基于javascript+xml等技术实现的,另一款产品google ea

CXF+Spring 开发Web Service如何在一个wsdl中配置多个portType

问题描述 如题查了不少网页,都是简单的教程,一般也都是写一个接口,直接发布了<beanid="SayHello"class="com.yxj.CxfWBImpl"/><jaxws:endpointid="sayHello"implementor="#SayHello"address="/abc"/>如果想在一个wsdl中发布多个服务接口,改如何配置呢?下面的abc和abc1如果换成一

OSGI开发web应用

开发web的两种方式 基于OSGI开发B/S应用有两种方式: 1)在OSGI框架中嵌入Http服务器 2)在Servlet容器中嵌入OSGI框架 Http服务器嵌入到OSGI框架环境配置 配置运行环境,选择Run->Run Configuration,new一个环境 保留以下几个Bundle,包括javax.servlet.org.apache.commons.logging.org.eclipse.equinox.http.jetty.org.eclipse.equinox.http.serv

基于OSGI的WEB项目如何加载制定文件夹jsp文件运行

问题描述 现在手上开发的一个项目是基于OSGI的web项目,运行期会把模块打成jar包放在一般web工程下面去运行,运行环境暂订tomcat. 现在出现的问题如下:项目中有一个模块会生成一些文件到指定文件夹中(运行期为文件服务器),生成的文件包括js,jsp,css文件,其中js会到模块中去做请求后台数据,并且生成的文件会用到模块中的js或css样式.请问如何才能将生成的文件加载到tomcat中运行. 解决方案 可以参考一下这个:http://www.enet.com.cn/article/20

开发基于IBM Lotus Domino的Web 2.0应用的最佳实践

简介:本文介绍了开发基于 IBM Lotus Domino 的 Web 2.0 企业应用的最佳实践.这些最佳实践覆盖 系统开发的整个生命周期,包括系统设计阶段.实现阶段以及系统装配和部署阶段.根据本文所介绍的这 些方法,可以高效的开发高质量的基于 Domino 的 Web 2.0 企业应用. 背景简介和挑战 Domino 是 IBM Lotus 下面的一个旗舰产品,由于其提供了多层级的安全解决方案,内置集成的协同 服务应用和目录服务并提供灵活的数据库复制机制,因成为很多企业应用的重要平台. 随着

利用Eclipse开发基于OSGi的Bundle应用

开放服务网关协议 (Open Services Gateway Initiative),简称 OSGi,为网络服务定义了一个标准的.面向服务的计算环境,为用户提供了开放的.面向服务组件的.易于部署的编程模型,这个编程模型允许用户将定义好的接口规范绑定到 OSGi 运行环境中的特定Service,在构件 SOA 面向服务为中心的企业应用的过程中,OSGi 技术正发挥越来越重要的作用.在本文中,将介绍 OSGi 的概念和体系结构,并且利用 Eclipse 3.2 开发一个基于 OSGi 规范的服务应

在Rational Application Developer平台上基于JAX-WS开发Web services

引言 Web Services 是一种面向服务的技术,通过标准的 Web 协议提供服务,目的是保证不同平台 的应用服务可以互操作.依据 web services 规范实施的应用之间,无论它们所使用的语言. 平台或内部协 议是什么,都可以相互交换数据,这就是 web services 的好处.本文选择 IBM WebSphere Application Server 作为 web services 的运行环境,并选择 IBM Rational Application Developer(以下简称

基于Struts 2开发Web应用

引言 作为 Java Web 应用的典型框架,Struts 一直受到 Java 开发者的青睐,Struts 2 作为 Struts 发展的又一个里程碑,以 WebWork 为基础,提供了更易于使用,功能更强的 MVC 框架.同时它可以帮助开发人员更快速.高效.方便地实现一个 Java Web 应用系统. 对于开发人员来讲,不同的项目可能需要不同的开发和运行 Struts 2 的平台,Struts 2 需要以下环境:Servlet API 2.4, JSP API 2.0, Java 5.IBM

关于使用Spring和hibernate开发web程序的配置说明和简单实例的详细说明

关于使用Spring和hibernate开发web程序的配置说明和简单实例的详细说明 作者:yanekemail:yanek@126.com 一.实现目标: 通过使用spring和hibernate,实现用户的添加功能.把用户信息加入到数据库中使用Spring 的hibernate模板实现DAO操作. 最终效果: 浏览器中输入 http://localhost:8083/hibernateTestWeb/user.do 数据库就增加一条记录. 二.分层结构 系统采用如下分层结构 1.WEB层:用