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

Web2.0时代的新秀 - Nexaweb

阅读更多

Web2.0时代,用户对UI交互体验对Web设计上提出了更高的要求,各种各样的Rich Client技术层出不穷,有基于Javascript的,有基于Flex的,也有基于Java Applet的...

最近接触到一种新的基于Web2.0应用开发的技术,叫做Nexaweb(http://www.nexaweb.com),我们可以把他理解为一个简易的开发平台或框架。Nexaweb的特点就是开发者在一个基于Eclipse的插件集提供的界面上,使用拖拽的方式来构造页面,而最终生成的代码将是一个基于XML的文件,取名为XAL。事实上,接触过JasperReport+iReport的人,应该不会对这种技术感到陌生。其示例内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<xal xmlns="http://openxal.org/ui/html">
	<rootPane>
		<freePane height="768px" width="1024px">
			<table height="360px" width="500px" x="30px" y="30px">
				<column>
					<header text="Column #1" width="100px"/>
				</column>
				<column>
					<header text="Column #2" width="100px"/>
				</column>
				<row>
					<cell text="Row 1 Cell 1"/>
					<cell text="Row 1 Cell 2"/>
				</row>
				<row>
					<cell text="Row 2 Cell 1"/>
					<cell text="Row 2 Cell 2"/>
				</row>
				<row>
					<cell text="Row 3 Cell 1"/>
					<cell text="Row 3 Cell 2"/>
				</row>
			</table>
			<button height="25px" text="Button" width="100px" x="30px" y="410px"/>
		</freePane>
	</rootPane>
</xal>


以上的例子只是一个非常简单的示例,XAL所有的内容远非如此。比如,我们还可以在其中定义各种类型的Datasource,Webservice连接,事件管理的MCO,页面组件相关的XModifier和Macro等。XAL的目的就是让你所见即所得,可能你自己需要写的Java代码或JSP页面寥寥无几,所有的东西都由Nexaweb Platform全权处理了。无疑,这让我们的Web应用开发更加节省时间。


下面我就介绍一下Nexaweb的主要特点:

1. 灵活的Rich Client展示
由于XAL是基于XML来构建的,所以客户端展示模式可以多种多样。Nexaweb目前主要采用的主要是基于Javascript的Dojo,还有就是Java Applet。这里不讨论各种Rich Client技术的孰优孰劣,我们需要知道的是这两种展示可以被所有的浏览器所支持。

这里值得一提的是,关于XAL文件解析的位置。一般的思路,也是许多类似平台的思路,我们会倾向于将XAL文件放在服务器端去解释,不管是从安全性和效率性方面考虑都是应该的。但是恰恰相反,Nexaweb是将XAL拿到客户端去解释成相应的Dojo对象或者Applet组件。为什么这样做?这主要是因为Nexaweb是要适用于所有的开发平台,不仅仅是Java,还有.Net的等等。

2. 丰富的界面组件支持
对于Applet在Web界面上的展示效果,这是毋庸置疑的,大家在各种各样相关的例子中都有过类似的体验。对于Dojo,我想很多人都有过接触,知道Dojo本身也提供了丰富的UI组件库,此外,Nexaweb也在基于Dojo的基础上,发展出了XAP(目前是Apache下面的一个开源项目,有兴趣的可以去了解),还有就是Dojo.E,定制了很多强大的UI组件,大大提高了Dojo在web上的展示能力。

3. 巧妙的事件处理机制
既然是一个静态的XAL文件,Nexaweb如何处理事件呢?这里主要用到Macro和XModifier。Macro主要用来处理客户端事件,你可以把他看作是Excel中的宏,Macro的主要作用就是进行客户端组件的控制,如某个组件的某个属性的修改,导致何种的界面效果。而XModifier是用来处理Server端的响应,如果是基于Java的应用,一般系统会自动引导你去建一个扩展一个BaseMCO的类,实现里面相应的方法就OK了。

4. 强大的框架支持
Nexaweb本身集成了Webservice的功能,这样会让你很方便的去访问远程的服务。当然,Nexaweb也加入了对Struts, Spring, Hibernate/iBatis等流行框架的支持。

5. 对MDA UML2良好的支持
Nexaweb同样集成了MagicDraw 和 OpenArchitectureWare 等插件的支持。

6. 支持基于VB, C++ Builder应用的移植
由于Nexaweb的XAL的特殊性,Nexaweb可以支持把传统的VB, C++ Builder的应用移植到Nexaweb中来,部署成为一个Web应用。


我现在也是正在学习这个框架,但是自从体验过一次实际开发后,才知道原来开发一个Web2.0的应用只需要短短的几分钟,以前可能需要几个小时的工作,在Nexaweb却一会儿即可完成。

现在Nexaweb主要还是在欧美和日韩有庞大的客户群,而且都是大型的企业。对于小企业呢,可能不会舍得投入这种成本,而选择用一些免费的开源框架去做一些企业应用。

 

分享到:
评论
13 楼 key232323 2008-09-24  
tailsherry 写道
dennis_zane 写道
这个与Mozilla的XUL或者微软的XAML有什么不同呢?

表示风格的确有点类似XUL,个人觉得XUL是一个WEB ui的展示标准,而Nexaweb却是一个开发WEB应用的工具。

研究过一段时间zk,总觉得和zul本质一样,就是功能上强和弱差别而已。推荐看看html5.0的spe,期待html升级啊,那个时候才是标准,就没所谓的web xul了
12 楼 tailsherry 2008-08-28  
<div class='quote_title'>jzcjy 写道</div>
<div class='quote_div'>给产品在国内的实际应用如何,哪位用过了!</div>
<p> </p>
<p> 我现在正在做这方面的应用,给你看看一个我开发的界面:</p>
<p> </p>
<p> <img src='../../../../../../upload/picture/pic/20749/e86bfbbc-ac6a-3d92-9c2a-92fb4a367f32.jpg?1219888050' height='565' alt='' width='790'/></p>
<p> </p>
<p> 比如说其中的popup菜单,构造他仅四行代码就实现了:</p>
<p> </p>
<div>&lt;popupMenu id="rightKey"&gt;</div>
<div>    &lt;menuItem onMouseDown="mco:javaEmployeeMco.deleteSelected(event)" text="Delete Row"/&gt;</div>
<div>    &lt;menuItem text="Insert Row"/&gt;</div>
<div>&lt;/popupMenu&gt;</div>
<div> </div>
<div>javaEmployeeMco是一个Java类,可以响应界面的事件,其中的deleteSelected(event)对应javaEmployeeMco中的一个方法:</div>
<div> </div>
<div><span style='color: #0000ff;'>public void deleteSelected(ClientEvent event) {};</span></div>
<div> </div>
<div>简单吧!</div>
11 楼 jzcjy 2008-08-25  
给产品在国内的实际应用如何,哪位用过了!
10 楼 black_zerg 2008-08-06  
jsf就是垃圾,你要问我为什么,因为web上搞mvc这种事情不能当真,jsf却当真了,所以越搞越烂,搞来搞去,web的简单优势丢了,却做不到desktop的效果,还不如gwt之类有实际意义。
9 楼 tailsherry 2008-08-01  
dennis_zane 写道
这个与Mozilla的XUL或者微软的XAML有什么不同呢?

表示风格的确有点类似XUL,个人觉得XUL是一个WEB ui的展示标准,而Nexaweb却是一个开发WEB应用的工具。
8 楼 dennis_zane 2008-07-31  
这个与Mozilla的XUL或者微软的XAML有什么不同呢?
7 楼 tailsherry 2008-07-31  
49271743 写道
插件怎么加到 MYECLIPSE里呢?

Nexaweb的出发点是做一个web的project,他的理念应该就是通过其自身的平台自动生成一个web应用,然后一步一步引导你做下去。

不能把Nexaweb仅仅理解为一个插件,所以也谈不上怎么加到MyEclipse中。
6 楼 jim19770812 2008-07-31  
我还是看好jsf,结合netbeans的vwp,生产力很高。
5 楼 49271743 2008-07-31  
插件怎么加到 MYECLIPSE里呢?
4 楼 tailsherry 2008-07-30  
biubiu 写道
一个框架而已。看看Swing有多少个同样目的的框架,再看看有几个被认可的。


的确,我也不是很看好Swing在web上的应用,但是,Swing的用户体验肯定也无可厚非。

Nexaweb的Java页面展示虽然也是基于Swing, Awt,但是他的的确确让程序员从繁琐的页面控件布局,彻彻底底从页面代码堆里面爬出来了。

你写的基于Java Applet的应用,基本上看不到Swing的代码,所有的这些都是Nexaweb帮你做了。
3 楼 tailsherry 2008-07-30  
slaser 写道
我认为这个技术本身不是web2.0的一部分,而是一种xml模板技术,本质和jsf没有区别,他的web2.0特性不过因为其提供的dojo的render,我怀疑其能否meet互联网的需求,至于企业领域,又如何和逐渐成熟的jsf竞争喃。


jsf本身局限于java的应用,而Nexaweb的发展方向是对所有类型的server都支持的富Client。

还有一点就是,Nexaweb本身是一个框架,在集成其他的框架方面提供了比较快捷的入口,而这一点,jsf现在不会有,将来也不会有。

让程序员轻松快速的开发是Nexaweb的出发点。
2 楼 biubiu 2008-07-29  
一个框架而已。看看Swing有多少个同样目的的框架,再看看有几个被认可的。
1 楼 slaser 2008-07-29  
我认为这个技术本身不是web2.0的一部分,而是一种xml模板技术,本质和jsf没有区别,他的web2.0特性不过因为其提供的dojo的render,我怀疑其能否meet互联网的需求,至于企业领域,又如何和逐渐成熟的jsf竞争喃。

相关推荐

    ARK工具新秀-Xuetr

    比冰刃强的安全辅助工具,目前实现如下功能: 1.进程、线程、进程模块、进程窗口、进程内存、定时器、热键信息查看,杀进程、杀线程、卸载模块等功能 2.内核驱动模块查看,支持内核驱动模块的内存拷贝 ...

    2022年市场-互联网时代的新秀力量-社交网络媒体.pptx

    在中国,社交网络的发展已经进入了Web2.0阶段,其中以休闲娱乐、校园服务和商务沟通为主的三大类SNS网站占据了主导地位。例如,开心网、51.com、人人网、QQ校友、联络家和XING网等,各自针对不同的用户群体提供多样...

    互联网时代的新秀力量--社交网络媒体(SNS)-精选文档.ppt

    【互联网时代的新秀力量——社交网络媒体(SNS)】 社交网络媒体(SNS)是互联网发展至今的产物,它以其独特的社会性网络服务形式,极大地改变了信息传播的方式。SNS不仅是一个平台,它允许用户建立和维护个人之间的...

    下半年海外TMT电商软件行业投资策略:行业增速稳健,关注龙头和新秀-0711-申万宏源-33页.pdf

    综上所述,下半年对于海外TMT电商软件行业的投资策略,投资者应把握住行业增长稳健的特点,重点关注那些能够引领行业潮流的龙头企业以及在新兴领域具有潜力的新秀企业。与此同时,投资者还需注意规避宏观经济下行...

    20210728-国金证券-逸仙电商-YSG.US-国货之光,DTC美妆新秀.pdf

    综上所述,逸仙电商作为一家DTC美妆新秀,通过不断强化品牌和产品矩阵,以及扩大市场渠道,正在逐步扩大其在中国乃至全球美妆市场中的影响力。公司在产品创新、消费者运营和渠道扩展上的努力,有望推动其长期业绩的...

    半导体设备国产化的新秀-Handler(FXCS 550)产品介绍.pdf

    半导体设备国产化的新秀——Handler (FXCS 550) 是一款由中国本土企业深圳市标王工业设备有限公司研发的高端分选机。该产品打破了长期以来由科林、爱德万、爱普生等国际品牌主导的市场格局,标志着中国在半导体设备...

    亿嘉和-深度报告:快速成长的电力巡检机器人新秀-190307(19页).pdf

    综上所述,亿嘉和在电力巡检机器人领域凭借技术创新、成本优势、市场垄断地位以及明确的全国化市场拓展战略,正在成为行业内的新秀企业。公司的发展前景和投资价值获得了市场分析师的积极评价,但同时需要关注市场及...

    2019下半年海外TMT电商软件行业投资策略:行业增速稳健,关注龙头和新秀-20190711-申万宏源-33页.pdf

    【海外TMT电商软件行业投资策略】 随着2019年下半年的到来,海外TMT(Technology, Media, and Telecommunications)电商软件行业的投资策略显得尤为重要。报告指出,尽管全球经济面临下行压力,但电商和软件行业...

    山西证券-多利科技(001311)受益于特斯拉高速发展的一体化压铸新秀-230607.pdf

    多利科技,全称为滁州多利汽车科技股份有限公司,是一家在汽车零部件领域有着深厚历史底蕴的企业,成立于1992年。公司最初专注于汽车冲压零部件及模具的研发、生产和销售,近年来随着汽车行业的变革,尤其是特斯拉等...

    2022互联网时代的新秀力量-社交网络媒体精选ppt.ppt

    【互联网时代的新秀力量——社交网络媒体】 社交网络媒体(SNS)是21世纪互联网发展的新星,自诞生以来迅速崛起,成为信息传播和人际互动的重要平台。SNS不仅改变了人们的沟通方式,而且对社会的各个层面产生了深远...

    互联网时代的新秀力量-社交网络媒体(“社交”相关文档)共33张.pptx

    总体来说,社交网络媒体是互联网时代的新秀力量,它改变了人们的沟通方式,推动了信息的快速流动,塑造了全新的社交生态。随着技术的不断进步和用户需求的多样化,社交网络将持续演变,带来更多的创新和服务。

    2022年市场-互联网时代的新秀力量社交网络媒体.pptx

    在中国,社交网络媒体的发展现状表现为互联网2.0时代的特征。休闲娱乐、校园服务和商务沟通类的社交网站成为市场主流。例如开心网、51.com、人人网、联络家等,它们提供了传统社区业务、新型互动业务和娱乐插件业务...

    数字家庭新秀-数字可视对讲技术探讨

    数字可视对讲技术作为数字家庭领域的新兴技术,正日益受到人们的关注。它不仅仅是对传统楼宇对讲系统的数字化和网络化升级,更融合了网络传输、视频压缩、语音处理等前沿技术,使得对讲系统变得更加智能化、功能多样...

    互联网时代的新秀力量社交网络媒体(SNS).pptx

    在中国,SNS的发展经历了从Web1.0到Web2.0的转变,如今已深入到人们的日常生活中。 中国的SNS市场主要分为三类:休闲娱乐型,如开心网和51.com;校园服务型,如人人网和QQ校友;以及商务沟通型,如联络家和XING网。...

    新秀-springboot

    在"新秀-springboot"这个项目中,我们可以学习到SpringBoot的基础知识和实践技巧。下面将详细阐述SpringBoot的主要特性和使用方法: 1. **起步依赖(Starter POMs)**:SpringBoot通过一系列的起步依赖来简化构建...

    kubernetes-dashboard.yaml

    在 Kubernetes 社区中,有一个很受欢迎的 Dashboard 项目,它可以给用户提供一个可视化的 Web 界面来查看当前集群的各种信息。用户可以用 Kubernetes Dashboard 部署容器化的应用、监控应用的状态、执行故障排查任务...

    新秀WebApi接口 v1.01.zip

    新秀WebApi接口主要用于其他内嵌api接口的软件、web、app程序进行整合开发使用。 新秀WebApi接口主要功能 1、 可以通过本接口,开发更加强大网络应用软件,快速的调用会员数据、信息数据,与discuz系统无缝整合...

    压缩新秀 7-Zip 9.33 最新简体中文精简版 (798K)

    7-zip是一款号称有着现今最高压缩比的压缩软件,它不仅支持独有的7z文件格式,而且还支持各种其它压缩文件格式,其中包括zip, rar, cab, gzip, bzip2和tar。此软件压缩的压缩比要比普通zip文件高30-50%。...

    Discuz新秀网络验证管理系统- 火山PC - ver 1.0 - 软件开发框架

    本软件开发框架是由“火山PC”纯C++纯底层代码软件开发工具,结合Discuz新秀网络验证框架ver5.8版本系统开发。 1、本软件开发框架系统,根据新秀网络验证系统,纯API接口开发框架,只需简单修改就能扩展无限软件功能...

    运营级技术导航系统网址导航系统源码-附带新秀导航全站数据

    【新秀导航全站数据】可能包含了预设的网址分类、热门站点推荐、用户自定义收藏等功能的数据,这些数据可以帮助新搭建的导航网站迅速获得内容,为用户提供有价值的链接。数据的完整性和质量直接影响到用户对网站的第...

Global site tag (gtag.js) - Google Analytics