﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-dbstar的技术Blog-随笔分类-OSGi</title><link>http://www.blogjava.net/dbstar/category/44385.html</link><description /><language>zh-cn</language><lastBuildDate>Wed, 07 Jul 2010 09:21:55 GMT</lastBuildDate><pubDate>Wed, 07 Jul 2010 09:21:55 GMT</pubDate><ttl>60</ttl><item><title>Gemini Web第一个里程碑版发布</title><link>http://www.blogjava.net/dbstar/archive/2010/07/07/325458.html</link><dc:creator>dbstar</dc:creator><author>dbstar</author><pubDate>Wed, 07 Jul 2010 07:40:00 GMT</pubDate><guid>http://www.blogjava.net/dbstar/archive/2010/07/07/325458.html</guid><wfw:comment>http://www.blogjava.net/dbstar/comments/325458.html</wfw:comment><comments>http://www.blogjava.net/dbstar/archive/2010/07/07/325458.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/dbstar/comments/commentRss/325458.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/dbstar/services/trackbacks/325458.html</trackback:ping><description><![CDATA[<p style="padding: 2px 1em 0.5em 0px; margin: 0px;">Eclipse&nbsp;<a target="_blank" href="http://www.eclipse.org/gemini/web/">Gemini Web</a>(1.1.0.M01)&nbsp;的第一个
里程碑版现已提供<a target="_blank" href="http://www.eclipse.org/gemini/web/download">下载&nbsp;</a>，它采用了<a target="_blank" href="http://www.eclipse.org/legal/epl-v10.html">Eclipse
Public License</a>和<a target="_blank" href="http://www.apache.org/licenses/LICENSE-2.0.html">Apache License
2.0</a>双授权协议。</p>
<p style="padding: 2px 1em 0.5em 0px; margin: 0px;">Gemini Web
是SpringSource开发使用的OSGi Web容器的参考实现，其代码目前已捐献给Eclipse组织作为Gemini的Web
子项目。Gemini的目标是提供一个Java EE技术的模块化实现。Gemini &nbsp;Web 则会提供servlet和JSP功能。</p>
<p style="padding: 2px 1em 0.5em 0px; margin: 0px;">Gemini Web运行在Equinox
OSGi框架中，其中包含了 Tomcat，并会被整合进Eclipse&nbsp;<a target="_blank" href="http://www.eclipse.org/virgo/">Virgo</a>&nbsp;web server。</p>
<p style="padding: 2px 1em 0.5em 0px; margin: 0px;">关于Gemini Web
更详细内容可参考<a target="_blank" href="http://www.eclipse.org/gemini/web/documentation">文档</a>和<a target="_blank" href="http://wiki.eclipse.org/Gemini/Web">Wiki</a>。</p>
<img src ="http://www.blogjava.net/dbstar/aggbug/325458.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/dbstar/" target="_blank">dbstar</a> 2010-07-07 15:40 <a href="http://www.blogjava.net/dbstar/archive/2010/07/07/325458.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>打造一个基于OSGi的Web Application——使用Tomcat原生API动态管理Listener</title><link>http://www.blogjava.net/dbstar/archive/2010/04/02/317342.html</link><dc:creator>dbstar</dc:creator><author>dbstar</author><pubDate>Fri, 02 Apr 2010 10:47:00 GMT</pubDate><guid>http://www.blogjava.net/dbstar/archive/2010/04/02/317342.html</guid><wfw:comment>http://www.blogjava.net/dbstar/comments/317342.html</wfw:comment><comments>http://www.blogjava.net/dbstar/archive/2010/04/02/317342.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/dbstar/comments/commentRss/317342.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/dbstar/services/trackbacks/317342.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 本文介绍在Tomcat中，如何通过Tomcat原生API实现OSGi容器中动态管理Listener。&nbsp;&nbsp;<a href='http://www.blogjava.net/dbstar/archive/2010/04/02/317342.html'>阅读全文</a><img src ="http://www.blogjava.net/dbstar/aggbug/317342.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/dbstar/" target="_blank">dbstar</a> 2010-04-02 18:47 <a href="http://www.blogjava.net/dbstar/archive/2010/04/02/317342.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>打造一个基于OSGi的Web Application——使用Tomcat原生API来动态管理Web元素：原理</title><link>http://www.blogjava.net/dbstar/archive/2010/04/01/316855.html</link><dc:creator>dbstar</dc:creator><author>dbstar</author><pubDate>Thu, 01 Apr 2010 04:02:00 GMT</pubDate><guid>http://www.blogjava.net/dbstar/archive/2010/04/01/316855.html</guid><wfw:comment>http://www.blogjava.net/dbstar/comments/316855.html</wfw:comment><comments>http://www.blogjava.net/dbstar/archive/2010/04/01/316855.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/dbstar/comments/commentRss/316855.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/dbstar/services/trackbacks/316855.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: Tomcat的org.apache.catalina.Context接口提供了动态管理注入到Catalina Web Container中的Web元素的API。在基于OSGi的Web Application中，可以利用这个接口来实现在OSGi容器中动态管理Web元素的目的。为了达到这个目的，我们还需要做一些额外的配置。请注意，以下方法仅适用于Tomcat，并非通用的实现，而且只针对5.5.28版和6.0.24版的Tomcat做过简单的测试。&nbsp;&nbsp;<a href='http://www.blogjava.net/dbstar/archive/2010/04/01/316855.html'>阅读全文</a><img src ="http://www.blogjava.net/dbstar/aggbug/316855.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/dbstar/" target="_blank">dbstar</a> 2010-04-01 12:02 <a href="http://www.blogjava.net/dbstar/archive/2010/04/01/316855.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>打造一个基于OSGi的Web Application——设置初始化bundle的StartLevel</title><link>http://www.blogjava.net/dbstar/archive/2010/03/29/316833.html</link><dc:creator>dbstar</dc:creator><author>dbstar</author><pubDate>Mon, 29 Mar 2010 07:26:00 GMT</pubDate><guid>http://www.blogjava.net/dbstar/archive/2010/03/29/316833.html</guid><wfw:comment>http://www.blogjava.net/dbstar/comments/316833.html</wfw:comment><comments>http://www.blogjava.net/dbstar/archive/2010/03/29/316833.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/dbstar/comments/commentRss/316833.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/dbstar/services/trackbacks/316833.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 在前几天的文章中描述了如何在Web Application中启动OSGi，参见<br>《打造一个基于OSGi的Web Application——在WebApplication中启动OSGi》<br>后来发现其中在初始化时加载bundle的方式，还有一些美中不足。这种方式加载的bundle都具有相同的启动顺序，即bundle的初始化默认 start level，在之前均没有做过特别的设置，所以默认值都是1，这样会导致所有的bundle的启动顺序无法控制，在某些希望特殊bundle优先加载的场合(如日志功能，需要最先加载)，我们希望能够在bundle初始化的时候就能指定特别的start level，这样所有的bundle就能按照我们预设的启动顺序来加载了。下面就是我优化过的初始化代码，能够解决启动顺序问题。&nbsp;&nbsp;<a href='http://www.blogjava.net/dbstar/archive/2010/03/29/316833.html'>阅读全文</a><img src ="http://www.blogjava.net/dbstar/aggbug/316833.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/dbstar/" target="_blank">dbstar</a> 2010-03-29 15:26 <a href="http://www.blogjava.net/dbstar/archive/2010/03/29/316833.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>打造一个基于OSGi的Web Application——增加日志输出功能</title><link>http://www.blogjava.net/dbstar/archive/2010/03/27/316676.html</link><dc:creator>dbstar</dc:creator><author>dbstar</author><pubDate>Fri, 26 Mar 2010 16:28:00 GMT</pubDate><guid>http://www.blogjava.net/dbstar/archive/2010/03/27/316676.html</guid><wfw:comment>http://www.blogjava.net/dbstar/comments/316676.html</wfw:comment><comments>http://www.blogjava.net/dbstar/archive/2010/03/27/316676.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/dbstar/comments/commentRss/316676.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/dbstar/services/trackbacks/316676.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 到目前为止，我们的基于OSGi内核的Web Application还没有任何的日志输出功能，本章将介绍如何在这个Web应用中配置和输出日志。&nbsp;&nbsp;<a href='http://www.blogjava.net/dbstar/archive/2010/03/27/316676.html'>阅读全文</a><img src ="http://www.blogjava.net/dbstar/aggbug/316676.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/dbstar/" target="_blank">dbstar</a> 2010-03-27 00:28 <a href="http://www.blogjava.net/dbstar/archive/2010/03/27/316676.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>OSGi中获取Service的几种方式</title><link>http://www.blogjava.net/dbstar/archive/2010/03/26/316645.html</link><dc:creator>dbstar</dc:creator><author>dbstar</author><pubDate>Fri, 26 Mar 2010 10:09:00 GMT</pubDate><guid>http://www.blogjava.net/dbstar/archive/2010/03/26/316645.html</guid><wfw:comment>http://www.blogjava.net/dbstar/comments/316645.html</wfw:comment><comments>http://www.blogjava.net/dbstar/archive/2010/03/26/316645.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/dbstar/comments/commentRss/316645.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/dbstar/services/trackbacks/316645.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 在OSGi中，Service是动态管理的，OSGi容器提供的好几种获取和使用Service的方式，那么这几种方式各有什么优、缺点呢，下面我们就以 org.osgi.service.log.LogService为例来分别讲一讲。&nbsp;&nbsp;<a href='http://www.blogjava.net/dbstar/archive/2010/03/26/316645.html'>阅读全文</a><img src ="http://www.blogjava.net/dbstar/aggbug/316645.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/dbstar/" target="_blank">dbstar</a> 2010-03-26 18:09 <a href="http://www.blogjava.net/dbstar/archive/2010/03/26/316645.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>打造一个基于OSGi的Web Application——在OSGi容器中管理Web元素的实现思路</title><link>http://www.blogjava.net/dbstar/archive/2010/03/25/316552.html</link><dc:creator>dbstar</dc:creator><author>dbstar</author><pubDate>Thu, 25 Mar 2010 09:34:00 GMT</pubDate><guid>http://www.blogjava.net/dbstar/archive/2010/03/25/316552.html</guid><wfw:comment>http://www.blogjava.net/dbstar/comments/316552.html</wfw:comment><comments>http://www.blogjava.net/dbstar/archive/2010/03/25/316552.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/dbstar/comments/commentRss/316552.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/dbstar/services/trackbacks/316552.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 要在OSGi容器中动态的管理Web相关的元素，目前有两种方式。<br><br>一种是通过类似于bridge的方式，现在外层的Web Application中配置一个对应的元素，然后通过对这个元素将外部的访问桥接到OSGi容器内部。在OSGi容器内部，会有一个总控的 service，通过这个service来提供Web元素的动态管理，以及对外界请求的响应和分发。Equinox的Servlet Bridge就是采用的这种方式。<br><br>另一种方式就是通过使用Web Container提供的原生的API来实现Web元素的动态管理，将Web Container的部分功能作为Service注册到OSGi中，然后在OSGi中通过这个Service来动态的管理Web元素。<br>&nbsp;&nbsp;<a href='http://www.blogjava.net/dbstar/archive/2010/03/25/316552.html'>阅读全文</a><img src ="http://www.blogjava.net/dbstar/aggbug/316552.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/dbstar/" target="_blank">dbstar</a> 2010-03-25 17:34 <a href="http://www.blogjava.net/dbstar/archive/2010/03/25/316552.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>打造一个基于OSGi的Web Application——为OSGi容器提供Web Application环境</title><link>http://www.blogjava.net/dbstar/archive/2010/03/24/316484.html</link><dc:creator>dbstar</dc:creator><author>dbstar</author><pubDate>Wed, 24 Mar 2010 14:49:00 GMT</pubDate><guid>http://www.blogjava.net/dbstar/archive/2010/03/24/316484.html</guid><wfw:comment>http://www.blogjava.net/dbstar/comments/316484.html</wfw:comment><comments>http://www.blogjava.net/dbstar/archive/2010/03/24/316484.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/dbstar/comments/commentRss/316484.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/dbstar/services/trackbacks/316484.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 本章叙述如何在OSGi容器中提供必要的Web Application环境，其中包括Servlet 2.4、Jsp 2.0和Commons-Logging相关的package，使得其他在OSGi容器中的bundle可以import。&nbsp;&nbsp;<a href='http://www.blogjava.net/dbstar/archive/2010/03/24/316484.html'>阅读全文</a><img src ="http://www.blogjava.net/dbstar/aggbug/316484.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/dbstar/" target="_blank">dbstar</a> 2010-03-24 22:49 <a href="http://www.blogjava.net/dbstar/archive/2010/03/24/316484.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>打造一个基于OSGi的Web Application——在WebApplication中启动OSGi</title><link>http://www.blogjava.net/dbstar/archive/2010/03/23/316327.html</link><dc:creator>dbstar</dc:creator><author>dbstar</author><pubDate>Tue, 23 Mar 2010 10:28:00 GMT</pubDate><guid>http://www.blogjava.net/dbstar/archive/2010/03/23/316327.html</guid><wfw:comment>http://www.blogjava.net/dbstar/comments/316327.html</wfw:comment><comments>http://www.blogjava.net/dbstar/archive/2010/03/23/316327.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/dbstar/comments/commentRss/316327.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/dbstar/services/trackbacks/316327.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 本章将创建一个Web Application项目，并描述如何在此应用中启动OSGi。&nbsp;&nbsp;<a href='http://www.blogjava.net/dbstar/archive/2010/03/23/316327.html'>阅读全文</a><img src ="http://www.blogjava.net/dbstar/aggbug/316327.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/dbstar/" target="_blank">dbstar</a> 2010-03-23 18:28 <a href="http://www.blogjava.net/dbstar/archive/2010/03/23/316327.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>打造一个基于OSGi的Web Application——搭建开发环境</title><link>http://www.blogjava.net/dbstar/archive/2010/03/23/316322.html</link><dc:creator>dbstar</dc:creator><author>dbstar</author><pubDate>Tue, 23 Mar 2010 07:32:00 GMT</pubDate><guid>http://www.blogjava.net/dbstar/archive/2010/03/23/316322.html</guid><wfw:comment>http://www.blogjava.net/dbstar/comments/316322.html</wfw:comment><comments>http://www.blogjava.net/dbstar/archive/2010/03/23/316322.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/dbstar/comments/commentRss/316322.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/dbstar/services/trackbacks/316322.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 工欲善其事必先利其器，在正式开发之前，花一点时间来构建开发环境还是有必要的。本章介绍一下我的开发环境。&nbsp;&nbsp;<a href='http://www.blogjava.net/dbstar/archive/2010/03/23/316322.html'>阅读全文</a><img src ="http://www.blogjava.net/dbstar/aggbug/316322.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/dbstar/" target="_blank">dbstar</a> 2010-03-23 15:32 <a href="http://www.blogjava.net/dbstar/archive/2010/03/23/316322.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>打造一个基于OSGi的Web Application——动机和目标</title><link>http://www.blogjava.net/dbstar/archive/2010/03/23/316305.html</link><dc:creator>dbstar</dc:creator><author>dbstar</author><pubDate>Tue, 23 Mar 2010 06:37:00 GMT</pubDate><guid>http://www.blogjava.net/dbstar/archive/2010/03/23/316305.html</guid><wfw:comment>http://www.blogjava.net/dbstar/comments/316305.html</wfw:comment><comments>http://www.blogjava.net/dbstar/archive/2010/03/23/316305.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/dbstar/comments/commentRss/316305.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/dbstar/services/trackbacks/316305.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: OSGi技术发展至今也有好几年了，然而除了在富客户端应用(以Eclipse为代表)和服务器应用(如大多数的应用服务器)方面大放光芒之外，在Web Application方面的应用和资料却少之又少。一方面，在OSGi规范中，对于Web应用方面的规划尚不成熟，即使在最新的4.2版中，也仅仅只有一个HttpService，这个简陋的service甚至不能覆盖任何一个现有的Servlet规范；另一方面，各个OSGi实现厂商对 HttpService的实现也是不完全的，在开发实现一个常规的Web Application时，这些实现也是完全不够用的。本文章的目的，也就是为了探索OSGi在Web Application上的开发之路该如何走，从我的视角提出一些看法，做一些尝试，希望对大家有所帮助。&nbsp;&nbsp;<a href='http://www.blogjava.net/dbstar/archive/2010/03/23/316305.html'>阅读全文</a><img src ="http://www.blogjava.net/dbstar/aggbug/316305.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/dbstar/" target="_blank">dbstar</a> 2010-03-23 14:37 <a href="http://www.blogjava.net/dbstar/archive/2010/03/23/316305.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>