- 浏览: 1151951 次
- 性别:
- 来自: 火星郊区
博客专栏
-
OSGi
浏览量:0
文章分类
- 全部博客 (695)
- 项目管理 (48)
- OSGi (122)
- java (79)
- Vaadin (5)
- RAP (47)
- mysql (40)
- Maven (22)
- SVN (8)
- 孔雀鱼 (10)
- hibernate (9)
- spring (10)
- css (3)
- 年审 (6)
- ant (1)
- jdbc (3)
- FusionCharts (2)
- struts (4)
- 决策分析 (2)
- 生活 (10)
- 架构设计 (5)
- 破解 (2)
- 狼文化 (4)
- JVM (14)
- J2EE (1)
- 应用服务器 (1)
- 我的链接 (5)
- 数学 (2)
- 报表 (1)
- 百科 (6)
- Flex (7)
- log4j (2)
- PHP (1)
- 系统 (2)
- Web前端 (7)
- linux (6)
- Office (1)
- 安全管理 (5)
- python (2)
- dom4j (1)
- 工作流 (3)
- 养生保健 (4)
- Eclipse (8)
- 监控开发 (1)
- 设计 (3)
- CAS (1)
- ZK (41)
- BluePrint (3)
- 工具 (1)
- SWT (7)
- google (2)
- NIO (1)
- 企业文化 (2)
- Windoes (0)
- RCP (7)
- JavaScript (10)
- UML (1)
- 产品经理 (2)
- Velocity (10)
- C (1)
- 单元测试 (1)
- 设计模式 (2)
- 系统分析师 (2)
- 架构 (4)
- 面试 (2)
- 代码走查 (1)
- MongoDB (1)
- 企业流程优化 (1)
- 模式 (1)
- EJB (1)
- Jetty (1)
- Git (13)
- IPV6 (1)
- JQuery (8)
- SSH (1)
- mybatis (10)
- SiteMesh (2)
- JSTL (1)
- veloctiy (1)
- Spring MVC (1)
- struts2 (3)
- Servlet (1)
- 权限管理 (1)
- Java Mina (1)
- java 系统信息 (6)
- OSGi 基础 (3)
- html (1)
- spring--security (6)
- HTML5 (1)
- java爬虫搜索 (1)
- mvc (3)
最新评论
-
Tom.X:
http://osgia.com/
将web容器置于OSGi框架下进行web应用的开发 -
chenyuguxing:
你好, 为什么我的bundle export到felix工程中 ...
在Apache Felix中运行bundle -
string2020:
<niceManifest>true</ni ...
Bundle Plugin for Maven -
jsonmong:
OSGI,是未来的主流,目前已相当成熟。应用OSGI比较好的, ...
基于OSGi的声明式服务 -
zyhui98:
貌似是翻译过来的,有很少人在linux上做开发吧
如何成为“10倍效率”开发者
RAP 可以让开发人员使用 JAVA API 和按照 Eclipse 插件的开发模式构建基于 AJAX 的 Web 2.0 应用程序,是的,你没有看错,其实 RAP 的工作原理是采用交叉编译的方式将 Java 代码生成html、 JavaScript和CSS 文件,底层基于 Qooxdoo AJAX 框架,这样,我们就不必接触 JavaScript 、 CSS 和处理 Http 的细节了,可以让我们更关心程序的功能实现,想起来的觉得很幸福。
RAP和 RCP 一样,运行在 Equinox 框架上, Equinox 是 OSGI R4 规范的实现,是一个非常优秀和成熟的 OSGi 框架, Eclipse 是通过这个框架实现灵活的扩展性和插件的热部署。 RAP 也支持 Eclipse 的大部分扩展点,其实 RAP 和 RCP 在架构上非常的类似,下图分别为 RCP 和 RAP 的架构图:
可以看出,这之间的整体架构差别不大,RCP 是基于 SWT 的, RAP 是基于 RWT 的, RWT 是实现了 SWT 功能的一个子集。其实这之间的使用方式都差不多。比如 RWT 也能和 SWT 一样使用 MVC 的方式来创建表格。
RAP可以使用 Servlet 编译,支持 Servlet 2.3 、 2.4 和 2.5 规范,并且可以通过打包成 war 文件部署在服务器上,客户端通过浏览器直接访问,不过这里的客户端和服务器的实现也不一样,。下面分别是服务器和客户端的实现。
服务器端:
客户端的功能比较简单,是通过Qooxdoo 程序从服务器上更新信息并绘制出相应的组件显示在浏览器中。基本上只是负责提交和更新显示数据的功能,服务器端的功能就比较复杂,比如要管理插件的生命周期,寻找新的插件并加载和管理系统的资源,还要处理多用户环境,在不同 Sessions 之间处理 OSGI bundles 的关系。
控件:
GridLayout, RowLayout FillLayout FormLayout StackLayout
HttpServletRequest request = RWT.getRequest(); String var1 = request.getParameter( "var1" ); String var2 = request.getParameter( "var2" );
RAP.JFace vs RCP.JFace
RAP的JFace实现了RCPJFace的所有视图查看器,比如TableViewer、TreeViewer等;
支持大多数的视图概念,像:ContentProvider、LabelProvider、ColorProvider、ViewerFilter、DecoratingLabelProvider,
支持文本装饰,比如文本框前面加个小灯泡提示
支持所有JFace的标准对话框,也支持自定义对话框。
支持向导页
支持附加视图,比如 Outline,Properties视图
编辑器支持:可使用多页编辑器,支持继承自ISaveablePart的视图
支持透视图:可支持透视图切换器,透视图扩展点。
支持Eclipse 3.3的菜单框架:包括Commands和Handler,支持采用表达式来控制菜单是否可见和是否可用
支持Form表单样式
还有一个杀手级的特性: 支持在后台运行Job,可以通过UI界面执行长时间任务,支持Progress View 视图。
如果你很喜欢RCP中JFace的Data Binding功能的话,在RAP中也可以实现,通过RAP的附加插件可以让你拥有RCP的数据绑定功能,并且可以运用到目前所有的RAP控件中,
也许你看到这里的时候,上面的信息有些过时了,那有什么办法呢,Eclipse 组织的动作发展太快了,而且理念也非常的超前,应该听说过E4吧,Eclipse 的下一代开发工具,可以在Web 浏览器中打开Eclipse 进行开发了。持续关注Eclipse的发展,希望NetBeans不要落后的太远。
RWT中布局采用的计算算法和 SWT 一样。
SelectionListener ControlListener ShellListener MenuListener ModifyListener VerifyListener
RWT提供了附加的 API 可以方便 管理web 环境,我们可以调用 RWT.java 的 getLifeCycle 静态方法 获得程序的生命周期控制类,直接操作程序的生命周期; 可以通过 getResourceManager 静态方法获得资源管理的控制类,手工管理系统资源,通过 getSessionStore 方法管理session 资源;通过 getRequest 方法处理用户的请求 getResponse 处理服务器的响应。假如我们 从 下面URL 中得到请求的参数内容 :
http://localhost:8080/rap?startup=foo&var1=value1&var2=value2
可以调用
RWT 附加 功能:
目前RWT支持以下事件类型:
事件处理:
RWP同样可以像 SWT 一样使用布局,布局的数据在服务器上计算处理,我们基本上不用担心跨浏览器出现布局混乱的问题了,目前 RWP 支持下面的布局:
布局 :
RWT实现了 SWT 中的大部分基本控件,使用方法大同小异,也提供了 CTabFolder 、 CBanner 自定义控件, RWT 中的 Tree 和 Table 功能和 SWT 的的差不多,支持排序、过滤和直接编辑单元格,使用方式也一样的。可以直接从 SWT 代码复制到 RWT 程序中使用。
RWT VS SWT:
客户端:
发表评论
-
RCP开发者的好去处之ICON系列(持续更新中... ...)
2012-03-31 10:13 1123为了找个合适的图片是不是头大的不像样子了?OK,我现在就 ... -
RAP 整合 Spring (基于 Spring-osgi )
2012-03-31 10:12 1386RAP 介绍请见: http://www.eclipse. ... -
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
2012-03-25 14:50 1464引用 在rcp的路径添加了mysql驱动,并添加之cla ... -
解决JFace Dialog中ScrollComposite无法滚动
2012-03-26 10:26 1592今天写了一个Jface的dialog,作为配置界面,其中有 ... -
SWT实现弹出日历控件
2012-03-27 08:00 2584实现像网页上的那种用户单击一个Text框然后框下面出现一个日历 ... -
JFace进度条
2012-03-27 08:01 1114Java代码 someB ... -
getConfigurationElementsFor 无法获得扩展点的信息
2012-03-26 10:27 1092做项目的时候RCP程序在eclipse调试环境下面运行正常 ... -
测试rcp 和 rap 何时触发 组建.addListener(SWT.xxx, new Listener() )的方法
2012-02-24 14:22 1282Java代码 直接通过反射让组建监 ... -
RAP 界面显示不完全的问题
2012-02-24 14:22 1238rap运行第一刷新界面总是刷新不完整,组件错位,后台报Layo ... -
Uploading files with RAP 1.4
2012-02-17 11:37 1617One of the new things in RAP 1. ... -
【RAP】CAS PIA 快速浏览入口地址
2012-02-07 08:23 1238下面的链接是访问RAP应用的入口。有2中方式,图片上已经注明。 ... -
将Eclipse RAP部署到Tomcat中
2012-02-07 08:23 1140在上次成功将我的RCP项目迁移到浏览器中运行后,开始研究 ... -
RAP(Rich AJAX Platform)的可部署文件下载
2012-02-07 08:24 1138这是我自己做的RAP的可部署文件,可以下载下来解压到Tom ... -
Eclipse rcp/rap 开发经验总结(15) -rap如何使用js
2012-02-03 08:11 14481. 把输入的字符串当 javascript 执行 ... -
Eclipse rcp/rap 开发经验总结(14) -rap 图片、数据缓存处理
2012-02-03 08:10 1514一、概述 在进行了 rap 的基本学习之后,您对 rap ... -
Eclipse rcp/rap 开发经验总结(13) -Rap/Rcp保存按钮处理方式
2012-02-03 08:10 1083一、概述 在做项目的过程中,处理编辑区的保存机制的时候。发 ... -
Eclipse rcp/rap 开发经验总结(12) -Rap 优化之组件的销毁
2012-02-03 08:10 872一、概述 经过几个月的rap 项目实战,总结了一些小 ... -
Eclipse rcp/rap 开发经验总结(11) -rcp/rap与spring ibatis集成
2012-02-03 08:10 13111. rcp/rap 与 spring 集成 Activa ... -
Eclipse rcp/rap 开发经验总结(10) -Rap不同系统间的差异和处理方式
2012-02-01 08:01 1398平常进行 rap 程序开发一般都是在 win ... -
Eclipse rcp/rap 开发经验总结(9) - rap上传与下载
2012-02-01 08:01 1052一 上传 上传即将文件上传到服务器上,在客户端需 ...
相关推荐
1. **RCP与RAP的区别** RCP和RAP在结构上非常相似,主要区别在于运行环境和用户交互方式。RCP是桌面应用框架,依赖本地操作系统;而RAP则是基于HTTP的远程应用平台,使得应用能在Web浏览器中运行。 2. **转换过程*...
要开始RCP开发,首先需要安装Eclipse IDE,然后安装Eclipse RCP和RAP开发工具(PDE)。这些工具提供了一整套用于创建、调试和部署RCP应用的工具集。 **4. 创建第一个RCP应用** 在Eclipse中,通过“新建 -> 项目 -> ...
1. **环境搭建**:首先,你需要安装Eclipse IDE for RCP and RAP Developers,这个版本包含了开发RCP应用所需的所有工具和库。然后,创建一个新的RCP项目,通过"File" -> "New" -> "Project" -> "Eclipse" -> "RCP ...
Eclipse IDE for RCP and RAP Developers(eclipse-rcp-2022-06-R-macosx-cocoa-x86_64.dmg) 适用于macOS x86_64: A complete set of tools for developers who want to create Eclipse plug-ins, Rich Client ...
1. **环境搭建**: 安装Eclipse IDE for RCP and RAP Developers,并创建一个新的RCP项目。 2. **理解工作台结构**: 学习如何创建视图、编辑器以及透视图,并了解它们之间的交互。 3. **事件模型**: 了解RCP中的事件...
1. **安装Eclipse IDE**:作为RCP开发的基础,你需要下载并安装支持RCP开发的Eclipse版本,通常选择带有"Java Development Tools"和"Eclipse RCP and RAP Developers"组件的版本。 2. **创建新项目**:在Eclipse中...
Eclipse IDE for RCP and RAP Developers(eclipse-rcp-2022-06-R-linux-gtk-x86_64.tar.gz) 适用于Linux x86_64: A complete set of tools for developers who want to create Eclipse plug-ins, Rich Client ...
1. 安装Eclipse IDE:首先,你需要下载并安装Eclipse IDE for RCP and RAP Developers版本,这个版本包含了开发RCP应用所需的所有工具。 2. 创建新项目:在Eclipse中,选择“File” -> “New” -> “Project”,然后...
要开始RCP开发,首先需要安装Eclipse IDE for RCP and RAP Developers。这个版本的Eclipse包含了开发RCP应用所需的工具和插件。然后,可以通过新建一个"Plug-in Project"来启动你的第一个RCP项目。 三、RCP Plug-in...
RCP支持数据驱动的UI设计,使得UI组件能够与模型进行双向绑定。 3. **服务(Services)**:Eclipse RCP提供了一套全面的服务,如国际化服务、首选项服务、事件服务等,这些服务帮助开发者处理常见的任务,使他们能...
1. 安装Eclipse IDE for RCP and RAP Developers版本,这是一个专门为RCP开发定制的集成开发环境。 2. 创建一个新的Eclipse RCP项目,选择适当的模板,如“Basic”或“Feature-Based”。 3. 配置项目的运行时环境,...
Eclipse IDE for RCP and RAP Developers包含了开发RCP应用所需的工具和插件。 2. **创建新项目** 在Eclipse中,选择“File” > “New” > “Project”,然后在弹出的对话框中选择“Eclipse Plug-in Project”。...
1. **环境搭建**:安装Eclipse IDE,并安装RCP和RAP开发相关的插件。 2. **创建新项目**:使用Eclipse的New -> Plugin Project创建一个插件项目。 3. **定义插件元数据**:在MANIFEST.MF文件中配置插件的依赖、导出...
RAP基于Eclipse RCP(Rich Client Platform)的理念,将桌面应用的设计思想引入到Web应用中,使得开发者可以使用熟悉的Java语言和Eclipse插件开发方式来创建富Web应用。 在RAP中,draw2d是一个重要的图形库,它是...
通常,你需要下载并安装Eclipse IDE for RCP and RAP Developers版本。此外,熟悉Java编程语言也是必要的,因为Eclipse插件主要用Java编写。 **创建RCP应用的基本步骤**包括: 1. **新建一个RCP项目**:在Eclipse中...
《即时Eclipse 4 RCP开发指南》这本书详细介绍了如何使用Eclipse 4来创建富客户端应用程序(Rich Client Platform,简称RCP),它是一本实践操作指南,包含了超过10个实用的配方。Eclipse 4 RCP是Eclipse平台中用于...
`RAP`借鉴了Eclipse RCP(Rich Client Platform)的设计理念,提供了丰富的组件库和灵活的扩展机制,使得开发者能够快速地开发出具有桌面级用户体验的Web应用。 在`RAP Mail`例子中,我们将看到如何利用`RAP`框架来...
1. Eclipse IDE for RCP and RAP Developers:这是开发Eclipse RCP应用程序的基础。 2. MySQL Connector/J:这是MySQL的Java驱动,用于Java应用程序通过JDBC连接到MySQL数据库。 **步骤一:添加MySQL JDBC驱动** 在...
1. **环境搭建**:安装Eclipse IDE for RCP and RAP Developers,获取必要的RCP开发工具集。 2. **创建新项目**:通过New -> Project -> Plug-in Project,创建一个新的Plug-in项目。 3. **编写代码**:在项目的src...
- **安装Eclipse IDE**:首先,你需要安装支持RAP开发的Eclipse版本,如Eclipse for RCP and RAP Developers。 - **安装RAP SDK**:通过Eclipse的软件更新站点添加RAP的SDK。 - **创建新项目**:使用RAP模板创建...