使用Felix和Struts2开发Web应用 - 编程入门网
OSGi Plugin 会监听 bundle 的变化,如果发生变化的 bundle 是一个 Struts bundle, 则会去加载 Struts 的配置。
图 1. 示例结构原理图 使用Felix和Struts2开发Web应用(2)时间:2011-09-04 IBM 韦景琪 邵兵 周英建立 OSGi 的 Web 开发环境 本文示例使用的 Web 开发环境包括如下组件: Eclipse 3.5 for Java EE Developers Sun JDK 1.6.0 Tomcat 6.0.24 Struts 2.1.8.1 (Essential Dependencies Only) spring-osgi-1.1.2-with-dependencies (Only Need when adding Spring Support) Web Application 工程的创建方式与通常的 Web 工程类似,但是需要加入 Felix 的支持和 Struts2 OSGi Plugin. Felix 是 OSGi 的平台,用于管理整个 系统中的所有的 bundle,而 Struts2 OSGi Plugin 是 Struts2 和 OSGi 连接的 桥梁,通过 Struts2 OSGi Plugin 将 Felix 融入到 Struts2 框架中。另外,还 需要加入 Struts2 OSGi Admin bundle,这个 bundle 向管理人员提供基于 Web 的管理 OSGi 平台中的 bundle 的操作入口。同时在 web.xml 中需要加入 Struts OSGi ******,这样 OSGi 平台中的 bundle 发生变化时,会触发该监听 器去做一些与 Struts 相关测操作,例如增加 Action 或使 Action 失效。 web.xml 中过滤器和监听器部分的配置内容如清单 1: 清单 1. web.xml 过滤器和监听器配置
Web Application 工程的目录结构如图 2 所示: 图 2. Web Application 工程的目录结构 使用Felix和Struts2开发Web应用(3)时间:2011-09-04 IBM 韦景琪 邵兵 周英将 Web Application 部署到 Tomcat 上并启动 Tomcat,然后在浏览器中输入 http://localhost:8080/webapp/osgi/admin/bundles.action, (webapp 是项目 部署到 Tomcat 中的名字 ) 如果看到了类似于 图 5的 bundles 列表,说明 OSGi 环境配置成功。 开发获取时间消息接口服务 bundle 消息接口服务 bundle 是提供消息服务的接口,该接口将被 Web bundle 所使 用,其他 bundle 可以不同的形式实现该接口。在这里利用 eclipse 新建插件工 程的功能来创建 OSGi bundle。需要特别设置 an OSGI framework 为 standard 方式,这种方式允许部署项目到标准的 OSGI 容器中。新建 OSGi 工程的向导如 图 3 所示。 图 3. 新建 OSGi 工程向导图 在该项目中开发一个用于获取时间信息的接口,通过该接口可以获取字符串形 式的时间信息。 清单 2. 获取时间服务接口代码
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |