axvelocity是一个Web模板引擎模块,来源于Apache Velocity。由于我的Niagara AX的许可没有axvelocity,因此,在palette中没有找到axvelocity。

但可以在平台的My Modules下找到它。

将axvelocity模块的module.palette下的VelocityServlet拖动到Station的Services下即可开始使用。

双击Services下的VelocityServlet,出现它的Velocity Document Manager视图。

在这个视图中可以点击下方的New按钮添加Velocity文档。

其中最重要的是选择Template File,这个文件可以是任意格式,如文本文件、HTML等,或者以vm结尾,都行,示例如下(velocity1.txt)。

模板文件选择好了,就可以通过浏览器访问它了,如下。

问题来了:

模板引擎的作用是在模板文件中显示不同Java对象的信息,这些Java对象从哪里来呢?

比如,上面展示的模板文件$user.name、$point.out.value中的user、point来自哪儿?

见下图:

velocity document的文档需要配置user、point等java对象,其属性视图如下:

从上图可以看出,需要在Velocity Document的Velocity Context属性下添加Velocity Context Ord Element。

使用结果:

可以通过axvelocity模块展示Niagara系统的信息到HTML界面上,但通过axvelocity来控制Niagara系统里面的点却有些问题,还没搞明白。

axvelocity的语法可以参考apache velocity官网的资料。

最后,Servlet Name的设置,设置完后,访问velocity document的url会有改变,如之前访问是使用:

http://localhost:82/velocity/velocity

更改servlet name后变为:

http://localhost:82/velocityz/velocity

至于在HTML页面中嵌入PX图,使用frameset+frame或者iframe都可以,关键是要设置正确的src,示例如下:

<frameset cols="300,*">
<frame src="/ord?file:^html/menu.html" />
<frame src="/ord?station:|slot:/Services" name="content" />
</frameset>

<body>
<iframe src="/ord?file:^html/menu.html" style="width:19%;height:100%;"></iframe>
<iframe src="/ord?station:|slot:/Services" name="content" style="width:80%;height:100%;"></iframe>
</body>

注意下面的url:

<body>
<a href="/ord?station:|slot:/Services/UserService" target="content">用户管理</a>
<br/>
<a href="/ord?history:/Ben0721/AuditHistory" target="content">历史记录</a>
<br/>
<a href="/velocity/velocity" target="content">velocity</a>
<br/>
<a href="/velocity/velocity2" target="content">velocity 2</a>
</body>

velocity的访问连接是不同的,没有/ord?开头。

ORD可以在Workplace里通过Ctrl + L获得,去掉ORD前面的local:|fox:1912|即可。

Niagara AX之axvelocity的使用的更多相关文章

  1. Niagara AX连接MySQL数据库

    步骤如下 1.安装Niagara AX (3.8.38): 2.安装MySQL(5.6.25):将MySQL\Connector.J 5.1\mysql-connector-java-5.1.35-b ...

  2. Niagara AX之在Station下显示Home节点

    默认的Station下是没有Home节点的,那么,这个Home节点是怎么添加上去的呢? 注意Home后面的描述(Description):“Navigation tree defined by nav ...

  3. Niagara AX之BajaScript资料哪里找

    四个步骤:(开篇:多谢陈工!) 1.Services下添加box->boxService: 2.在Apps下添加BajaScriptTutorialsApp: 3.登录用户的Web Profil ...

  4. [oBIX包使用教程] 使用 Python 通过 oBIX 协议访问 Niagara 数据

    oBIX 全称是 Open Building Information Exchange,它是基于 RESTful Web Service 的接口的标准,用于构建控制系统.oBIX是在专为楼宇自动化设计 ...

  5. Session for SSRS Report of Microsoft Dynamics AX

    Session for SSRS Report of Microsoft Dynamics AX 版权声明:本文为博主原创文章,未经博主允许不得转载. Contract •A data contrac ...

  6. Report processing of Microsoft Dynamic AX

    Report processing of Microsoft Dynamic AX 版权声明:本文为博主原创文章,未经博主允许不得转载. The implementation of a general ...

  7. Microsoft Dynamics AX 7 新特性探索 - Demo 部署(Part 1)

    Dynamics AX 7已经发布了一段时间了,我们知道这次微软为我们带来了许多令人激动的新特性.在这个系列里,Reinhard将揭开New Dynamics AX的神秘面纱,和大家一起探索这些新的特 ...

  8. Inventory Costing in AX 2009

    I wanted to explore some scenarios that illustrate a few important concepts related to inventory cos ...

  9. 理解AX InventTrans的几种状态

    接触AX一段时间后,发现InventTrans表非常重要.它可以说是物流模块的核心,开发BI报表的话必须依赖此报表.   先来看官方释义: InventTrans表包含了库存交易的信息.当销售/采购订 ...

随机推荐

  1. SpringMVC–SSH -- RESTful -- JSR303

    最近在使用SpringMVC+MyBatis感觉用起来效果很好.我不太明白SpringMVC和SSH的关系,遂搜索了一下.原来使用SpringMVC之后,可以替代之前的SSH这种开发模式. 附上知乎链 ...

  2. vim 删除临时文件

    今天在用Xshell连接到CentOS后 使用vim 编辑文档 因为中途有事  临时关闭 并没有保存 再一次打开时 vim 提示要恢复 , 但是每次打开文件后到要恢复,于是找到了以下办法 和vim工作 ...

  3. UIViewController的生命周期及iOS程序执行顺序

    UIViewController的生命周期及iOS程序执行顺序     当一个视图控制器被创建,并在屏幕上显示的时候. 代码的执行顺序1. alloc                         ...

  4. 用RBG颜色设置自定义颜色

    这个是Mac自带的测色计   快捷键shift + command + c即可复制RBG格式的颜色 #DD0000 这个是csdn 的logo里的红色 我们得到的是十六位颜色代码 但是UIColor( ...

  5. Android手机配置gcc,实现手机编译代码

    1.下载gcc.zip 2.把gcc.zip解压存放在/data目录下(也可以是其他目录,看个人习惯) 3.配置gcc环境变量 export GCCHOME=/data/gcc (gcc存放路径) e ...

  6. Keil C51必须注意的一些有趣特性

    Keil c51号称作为51系列单片机最好的开发环境,大家一定都很熟悉.它的一些普通的特性大家也都了解,(书上也都说有)如:因为51内的RAM很小,C51的函数并不通过堆栈传递参数(重入函数除外),局 ...

  7. ActiveX in QT

    http://doc.qt.io/qt-4.8/activeqt.htmlhttp://doc.qt.io/qt-5/activeqt-index.html

  8. Page Controller页面控制器实现

    A Page Controller is one object or file declaration designed to handle the request for one logical w ...

  9. 【Android】使用BaseAdapter实现复杂的ListView

    步骤 使用BaseAdapter实现复杂的ListView的步骤: 1. 数据你要准备好 List getData(). 2. 继承ListActivity专有屏,不再需要setContentView ...

  10. MVC View返回list列表

    );             Sql sql2 = );             Sql sql3 = );             Sql sql4 = );             Sql sql ...