红帽 jboss_红帽JBoss BRMS和BPMS富客户端框架展示了与GWT / Errai / UberFire和AngularJS的多语言集成...

红帽 jboss

上周,我发布了一个博客,重点介绍了我的演示文稿,该演示文稿展示了我们在BRMS和BPMS平台内完成的工作,Drools和jBPM项目的产品化版本所产生的丰富客户端平台。 该演示文稿是所有屏幕截图和视频,您可以在此处找到博客和幻灯片共享的链接: “ Red Hat JBoss BRMS和BPMS Workbench和Rich Client Technology”。

演讲强调了我们UI工作的广泛范围; 展示我们在BRMS和BPMS平台内所做的工作以及UI技术提供的灵活性和适应性。 它为GWT , Errai和UberFire的强大动力提供了很好的证明,这三种技术推动了所有这些。 我们等不及要升级GWT 2.7了 !

如上一个博客所述,UberFire网站只是一个占位符,还没有发布。 该计划是第一个发布我们的0.5版本的计划,但是对于我们的BRMS和BPMS平台而言,则更多。 然后,我们将其移至GWT 2.7并朝着适用于更广泛消费的UF 1.0努力。 在1.0中,我们将添加示例和文档,并致力于使最终用户更容易理解和使用它们。 当然,没有什么可以阻止冒险尝试0.5的,它的代码很健壮,并且已经在BRMS和BPMS内生成了产品-我们一直在寻求帮助,Freenode #uberfire。

该演示文稿本身建立在早期视频的基础上,该视频展示了我们的新Apps框架: Drools和jBPM KIE A​​pps Framework

上面的视频已经演示了我们的多语言功能,构建AngularJS组件并在UF环境中使用它们。 它还显示了我们精美的受JSFiddle启发的新RAD环境。

我现在想与大家分享我们在多语言开发另一侧所做的工作-这次是从AngularJS中使用GWT和UF。 重要的是,我们允许采用AngularJS优先方法,该方法可以与AngularJS人们熟悉的工具链一起使用。 首先是AngularJS,我的意思是AngularJS是最外面的容器。 上面的视频中UF已经在运行,并且是外部容器,可以在其中使用各个AngularJS组件。

在详细说明我们完成的工作之前,首先要涵盖屏幕和透视图的概念,这是我们提供多语言互操作性的两个主要组件-还有其他组件,但这足以理解接下来的视频和示例。 屏幕是我们最简单的组件,它是DIV加上可选的生命周期回调。 透视图也是DIV,但它包含1..n屏幕,具有不同的可能布局管理器和布局持久性。

屏幕

  • CDI发现或以编程方式注册。
  • 页面上的DIV。
  • 生命周期回调。
    • OnStart,OnClose,OnFocus,OnLostFocus,OnMayClose,OnReveal。
  • 通过Errai总线解耦。
    • 组件不会相互调用,所有通信都由总线处理。
  • 编辑器扩展屏幕,与资源类型相关联,并提供其他生命周期
    • onSave,isDirty。

透视

  • CDI发现或以编程方式注册。
  • 1..n屏幕的组成,但本身是DIV。
  • 支持屏幕的可插入窗口管理。
    • 北,东,西南(NESW)。
  • 如果用户重新设计,则支持透视图布局的持久性。
    • 仅适用于NESW和Bootstrap Grid视图。

一幅图片价值一千个单词,因此这里是一个透视图生成器的屏幕截图。 在这里,它使用Bootstrap Grid View布局管理器。 每个网格单元中都有一个屏幕。 透视图将被保存,然后可以在应用程序中使用。 如果使用NESW布局管理器,则没有单独的设计时间,并且所有拖动都就地完成,并且每次更改后,持久性都会在后台发生。 尽管下面的屏幕快照中未显示它,但我们也支持屏幕的列表(下拉列表)和选项卡堆栈。

毛毛

现在回到AngularJS第一种方法的含义。 确定了6个不同点以证明这是可能的。

  1. UF屏幕和透视图应作为AngularJS指令无缝提供。
  2. 预编译UFJS的Bower包装。 UFJS是UF的预编译客户端专用版本。
  3. UFJS可以独立运行,例如file://。 UFJS可以选择与UF战争后端一起使用,从而允许UFJS保存状态所需的观点和其他可选位置的持久性,并可以访问我们提供的所有服务,例如身份管理。
  4. 在开发过程中支持实时刷新。
  5. 嵌套控制器。
  6. 持久性和路由。
  7. 使用诸如Yeoman , Grunt和Karma之类的工具 。

Eder产生了许多示例,您可以自己运行。 这些证明所有问题都已解决。 您可以在此处找到代码以及自述文件,以开始使用。 我们没有提供第7点的视频,因为我认为第1点到第6点的视频表明这不是问题。

