随笔 - 1  文章 - 37  trackbacks - 0
<2024年12月>
24252627282930
1234567
891011121314
15161718192021
22232425262728
2930311234

留言簿(16)

随笔分类

随笔档案

文章分类

文章档案

test

搜索

  •  

最新评论

Tapestry-OSGi中引入了两个动态服务的概念,先来看看这2个概念具体是什么。

1.  ExtensionPoint与Extension
这个概念来自于Eclipse的插件技术,它在Web应用中如何体现?举一个简单的例子:
在为Tomcat-OSGi开发的osgi console中,使用的是Tapestry-OSGi,页面中会有一个Menu的组件,它就是一个ExtensionPoint

ExtensionPoint(point="org.extwind.osgi.console.MainMenu")


其他组件只需要注册一个Extension,即可在这个Menu中显示出来,这一切将是在运行时实现的!


2. Service
这个概念有点像OSGi中的Service Registry,Tapestry组件可以提供Service也可以获得Service,它在web应用汇总如何体现?举个例子
Tapestry-OSGi的示例控制台中,关于权限控制,有3个模型组:用户组,权限组,资源组
现在资源组假设只有一个页面:bundles控制页面,当client请求访问bundles控制页面时,这个页面将查找如果有LoginService存在并且没有登录,将跳转到LoginService提供的页面,当client提交登录表单后,LoginService又会查询是否有RoleService存在 ......
这些Service会有一个Manager页面去控制(disable/enable)
这个例子中如果再加入ExtensionPoint与Extension的概念,它将变得非常有意思。

Tapestry-OSGi的OSGi Console将在完成Service Managment后开始发布。

posted on 2009-05-24 19:03 Phrancol Yang 阅读(510) 评论(0)  编辑  收藏

只有注册用户登录后才能发表评论。


网站导航: