红帽 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吗?今天看到了最奇葩的辞职理由:我觉得我数学不好,我不想做编程 我坐不住,我不想做编程 我性格太活泼&…

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…

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

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

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;安全…

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

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

Linux C语言结构体

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

Linux C语言编程基本原理与实践

重识C语言C语言是一种通用的, 面向过程的编程语言, 在系统与应用软件的开发应用较广是人类和计算机交流的一种方式ANSI C&#xff1a; 是C语言的标准, 为了避免各开发商用的C语言语法的差异C语言的特点: 简单, 快速, 高性能, 兼容性好, 功能强大, 易于学习C语言适合做什么Linux…

listview属性_属性提取器:获取ListView即时更新其元素的最佳方法

listview属性这篇文章是关于如何处理JavaFX ListViews和TableViews的&#xff0c;以及如何通过这些控件了解所包含元素的更改内容。 我想知道为什么在相关书籍中没有找到关于以下模式的任何信息&#xff0c;因为这是一个非常关键的机制。 那里的许多帖子建议通过调用以下命令来…

30分钟了解C 11新特性

什么是C 11C 11是曾经被叫做C 0x&#xff0c;是对目前C 语言的扩展和修正&#xff0c;C 11不仅包含核心语言的新机能&#xff0c;而且扩展了C 的标准程序库&#xff08;STL&#xff09;&#xff0c;并入了大部分的C Technical Report 1&#xff08;TR1&#xff09;程序库(数学的…

外链分享已取消无法下载怎么办_微信升级外链规范:“砍一刀”、“帮我加速吧”将被封禁...

北京商报讯(记者魏蔚)朋友圈、微信群遍布的购物分享链接&#xff0c;再度受到微信严控。10月18日晚间&#xff0c;微信宣布&#xff0c;外链规范即将进行更新升级&#xff0c;新增和细化多项外链规则&#xff0c;包括不可违规使用用户头像&#xff1b;不可诱导、误导下载/跳转&…

ef ddl生成不了脚本_如何使用Hibernate从Play生成DDL脚本! 框架项目

ef ddl生成不了脚本好的&#xff0c;因此您一直在使用hibernate属性名称“ hibernate.hbm2ddl.auto ” value “ 更新 ”来不断更新数据库模式&#xff0c; 但是现在您需要一个完整的DDL脚本吗&#xff1f; 从您的Global Class onStart中使用此方法来导出DDL脚本。 只需为其提…

vue php企业站案例,vue 开发企业微信整合案例分析

本文实例讲述了vue 开发企业微信整合。分享给大家供大家参考&#xff0c;具体如下&#xff1a;概述手机端程序可以和企业微信进行整合&#xff0c;我们也可以使用企业微信JSSDK功能&#xff0c;实现一些原生的功能。整合步骤在整合之前需要阅读 整合步骤。1.引入JSSDKnpm i -S …

Invalid Gradle JDK configuration found_带你了解Gradle编译速度是如何提升70%的

前言Gradle作为一款基于Groovy语言的构建工具&#xff0c;已经吸引众多的ant&#xff0c;maven使用者转投gradle的怀抱&#xff0c;和Gradle相比&#xff0c;ant显得冗余复杂&#xff0c;maven显得有些死板落后&#xff0c;而gradle基于DSL语法&#xff0c;特点明显&#xff1a…

【游戏开发】C 游戏编程实例

网络游戏开发分为&#xff1a;服务器编程、客户端编程、人工智能、数据库管理、游戏策划、美工设计、音乐特效等。大型游戏往往需要团队合作开发&#xff0c;因此面向对象的编程思想在网络游戏中得到了广泛应用。游戏开发基本流程&#xff1a;游戏初始化——游戏实现——游戏结…

linux内核3.14.4,Linux内核4.14.14,4.9.77,4.4.112和3.18.92更新发布

原标题&#xff1a;Linux内核4.14.14&#xff0c;4.9.77&#xff0c;4.4.112和3.18.92更新发布导读正如所承诺的&#xff0c;Linux内核维护者Greg Kroah-Hartman今天发布了针对长期支持的Linux 4.14,4.9,4.4和3.18内核系列的一系列新更新。这些新内核在他们之前发布的一个星期后…

springboot 获取登录浏览器_java项目部署到linux服务器,微信小程序后台springboot项目部署到云服务器(图文详解)...

前面给大家讲了一个点餐系统的开发&#xff0c;包括java点餐后台和微信点餐小程序。可是都是教大家如何在本地把项目跑起来。今天就来教大家如何把这个点餐系统部署到服务器&#xff0c;实现商用。传送门点餐系统的开发&#xff0c;java后台微信小程序&#xff1a;https://blog…