`
huihua
  • 浏览: 62737 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
文章分类
社区版块
存档分类
最新评论

基于插件开发模式的WEB开发

阅读更多
1、通过ServletBridge把OSGI框架部署到Tomcat容器中去。
程序文件整体结构图如下:
2、通过一个runtime插件把相关需要启动的插件启动起来。
3、在config.ini文件中配置runtime插件在OSGI启动时即启动。
4、利用WebServiceExporter类来注册WebService服务
5、CXFNonSpringServlet类是用来提供Servlet监听
6、Spring通过插件形式集成到框架中来。
分享到:
评论
39 楼 sbiigu 2009-08-17  
楼主的解决方案是Equinox上的quilkstart吧.
http://www.eclipse.org/equinox/server/http_in_container.php
38 楼 zzsczz 2009-05-13  
服务层的插件解决方案为什么不考虑geronimo的gbeans呢?
37 楼 jolestar 2009-05-07  
这个尝试不错。不过web需要插件式的一个原因是解藕,另一个原因是重用。
web插件要实现重用就必须牵扯到ui的东西,样式表,页面,控制器,等等都比较复杂。
一直在思考这些,但没想到好的解决方案。
用Grails搞过一个东西,感觉它的插件比较好。比方:用grails做了一个网站,现在需要增加搜索功能,你只需要安装它的搜索插件,然后在domain对象里加一些annotaion,表明哪些字段要索引等等,网站的搜索功能就好了,并且自带了默认的页面模板,你只需要修改下页面模板。当网站启动的时候搜索插件也启动,它会检测annotaion,并且监听hibernate的持久化事件,及时更新索引。
感觉这种东西用动态语言实现要方便一些,因为它可以在运行时候给类注入方法,这样插件的控制能力比较强。

36 楼 zephyrleaves 2009-05-06  
lnaigg 写道
我的理解,在企业级应用上,portlet和osgi是两个不同层面上的架构。

portlet是显示层的插件解决方案。
osgi是服务层的插件解决方案。

我也做了个osgi山寨框架,但发现在实际开发中osgi缺少的东西太多、要修改的东西太多、限制太多、开发模式相差太大。
没有大的投入是很难做出完整的企业级解决方案。

目前来说,portlet开发要比osgi简单很多,技术也成熟很多。



OSGi毕竟一开始是为嵌入式作的.的确缺少很多东西.不过现在也在逐步完善起来了...
不过感觉现在就用OSGi作前台的WEB展示应用还不是很完善...
35 楼 lnaigg 2009-05-06  
我的理解,在企业级应用上,portlet和osgi是两个不同层面上的架构。

portlet是显示层的插件解决方案。
osgi是服务层的插件解决方案。

我也做了个osgi山寨框架,但发现在实际开发中osgi缺少的东西太多、要修改的东西太多、限制太多、开发模式相差太大。
没有大的投入是很难做出完整的企业级解决方案。

目前来说,portlet开发要比osgi简单很多,技术也成熟很多。
34 楼 berat 2009-05-06  
jim19770812 写道
berat 写道
web应用解耦的最好方式是正确使用Portlet。

同意,使用Portlet可以将应用解耦,包括后台和前台。
现在的JSR 286规范已经很强大,足够满足一般的需求了


是的, 不过重点是使用正确。
我见过一些项目, 本身是一个应用, 硬是拆成了多个portlet再组合再一次, 系统反倒复杂度更高了。 其实很简单的系统。

不过Portlet使用正确的话, 是系统集成以及SOA的一个很好的方式。
33 楼 jim19770812 2009-05-06  
berat 写道
web应用解耦的最好方式是正确使用Portlet。

同意,使用Portlet可以将应用解耦,包括后台和前台。
现在的JSR 286规范已经很强大,足够满足一般的需求了
32 楼 key232323 2009-05-05  
一样关注web ui中……
31 楼 hatedance 2009-05-05  
楼主是通过servlet启动osgi,能不能反过来呢?
我觉得反过来比较符合osgi是个“大”平台的意思。
呵呵,我是个osgi文盲。
30 楼 dreaminjava 2009-05-05  
你不觉得 打个包  把代码发上来会更好?
29 楼 berat 2009-05-05  
web应用解耦的最好方式是正确使用Portlet。
28 楼 zhangxiaoming 2009-05-05  
你好,有没有相关的参考资料。
27 楼 ebeach 2009-05-05  
感谢分享。
LZ的场景和一般WEB不太相同:几乎没有UI的东西,基本都是远程接口暴露。
26 楼 tutu1982 2009-05-05  
提个问题:
web的页面文件,JS文件,CSS文件,等等这些东西怎么处理呢?
25 楼 pipilu 2009-05-04  
楼主如果能先介绍一下应用的场景和程序的基本原理就好了。
24 楼 kimmking 2009-05-04  
服务器端只有soap的话,客户端是rcp的话,实际上跟大家讲的web没啥关系,
就是远程调用而已。


web上的eclipse技术RAP(rcp的web版)还是很nb的~~
23 楼 duker 2009-05-04  
django 中的模块机制实在是很强大, 一个app 定义的model, 稍做说明,就可以在系统提供的 admin中进行增删改查的操作,当然这得益于动态语言的特性.

------------------------------- 
程序员代码管理 
http://mysharecode.appspot.com/
gwt中使用flash
http://code.google.com/p/gwt-flash-bridge/
22 楼 yimlin 2009-05-04  
另外,spring dm也有做tomcat的扩展,也是参考的
21 楼 huihua 2009-05-04  
whaosoft 写道
呃 我都没听说过呢
是你自己写的??

绝对都是自己写的。 有源码,但是公司信息安全很严格,上传不了附件,所以只能贴少部分代码,而且必须删除带有公司内容的。
20 楼 lvgang 2009-05-04  
<p>感谢楼主,希望楼主能写得详细点。我以前的一个web项目在开发的时候使用的是开发OSGi bundle的方法开发的,但实际生成环境并没有使用OSGi。如果楼主的实践很成功,我们会在新项目中尝试着开发运行都使用这样的一种模式!</p>
<p> </p>
<p>Thank you</p>

相关推荐

    海康威视摄像头WEB无插件开发包 V3.2(官方版本)

    "海康威视摄像头WEB无插件开发包 V3.2(官方版本)"是海康威视为开发者提供的一种高效、便捷的在线视频流处理工具,旨在帮助开发者在网页端实现对海康威视摄像头的实时监控功能,而无需依赖任何浏览器插件。...

    大华摄像头web3.0二次开发webplugin

    WebPlugin是基于浏览器的插件技术,用于在网页中嵌入特定的功能模块。在大华摄像头的场景下,WebPlugin提供了一个桥梁,将客户端的JavaScript代码与摄像头设备的底层功能对接,使开发者可以利用Web3.0的相关技术,如...

    百度地图插件,方便web开发

    在Web开发中,地图插件的应用非常广泛,用于展示地理位置信息、导航、定位等功能。这里我们关注的是一个基于百度地图API开发的插件,适用于快速集成地图功能到您的项目中。"百度地图插件,方便web开发"这个标题表明...

    Eclipse核心编程:插件、界面与Web开发

    本资源"《Eclipse核心编程:插件、界面与Web开发》"显然是针对那些希望深入理解Eclipse平台、创建自定义插件、设计用户界面以及进行Web开发的开发者准备的。 1. **Eclipse插件开发**: Eclipse的核心是其插件模型...

    阿里开发规范插件

    P3C插件基于Checkstyle工具,通过定义一系列规则来检查Java代码,包括但不限于命名规范、注释规范、设计模式、异常处理、空指针检查等多个方面。以下是一些重要的知识点: 1. **命名规范**:阿里的命名规范强调清晰...

    Python-FlaskPluginKit基于Flask的插件式开发工具

    Flask是一个轻量级的Python Web开发框架,以其简洁和灵活的设计理念深受开发者喜爱。然而,随着项目规模的扩大,代码组织和模块化变得至关重要。为了解决这个问题,`FlaskPluginKit`应运而生,它是一个用于构建基于...

    基于C++开发的WEB服务器,支持C/C++、Python、Java等多语言混合开发WEB应用

    "web开发框架":Web开发框架是预定义的代码库和工具,为开发者提供了一种结构化的开发方式,用于简化Web应用的构建。这里暗示了这个基于C++的Web服务器可能包含一个框架,用于帮助开发者更高效地组织和管理代码,...

    海康威视web控件开发包

    该开发包的核心部分是用于在Web页面上展示海康威视摄像头视频流的插件。这个插件基于ActiveX或NPAPI技术,能在主流的浏览器(如Internet Explorer、Firefox等)中运行,使得用户无需安装额外的客户端软件就能通过...

    路由器技术开发 插件开发

    路由器技术开发插件开发 路由器技术开发插件开发是指在路由器产品中集成插件开发技术,以实现路由器的插件化和模块化。路由器插件开发技术可以使路由器产品具有更高的灵活性和可扩展性,使其能够满足不同用户的需求...

    大华摄像头WEB无插件开发包

    1、WEB无插件开发包是基于标准HTML5技术开发,在不使用插件的情况下,为大华各类网络摄像机、球机、NVR等产品提供音视频播放二次开发服务。 2、该方案使用Websocket+RTSP/RTP推流,WASM解码方式进行音视频的解码...

    基于java web开发的购物商城项目源码

    "基于Java Web开发的购物商城项目源码"是指一个使用Java Web技术栈构建的在线购物平台的完整源代码。这个项目可能是为了帮助学生或开发者进行毕业设计或者作为小型项目的参考实例。 【描述解读】 描述中提到,这个...

    eclipse的AXIS插件(开发WebServices的)第二个

    Eclipse的AXIS插件是开发Web服务的重要工具,它为开发者提供了在Eclipse集成开发环境中创建、测试和部署Web服务的便利。本文将详细解析这个插件的使用及其核心功能,以及与AXIS相关的开发知识。 首先,AXIS是一个...

    Chrome基于REST的Web服务客户端插件.zip

    Chrome web标签表明该插件与Chrome浏览器的Web开发和扩展有关。在Web开发过程中,开发者经常需要与服务器进行交互,验证API的功能和性能,而这款插件正是为此目的而设计的。它简化了这个过程,使得开发者无需离开...

    Chrome插件开发完整教程

    4. 相比Firefox插件,Chrome插件开发更为简单,且可以跨平台运行,不仅在Chrome浏览器上,还能在基于WebKit内核的其他国产浏览器上运行。 开发Chrome插件并不需要特定的项目结构或IDE,只需保证根目录下有一个`...

    WEB开发模式:Mode I与Mode II

    在IT行业中,Web开发是构建基于互联网应用程序的关键领域。这里我们关注的是两种主要的Web开发模式:Mode I和Mode II。这两种模式对于理解和优化Java Web应用程序的开发流程至关重要。 首先,让我们深入理解“Web...

    magento模块组件或插件开发教程

    Magento采用的是MVC(Model-View-Controller)架构,这种设计模式在Web开发中广泛使用,它将业务逻辑、数据处理和用户界面分离,提高了代码的可维护性和复用性。此外,Magento还基于Zend Framework构建,利用其强大...

    基于Vue.js框架的Web前端开发工具的设计与实现

    伴随Web开发技术的不断发展,前后端分离开发逐渐成为主流的开发模式,前端开发在整个开发流程中越来越重要,前端开发工作早已不是编写几个简单的静态页面就可以完成的,前端除了需要展示美观的页面,还需要实现...

    基于 ASP.NET MVC4.0 + WebAPI + EasyUI + Knockout 的架构设计开发

    1、基于 ASP.NET MVC4.0 + WebAPI + EasyUI + Knockout 的架构设计开发 2、采用MVC的框架模式,具有耦合性低、重用性高、生命周期成本低、可维护性高、有利软件工程化管理等优点 3、采用WebAPI,客户端完全摆脱了...

    Web3.0_控件开发包编程指南_20201102162751.pdf

    该开发包基于ActiveX和NPAPI技术开发,提供了封装于javascript脚本中的接口,使得开发者能够在网页上实现视频预览、回放、云台控制等功能。 **运行环境要求** 该控件开发包支持的操作系统包括Windows XP、Windows 7...

Global site tag (gtag.js) - Google Analytics