TWaver招贤纳士

2012年4月12日 丢丢兄 297 次阅读 没有评论  

1, 至少熟悉一门编程语言,专业学历性别工作经验不限;
2, 好学刻苦,能自学自律,愿意和团队及客户沟通交流;
3, 英文好者加分,文笔好者加分,接受短期出差者加分;
4, 如果你关注细节,在意用户评价,此职位应该适合你;

上我们的论坛逛逛,我们天天捣鼓各种GUI技术,我们常让客户惊叹反馈速度和服务质量,我们周末甚至深夜都有同事在活跃,我们低调严谨只靠口碑宣传。如果你有一点点的感动并认可这样的团队和产品,不妨来个邮件我们聊聊: eric(AT)servasoft.com

分类: 信息发布 标签:

Java Web Start实践:动态生成JNLP

2012年5月19日 王志远 28 次阅读 没有评论  

Java很早就推出了Java Web Start(简称JWS)技术,其目的是在桌面程序和Web页面之间搭起一个无缝的桥梁。不过JWS也是问题多多,bug频频。本文以2BizBox ERP项目为例,介绍了如何通过动态生成jnlp的方式来解决如何简单、快速的为海量用户通过JWS来部署Java应用。

TWaver图形界面之道(五)Hello TWaver

2012年5月16日 Sam 53 次阅读 没有评论  

继续上一章的介绍TWaver图形界面之道(四)如何申请与技术支持

本章将以一个入门示例开始,介绍TWaver的基本使用,设计思想以及开发流程,如果你已经熟悉了TWaver的使用,熟悉了TWaver的MVC的设计模式,可跳过本章节。

Hello TWaver

以一个经典示例开始,创建两个节点和一条连线,并在不同组件中展现,然后我们会追加告警,观察界面的变化。

开发环境

TWaver有多个产品分支,不同的编程语言有不同的开发环境,比如TWaver Java支持JDK1.4+,TWaver Web支持各主流浏览器,TWaver Flex要求Flex SDK 3.4.2+,TWaver .NET需要.NET Framework 3.5+,Silverlight 3.0+,而HTML5版本要求比较现代的浏览器。不同的语言开发平台也不同,这些在我们的开发手册中都有介绍,本书不再重复:

TWaver Java入门:http://doc.servasoftware.com/pages/viewpage.action?pageId=18415915

TWaver Web入门:http://doc.servasoftware.com/pages/viewpage.action?pageId=19010174

TWaver Flex入门:http://doc.servasoftware.com/pages/viewpage.action?pageId=16547882

TWaver .NET入门:http://doc.servasoftware.com/pages/viewpage.action?pageId=19008968

TWaver HTML5入门:http://doc.servasoftware.com/pages/viewpage.action?pageId=20776443

下面以TWaver Java为例介绍 …

分类: TWaver图形界面之道 标签:

打造模块化的TWaver Flex应用

2012年5月9日 paul 149 次阅读 没有评论  

当Flex应用越来越庞大时,问题会越来越多:
1. SWF文件的大小也会越来越大;
2. 下载SWF文件的时间也会越来越长;
3. 如果有多个Flex应用,如何复用相同的代码(包括Flex Framework、自定义组件库和第三方包,比如TWaver Flex);
4. 每次升级后,用户都需要再次重新下载新的SWF文件;
5. 如何在不修改并编译旧SWF文件的情况下,增加新功能;

如何解决这些问题了?
一、 使用动态共享库(Runtime Shared Library)。Flex Framework、自定义组件库和第三方包都是独立的swf文件,Flex应用程序中将不包含Flex Framework、自定义组件库和第三方包的代码,所以:
1. 程序修改后,只用更新用户程序代码,不用更新Flex Framework、自定义组件库和第三方包;
2. RSL被浏览器缓存了,更新用户程序后,RSL不用重新下载;
3. 多个Flex应用可以共享一份RSL,不用重复下载;

二、使用模块化(Modular)。各个功能模块被拆分成不同的SWF文件,所以:
1. 可以单独更新某个功能模块;
2. 可以动态添加模块;

不过单单使用RSL或者Modular,并不能解决所有问题:
1. 仅仅使用RSL时,无法将功能模块拆分,无法动态加载功能模块;
2. 仅仅使用Modular时,无法去除所有模块用到的公共的Flex Framework、自定义组件库和第三方包,导致子模块文件过于庞大;

本文详细介绍了RSL和Modular的结合,帮您打造模块化的、可扩展的、强壮的TWaver Flex应用。

在TWaver Flex中实现垂直文字布局

2012年5月3日 paul 130 次阅读 没有评论  

