主要包括:Pluto,Liferay,eXo,Jetspeed四种开源Portal的介绍和分析,有助于对具体项目选择合适的开发平台。
(1)Pluto
2003 年10月JSR168规范1.0正式公布后,Jakarta Apache就开始实施Pluto计划(冥王星计划),最终开发出该规范的一个参考实现(Reference Implementation),即Pluto。Pluto的1.0.1-rc2版与2004年12月发布。
Pluto实现基于 JSR168的一个 Portlet Container,相当于为开发者提供了一个运行portlets的工作平台。Pluto本身也提供了一个简单的Portal模块,该模块仅仅是为了满足Portlet容器和JSR 168的需要而写的,因而显得非常简单,提供的实用的Portlet也非常少。从某种意义上说Pluto更像是一个Portlet Container,作为一个实用的Portal开发框架尚需要更强大的支持。但新版本的Pluto仍没有推出。对于Pluto的应用开发,Apache 更推荐使用Jetspeed项目框架。
尽管Pluto作为一个完整的Portal应用还非常欠缺。但不少有影响力的Portal项目使用Pluto作为Portlet Container。这些项目包括:Jetspeed 、Cocoon uPortal 、Jahia等。由此可见Pluto的重要性。从开发者和学习者的角度看,Pluto的意义还在于为开发者和学习者提供了一个深入了解Portlet Container的简洁的参考实例。
(2)Liferay
Liferay(支持JSR168)代表了完整的J2EE应用 ,最高版本是2005年1月推出的Professional 3.2.0。它的主要优点有:
(1)使用第三放的开源项目,如Hibernate等。特别是前台界面部分使用了Struts技术;
(2)支持包括中文在内的多种语言;
(3)支持较多的先进技术,如Web Services、EJB, JMS, SOAP, XML等;
Liferay的缺点是它缺乏一个简单清晰可拓展的架构设计,整个架构比较复杂且庞大;Struts1.1本身并不支持JSR168,所以Liferay 在实现诸如上下文共享等问题上显得十分笨重且没有从根本上解决这些问题;portlet设计也显得比较凌乱。此外,如果你的门户系统准备应用于商业用途,你需要购买License。基于它进行二次开发比较困难。
(3)eXo
eXo(支持JSR168)基于JSF的Portal实现。最新版本是2004年10月发布的1.0RC1版。
主要优点包括:
(1) 由AOP(AspectJ)实现的内容管理系统,极大提高了内容管理性能;
(2) 基于Pico Container的Portlet Container,Pico是一个著名的IoC3轻量级容器。同时也实现了上下文共享,二次开发的流程比较清晰;
(3) 使用Struts框架技术;
(4) 提供工作流技术服务(Workflow service)。
(5) 提供了很多交流工具,通过XML可以为结构化的信息轻易地创建视图;
由上可见eXo采用了诸多先进技术,但存在不少缺点。主要缺点:由于Portal Server本身的数据是使用xmldb来进行处理,保存到数据库的数据都是乱码而且它所有默认的平台字符集都是ISO-8859_1。缺乏中文的充分支持,对于中文门户的开发并没有优势;由于JSF是重量级的表现层框架,使得exo的二次开发工作量比较大;对于商业Portal应用开发需要购买 License。总体开发难度较大。
(4) JetSpeed
JetSpeed 是Apache组织的开源Portal项目。Jetspeed 目前有两个版本可供选择1.X和2.0版本。Jetspeed1.X出现得比较早,但第一个较为成熟的版本发布是1.4。此后1.X不断推出新版本。但 Jetspeed1.X都不支持JSR168。当JSR168在2003年发布后,Apche开始开发Jetspeed2,提供对JSR168 的全面支持。
下表是Jetspeed重要版本的发布日期:
Jetspeed的重要版本 发布日期
Jetspeed-1.4b2 2002年12月
Jetspeed-1.5 2004年4月
Jetspeed-2.0-M1 2004年12月
Jetspeed-2.0-M2 2005年4月
Jetspeed1.X基于Turbine框架开发,它提供了丰富的Portal技术功能。主要优点有:XML文件注册Portlet,便于管理;图形化的部署和卸载;对中文的良好支持等。值得注意的是IBM早期的WebSphere Portal Server就是在JetSpeed1.X上进行二次开发的。Jetspeed2.0在1.X基础上进行了较大的改动,功能更加丰富,完全遵循JSR标准。
配置方法,不同的版本的配置可能有变化,如不成功,可以自行察看文档。
Pulto在Tomcat下的安装配置方法:
(1) 从http://portals.apache.org/pluto/mirrors.cgi下载最新的二进制版本安装文件
(2) 执行%pluto%/bin/install,将它安装到Tomcat目录下即可
(3) 在浏览器中输入:http://localhost:8080/pluto/portal,运行Pluto
Liferay Professional在Tomcat下的安装配置方法:
(1) 从http://www.liferay.com/downloads/index.jsp下载Liferay Professional安装文件;
(2) 解压ZIP包到某个目录下
(3) 若下载Tomcat版本的Liferay安装文件,则不需再装Tomcat,直接启动bin目录下的startup.bat文件。
(4) 在浏览器中输入http://localhost/运行Liferay Professional。
eXo Platform在Tomcat下的安装配置方法:
(1) 从http://www.exoplatform.com/portal/faces/public/exo 下载eXo Platform的安装包。
(2) 解压ZIP包到某个目录下
(3) 若下载Tomcat版本的eXo安装文件,则不需再装Tomcat,直接启动bin目录下的startup.bat文件。
(4) 在浏览器中输入http://localhost/ 运行eXo Platform.
Jetspeed2在Tomcat下的安装配置方法:
(1) 从http://www.apache.org/dist/portals/jetspeed-2/ 下载Jetspeed2 M1或M2版本安装包。
(2) 若是安装包中已经捆绑Tomcat,解压即可。若安装包不含Tomcat,先安装Tomcat,然后将安装包解压到Tomcat目录,并覆盖相关文件即可。
(3) 安装要注意的问题有:Jetspeed2M1版本由于Bug无法安装Tomcat5.5上(此BUG见http://issues.apache.org/jira/browse/JS2-187);Jetspeed2必须安装在Tomcat5.0.28以上版本上,否则低版本由于JAAS问题无法登陆;
(4) 启动jetspeed-database目录下的start-database.bat,启动数据库;
(5) 启动Tomcat;
(6) 在浏览器中输入http://localhost:8080/jetspeed/portal 运行Jetspeed;
分享到:
相关推荐
《蚂蚁集团开源的Java研发框架——gssdgv-zhuan-ke-master_java_详解》 在现代软件开发中,高效、稳定且易维护的框架是项目成功的关键因素之一。蚂蚁集团作为全球知名的金融科技公司,其开源的Java研发框架——...
转盘抽奖是一种常见的互动活动,尤其在移动端应用广泛。在这个名为"zhuan 2.zip"的压缩包中,包含了一个支持移动端的转盘抽奖程序。这个程序的核心是通过JavaScript实现,使得用户可以通过点击来触发抽奖过程,从而...
自媒体新媒体软件工具自媒体zhuan钱秘诀资料
MapGIS是一款广泛应用于地理信息系统(GIS)的专业软件,它提供了丰富的地图处理、分析和展示功能。在GIS领域,二次开发通常指的是用户根据自己的需求,利用软件提供的API(应用程序编程接口)或SDK(软件开发工具包...
标题 "zhuan_java_untilgw8_android_" 暗示了这是一个关于使用Java语言在UntilGW8平台上开发Android游戏的项目,特别是一款简单的打砖块游戏。在这个项目中,我们可以深入学习到Java编程语言、Android应用开发的基础...
LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是一种图形化编程环境,由美国国家仪器公司(NI)开发,广泛应用于测试、测量和控制系统的设计。在给定的“zhuan-su-eliang.rar”压缩包中,包含了...
而SEC(Secure Executable)文件格式则是一种安全可执行文件,常用于保护代码不被非法篡改,多见于安全敏感的应用中,例如汽车电子、物联网设备等。 转换的过程通常需要特殊的工具或脚本,因为不同的格式可能有其...
"XUAN-ZHUAN-led.zip_旋转LED_旋转LED 自适应_自适应旋转LED"这个压缩包文件内容是关于实现旋转LED自适应转速的程序,其核心目标是让LED屏幕上的字幕能够流畅地滚动,并根据设备的转速自动调整滚动速度,以保持最佳...
- **背景**: YAFFS (Yet Another Flash File System) 是一种专门设计用于NAND Flash的文件系统,具有较好的性能和稳定性。 - **配置步骤**: - 返回到`Device Drivers -> Memory Technology Devices (MTD)`配置界面...
在SOHO网络赚钱的模式中,通常涉及到以下几个关键知识点: 1. 自主编辑的网站和商城:这是SOHO者的基本工具,通过建立个人或专业网站,展示产品或服务,吸引客户并进行在线交易。学习如何设计、优化网站以及利用...
标题“zhuan-kai-fa”似乎是在简写或拼音化表示“专开发”,这可能是指专门的软件开发或者技术开源项目。由于没有具体的标签信息,我们将从一般软件开发的角度来探讨相关知识点。 在软件开发领域,"专开发"可以涵盖...
PDF(Portable Document Format)是Adobe公司开发的一种文件格式,它能够保持文档的原始布局和样式,而TXT文件则是一种简单的文本格式,只包含最基本的文本信息,不保留任何格式或图像。 在PDF转TXT的过程中,程序...
在给定的“ban-zhuan.zip_JAVA穷举法搬砖”主题中,我们面对的是一个数学问题,该问题与实际的砖块分配有关。36块砖需要36个人来搬运,其中包括男性、女性和小孩,他们各自有不同的搬运能力。男性每次能搬4块砖,...
本人转的别人写的人工神经网络的学习体会与感受,真是受益匪浅啊!
主要用于路径规划,程序读入之初,需要先读入Kinect相机拍摄的深度图像。
重构是迅速发现并修复有问题的代码的一种高效的方式。在《代码重构(c # & asp.net版)》中首次提供了在c#和asp.net中进行重构的专业方法,您将学习如何运用重构技术管理和修改代码
Deep Snake for Real-Time Instance Segmentation pytorch1.0 cuda8转6个pt
bai_zhuan=(int)zhuan/100; shi_zhuan=(int)zhuan0/10; ge_zhuan=(int)zhuan; write_data(table[bai_fen]); write_data(table[shi_fen]); write_data(table[ge_fen]); write_data(table[12]); write...
Python-pinyin是一个强大的开源库,专门用于将汉字转换为拼音,尤其在处理中文文本时非常有用。这个库基于Python编程语言,使得开发者可以方便地在各种应用场景中进行汉字与拼音的交互,例如自然语言处理、搜索引擎...
- 当用户需要对PDF文档进行编辑时,MODI提供了一种简单且支持中文的解决方案。 **3. 使用步骤**: - **第一步**:使用Adobe Reader打开待转换的PDF文件,然后选择“文件”>“打印”菜单。在“打印”设置窗口中将...