Eder还针对每个用例创建了几个运行示例的简短视频,并将它们放入YouTube播放列表。 他添加了文本和标注以使发生的事情更清楚: AngularJS + UF PlayList

  1. 概述,解释每个视频的演示内容(33秒)。
  2. AngularJS App + UFJS,仅客户端,使用Bower分发。 (2分30秒)。
    • 通过Bower安装并使用UFJS
    • 创建一个本机AngularJS应用
    • 将此应用程序与UFJS集成
      • 显示超滤屏幕指令
      • 显示用友观点指令
  3. AngularJS应用程序+ UFJS客户端和UF服务器。
    • 2之1(3分58秒)。
      • 下载用友战争
      • 在EAP上安装并运行
      • 在Apache上下载并运行我们的Angular演示
      • 显示AngularJS路线+ UF集成
    • 2之2(4m06s)。
      • 使用UF创建动态屏幕和透视图
      • 将AngularJS模板封装在UF屏幕中
      • 显示嵌套在父控制器中的AngularJS应用(在UF屏幕内)。
        • 展示了多层控制器嵌套。
  4. 带有AngularJS组件的KIE UF Workbench RAD环境。
  5. Uberfire编辑器可以无缝地用作Eclipse编辑器。

为了完整起见,原始视频显示了JSFiddle启发的RAD环境,该环境演示了UF首个多语言环境。 见上面第4点。

最后,为了演示,并且因为我们可以,我们添加了一个奖励视频,演示了在Eclipse中无缝运行的UF编辑器组件。 这证明了我们的组件模型的强大功能-旨在使我们的组件在任何环境下都可以独立工作。 我们使用Errai拦截所有RPC调用并将它们桥接到Eclipse。 因为我们的编辑者使用的虚拟文件系统像其他服务一样被解耦和抽象了,所以我们可以将其适应Eclipse File io。 对于最终用户,结果是一个无缝的编辑器,它看起来是本机的。 这允许开发可以在Web上和Eclipse甚至IntelliJ中运行的组件。 我们将稍后再公开此示例。

以下是从视频中截取的一些屏幕截图:

OQh5eY6

Y7NRIw0

krbL27k

E75wwoq

NU1uGlk

Hv2pmAh

Q0CP5cu

W9r05En
最后,对所有表示无法完成的人!

w8YXP7O

翻译自: https://www.javacodegeeks.com/2014/11/red-hat-jboss-brms-and-bpms-rich-client-framework-demonstrating-polyglot-integration-with-gwterraiuberfire-and-angularjs.html

红帽 jboss

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/339299.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

你知道自己适合做程序员吗?

哪有什么适不适合?编码本来就不是一件复杂的事情,日常工作不就是敲码、找Bug、 跟产品经理吵架、终于下班了、回家改BUG吗?今天看到了最奇葩的辞职理由:我觉得我数学不好,我不想做编程 我坐不住,我不想做编程 我性格太活泼&…

php dump utfp,php pchart乱码-使用REST接口获取GeoServer中的...-结合 thinkPHP 分页写成自己分页类_169IT.COM...

本页文章导读:▪php pchart乱码 有俩种情况:①:未将中文字符编码格式修改成utf-8 (例子如下:)mb_convert_encoding($data, "html-entities","utf-8" ); ②:字体库出现问题 (请使用simhei.ttf字体 此字体…

eslint quo_Quo Vadis JUnit

eslint quo对我而言, JUnit是Java Universe中最重要的库。 但是我认为它的新版本已经过期。 通过将方法定义作为测试定义的方法,JUnit非常灵活,需要各种技巧……抱歉的功能,要做您实际上应该能够使用的基本(Java 8&…

C/C++冷门知识点你知道多少呢?

在学习C语言的过程中,我们都自己总结了一些重要的知识点,但是有些不常用的冷门知识点可能就被我们选择性忘记了,你要不要来回一下呢?1:int跟signed int是一回事,short、long亦然,但char不是。ch…

判断人物眼型matlab,怎么判断眼型和脸型?

原标题:怎么判断眼型和脸型?为了判断脸部的形状,建议从面部类型诊断的长度和比例来衡量。我们只测量2个地方的长度和宽度。长度是从眉毛位置到嘴巴的长度,宽度是以嘴巴位置为中心到两个脸颊的宽度。脸型大致分为5种类型脸型大致分…

maven 打包编译_您是否真的想加快Maven的编译/打包速度? 那么takari生命周期插件就是答案。...

maven 打包编译像你们中的许多人一样,我正在使用多模块Maven项目 。 与现有的许多系统相比,它不是一个巨大的系统,它具有15个模块,3种不同的耳朵部署,带有属性文件的大量参数化以及大约10万行Java代码。 在开发高峰期&…

C/C++制作人机猜拳小游戏

C语言学完了之后总是感觉做不出什么有意思的东西&#xff0c;今天我们就来做一个好玩的小游戏试试。#include<stdio.h> #include<time.h> #include<conio.h> #include <windows.h>void win(int a, int b); void wait(); void softgame(); void lefttim…

php实现防止sql注入的通用方法,PHP实现防止sql注入的通用方法

function inject_check($sql_str) {return eregi(select|insert|and|or|update|delete|\|\/\*|\*|\.\.\/|\.\/|union|into|load_file|outfile, $sql_str);}function verify_id($idnull) {if(!$id) {exit(没有提交参数&#xff01;);} elseif(inject_check($id)) {exit(提交的参…

r 数据框选子集_在带有组合框的值列表的下拉列表中显示显示属性的子集

r 数据框选子集组合框值列表&#xff08;inputComboboxListOfValues&#xff09;应该是使用LOV的非常流行的ADF Faces组件。 坦白说&#xff0c;这是我最喜欢的值列表方法。 在这篇简短的文章中&#xff0c;我将重点介绍ADF开发人员经常忽略的一项功能。 如果默认情况下定义了L…

学php要懂js吗,js要怎么学

有朋友说想要一个学习javascript&#xff0c;但是不知道如何去学习。本篇文章中小编总结了JavaScript重要知识点以及学习方法&#xff0c;有点长&#xff0c;但是很好用&#xff0c;希望对你有所帮助。this&#xff1a;可以开个坑好好研究研究七、了解nodenode现在可以说是前端…

1024到了,默默给自己点个赞!

只有程序员才能看懂的搞笑图片写了一大堆SQL语句&#xff0c;自己都不敢相信居然运行成功了找bug给客户演示&#xff0c;我的bug没被发现正则表达式返回预期效果正则表达式没有返回预期效果上线两天了&#xff0c;客户突然要改需求&#xff0c;我去年买了个表一口气写完代码&am…

input发送a.jax_Java EE 7 / JAX-RS 2.0:具有自定义HTTP标头的简单REST API身份验证和授权...

input发送a.jax在使用已可用的HTTP协议实施Web服务时&#xff0c;REST带来了很多便利。 通过仅通过指定的URL触发GET&#xff0c;POST和其他HTTP方法&#xff0c;您将确保通过REST服务的响应来完成某些工作。 但是&#xff0c;无论REST给开发人员带来了什么便利&#xff0c;安全…

oracle regr,oracle 分析函数

一、Oracle分析函数入门分析函数是什么&#xff1f;分析函数是Oracle专门用于解决复杂报表统计需求的功能强大的函数&#xff0c;它可以在数据中进行分组然后计算基于组的某种统计值&#xff0c;并且每一组的每一行都可以返回一个统计值。分析函数和聚合函数的不同之处是什么&a…

C语言的main函数,究竟有几种写法?

从学习C语言开始就一直写个一个函数&#xff0c;那么你知道它的标准写法什么什么样吗&#xff1f;main函数&#xff0c;又称主函数&#xff0c;是程序执行的起点&#xff0c;我们平时写的main函数是什么样呢&#xff1f;所以说&#xff0c;其他的写法并不符合标准&#xff0c;有…

apache mesos_在Twitter上使用Apache Mesos和Apache Aurora进行资源调度和任务启动

apache mesos播客的第23集是与Bill Farner的谈话 Bill解释了Twitter如何使用Apache Mesos和Apache Aurora在硬件上获得更多收益&#xff0c;并通过在整个基础架构中利用细粒度的资源调度来节省工程时间&#xff08;开发和运营&#xff09;。 Bill谈到了他在Borg上与Google一起…

oracle大于当前月,oracle 现阶段年 当前月 当前周 当前日

当前位置:我的异常网 数据库 oracle 现阶段年 当前月 当前周 当前日oracle 现阶段年 当前月 当前周 当前日www.myexceptions.net 网友分享于&#xff1a;2013-08-16 浏览&#xff1a;296次oracle 当前年 当前月 当前周 当前日Oracle 当前月 当前周 当前年 2010-12-15 15:54…

C语言函数库:动态库和静态库优缺点比较

函数的重要性我们在编写一个C语言程序的时候&#xff0c;经常会遇到好多重复或常用的部分&#xff0c;如果每次都重新编写固然是可以的&#xff0c;不过那样会大大降低工作效率&#xff0c;并且影响代码的可读性&#xff0c;更不利于后期的代码维护。我们可以把他们制作成相应的…

mysql重置增量_摆脱困境:在每种测试方法之前重置自动增量列

mysql重置增量当我们为将信息保存到数据库的功能编写集成测试时&#xff0c;我们必须验证是否将正确的信息保存到数据库。 如果我们的应用程序使用Spring Framework&#xff0c;则可以为此目的使用Spring Test DbUnit和DbUnit 。 但是&#xff0c;很难验证是否在主键列中插入…

oracle itpub论坛,Oracle Service

本帖最后由 sunyunyi 于 2018-11-10 10:33 编辑目前就职海天起点&#xff0c;服务于电力行业&#xff0c;致力于帮助客户解决生产过程中出现的问题&#xff0c;提高生产效率, 爱好书法&#xff0c;周易&#xff01;愿结交志同道合之士&#xff01;共同进步&#xff01; 微信号&…

Linux C语言结构体

前面学习了c语言的基本语法特性&#xff0c;本节进行更深入的学习。预处理程序。 编译指令: 预处理, 宏定义&#xff0c;建立自己的数据类型&#xff1a;结构体&#xff0c;联合体&#xff0c;动态数据结构c语言表达式工具 逻辑运算符&#xff1a; & | ^ ~ << >&g…