最近有客户提到如何让Network上网元的标签垂直显示,首先想到的就是每个字符之间插入一个回车,这个用Network#labelFunction就能达到目的。但效果不是很理想,中英文混合时,英文也被一个字母一个字母的分开了。有没有更好的方案了?答案是肯定的,借助于Flex的Flash Text Engine (FTE)和Text Layout Framework (TLF),可以很容易的让文字从上到下显示:

分类: TWaver Flex, TWaver应用 标签: , , ,

TWaver 3D 编辑器的使用(一)----设计3D场景以及数据绑定

2012年5月2日 Skywalker 218 次阅读 没有评论  

TWaver提供了一套3D场景的开发包,用来帮助用户快速搭建3D场景,实现3D的监控系统。这个开发包目前商推的只有Flex框架下的版本,被称为TWaver3D for Flex。开发包提供简单的API,用户向TWaver的数据对象(例如Node)中设定相关的3D style,就可以构建出一套3D场景。(详细的使用方式请参考产品包中的
为了简化用户使用代码搭建3D场景的复杂度,TWaver还提供了一个可视化的编辑工具,用于帮助用户编辑3D场景,然后将场景转换为可读的xml文件。需要再现场景的时候,用户只需要将这份图纸载入系统,实现所见即所得的目的。用户加载完图纸后,就可以根据设计图纸的时候设定的数据绑定关系,实现实时系统监控信息的绑定。

现在就让我给大家详细的介绍一下如何使用Editor工具设计3D场景,如何绑定实时数据。

TWaver图形界面之道(四)如何申请与技术支持

2012年4月24日 Sam 175 次阅读 没有评论  

TWaver如何获取

TWaver是一款商业软件,面向企业用户,出售软件授权,提供支持服务,此外对于非商业用途的项目( 譬如院校,研究所的一些研究性课题),会给于优惠和减免。

要了解TWaver产品,可以先从我们的在线产品示例开始,这能直观全面的了解到TWaver产品的特性,接下来你可以申请产品试用,借助试用包中的类库和资料,可以开始技术预言和原型搭建,期间可多多与我们联系,以便得到及时的帮助,如果通过技术方案通过,确定使用TWaver,这时需要购买我们的开发许可,以便我们提供更多的技术支持以及现场培训,接下来开发完成,项目正式上线时,你需要购买运行许可,我们为产品到运行和维护提供保障,运行许可的费用按项目的客户端或者服务器数量而定,详情请与TWaver商务人员交流。

分类: TWaver图形界面之道 标签:

自定义告警染色

2012年4月20日 五彩鱼 140 次阅读 1 条评论  

在TWaver中,拓扑上的告警呈现的方式是多种多样的,最常见、最通用的是在原来的图片上叠加上告警级别所对应的颜色,这种方式是采取图片颜色叠加处理,也就是在原来网元的图片上叠加上告警的颜色,对于大部分的图片来说是没有什么问题的,比如任意从网上找两种图片进行告警渲染做测试,效果还是可以的,两张图片的染色都还有保持着告警的颜色。但有些图片的渲染就不是那么让人满意了,从客户那边取过来一个icon图片做了一下测试:

分类: TWaver Flex 标签: , , ,

TWaver HTML5 高性能拓扑

2012年4月12日 zht 377 次阅读 1 条评论  

TWaver HTML5临近发布,近期最大的惊喜是添加了一个高性能的拓扑实现,万级别的数据量,轻松搞定

HTML5 WebSocket 应用示例

2012年4月6日 Sam 422 次阅读 没有评论  

继续上一篇《HTML5 WebSocket 技术介绍》的内容,本篇将以示例说明WebSocket的使用,这个示例同时结合了TWaver HTML5的使用,场景如下:后台提供拓扑数据,并以JSON格式通过WebSocket推送到各个客户端,客户端获取到拓扑信息后,通过TWaver HTML5的Network组件呈现于界面,客户端可以操作网元,操作结果通过WebSocket提交到后台,后台服务器更新并通知所有的客户端刷新界面,此外后台服务器端还会不断产生告警,并推送到各个客户端更新界面。

分类: TWaver HTML5, html 标签: ,

HTML5 WebSocket 技术介绍

2012年3月31日 Sam 479 次阅读 2 条评论  

WebSocket介绍

webSocket是html5新引入的技术,允许后台随时向前端发送文本或者二进制消息,WebSocket是一种全新的协议,不属于http无状态协议,协议名为”ws”,这意味着一个websocket连接地址会是这样的写法:ws://twaver.com:8080/webSocketServer。ws不是http,所以传统的web服务器不一定支持,需要服务器与浏览器同时支持, WebSocket才能正常运行,目前的支持还不普遍,需要特别的web服务器和现代的浏览器。

浏览器对WebSocket的支持

服务器对WebSocket的支持

分类: TWaver HTML5, html 标签: , ,

TWaver HTML5 + Node.js + express + socket.io + redis(五)

2012年3月23日 paul 534 次阅读 没有评论  

接上一篇TWaver HTML5 + Node.js + express + socket.io + redis(四), 这一篇将讲解如何用模版生成html页面, 如何验证用户登录, 您将了解到:
1. 模版引擎jade
2. 使用express的session功能

TWaver在电力系统中的应用

2012年3月14日 五彩鱼 609 次阅读 没有评论  

TWaver作为一款专业的图形界面控件,可以应用在各行各业中。本文我们就来详细介绍一下TWaver如何绘制出电力系统的界面。我们现在看看几张电力系统的图:

TWaver图形界面之道(三)TWaver产品家族

2012年3月12日 Sam 458 次阅读 3 条评论  

TWaver产品家族

TWaver Java

TWaver Java是TWaver产品家族中历史最悠久、功能最强大、应用最广泛的一个分支。TWaver Java基于Java 2D和Java Swing技术,相比于JS、Flex、Silverlight、HTML5这些现在热门的Web前段技术,关注Java Swing技术的越来越少,但从技术的成熟性和运行效率考虑,不太在乎Web化,那么TWaver Java将是最佳选择,因为Java版本是目前TWaver所有产品分支中运行效率最高的,而且Java具有良好的跨平台支持,也可以嵌入到网页中,部署和发布都很方便。

TWaver Web

Web 2.0的时代,程序Web化大势所趋,即使是相对保守的企业级应用,也追求全面的Web化,于是TWaver Web孕育而生。最早我们将TWaver Java界面输出VML图形(那时候IE一统天下),后来改用了更加标准化的SVG方案,转换的工作充满着挑战,但当我们将所有TWaver Java的demo输出,效果不分伯仲时,我们知道一切努力都是值得的。后台输出图形,前台JavaScript交互,动态请求图形数据,更新界面,这些正是TWaver Web的设计思想和运行模式。

TWaver Flex

TWaver Web解决了大量客户的需求,但技术在发展,RIA(Rich Internet Application)开始流行,Adobe Flex是RIA的主流技术,TWaver团队与时俱进,积极寻求Flex解决方案。

Flex使用MXML和ActionScript语言开发,ActionScript源于动态脚本语言,兼具动态语言和静态语言的特性,发展到Flex2,其实际使用已经很接近Java,因此,有了Java和JavaScript的基础,学习Flex变得容易,经过两年的研发,TWaver Flex产品诞生,成为客户最为关注的产品分支。

TWaver .NET

RIA的另一种解决方案是Silverlight,Java阵营的最大竞争者是.NET阵营,所以.NET成为一块不得不重视的蛋糕。TWaver Flex开发的同时,我们也在对.NET以及Silverlight技术预言,预言的结果令团队大受鼓舞:Silverlight与Flex有着惊人的相似性。于是在TWaver Flex正式发布不久,TWaver .NET也开始提供试用版本,TWaver .NET完全依照TWaver Flex的设计模式和命名,甚至示例也是完全照搬,软件世界殊途同归真是件大好事,让同一种思想在多个平台落地开花,带来了更多选择。

当然,TWaver .NET并非简单的Copy,它有自己的特点,TWaver .NET分两个版本:TWaver .NET for WPF、TWaver .NET for Silverlight,两者共用大部分代码,另外的那部分通过预处理条件加以区分,TWaver .NET以Silverlight为标准兼容WPF代码。相比Flex版本,.NET版本中使用更多C#高级语言特性,泛型、get/set、委托、事件、Lambda表达式等等,此外.NET版本有很高的运行效率,是Flex版本的两倍以上,这也说明了平台移植的重要性。

各种编程语言和UI技术

不同的编程语言有不同的特性,适用于不同的应用场景,有各自的特点:有的性能高,有的跨平台,有的适合Web应用,下面介绍各种编程语言和UI技术的特点和适用场景:

分类: TWaver图形界面之道 标签:

Make an TWaver HTML5 iPhone App

2012年3月9日 丢丢兄 627 次阅读 没有评论  

构建iOS App有很多技术方式可以选择,本文介绍基于UIWebView的Cocoa Touch组件嵌入HTML页面的方式实现的一个iPhone App例子。文中将穿插iOS的基本内容,TWaver HTML5的基础应用,以及Objective C与Javascript相互调用的技术点。

首先通过XCode构建个Empty Application即可

分类: TWaver Java 标签: