OFBiz搭建项目详细讲解——Ofbiz表单
目标:通过表单提交数据,并在页面显示
创建公用menu组件,将它应用到表烦页面
一、在表单中提交数据并显示
1、在(hot-deploy/hello/webapp/hello/)下创建hello.ftl,用来制作表单
parameters是ofbiz提供的一个java.util.Map内置对象,是请求参数的映射,以请求参数名和值为(key,value)
2、在点击提交后,根据action="/hello/control/test"发送请求,"test"作为uri,进入controller.xml,找相应的元素进行处理。
在hot-deploy/hello/webapp/hello/WEB-INF/controller.xml中增加一个新的<request-map uri="test">
3、在hot-deplot/hello/widget/HelloScreens.xml中,增加<screen name="testForm" >
<screenlet id="test">:标识名,处理响应的一个表单<form id="test" >,屏幕要引用一个.ftl文件,
就必须要用<platform-specific>标签,按上图的结构。
4、测试:
页面参数显示:嘿嘿
这里commin后,数据直接从parameters中取得并显示,下面的例子通过创建.groovy脚本文件,
数据在groovy中经过处理,以供.ftl取值。
5、在(/hot-deploy/hello/webapp/hello/WEB-INF/actions)下创建testForm.groovy文件
6、要让tsetForm.groovy起作用,需要在HelloScreens.xml中的<screen name="testForm">模式下配置其路径
<actions>元素包含了预处理动作,就是在执行<widgets>显示页面之前,先执行<actions>中的内容,
这里是先执行testForm.groovy脚本。
当终端用户点击提交表单,发送一个请求,根据controller.xml中<request-map>、<view-map>的配置,
调用“testForm”屏幕时,先执行完<actions>中的所有内容,之后再进入到<widgets>。
测试:
页面参数显示:赫赫
groovy:赫 赫
7、第二种方式制作表单提交
在(/hot-deploy/hello/widget/)下创建HelloForm.xml
在hot-deploy/hello/widget/HelloScreens.xml中的<screen name="testForm">模块下配置要显示.xml类型的表单,
需要在<widgets>中用<include-form>标签导入。
配置完之后,访问:https://localhost:8443/hello/control/test,我们看到hello.ftl和HelloForm.xml都显示在一个屏幕上,
这表示屏幕是由一个或多个在<widgets>中定义的元素组成的。
三、在这个应用中为屏幕创建公用的装饰器
1、在(路径:hello/widget/CommonScreens.xml)下创建CommonScreens.xml,这个文件包括公用screens,用来贯穿整个应用。
实际上这个公用装饰器也就是一个屏幕。这个屏幕分为2部分:
(1)<include-menu>导入一个菜单,指定location和name属性
(2)<decorator-section-include name="body"/>这是公用屏幕的“body”部分,当用到公用屏幕的时候,可以往“body”这个部分添加
2、根据hot-deploy/hello/widget/CommonScreens.xml中,<include-menu>location和name属性的设置,
在(/hot-deploy/hello/widget/)下创建HelloMenu.xml,定义一个菜单
<menu>:name=“MainAppBar” 菜单名
title= “” 菜单的标题
extends=“” 继承 extends-resource=“” 继承资源的位置
(这两个属性,Ofbiz已经定义好了,继承后只需简单配置,就可以用了)
<menu-item>:就是一个菜单项
3、把公用组件应用到其他页面上
为 hot-deploy/hello/webapp/hello/hello.ftl 增加公用组件,
到 hot-deploy/hello/widget/HelloScreens.xml 中修改配置
在这个<widgets>中,引入了公共屏幕,屏幕的第一部分是菜单,第二部分是一个“body”,
菜单在CommonScreens.xml中已经指定过了,<decorator-section name="body">就是设置第二部分"body"的内容,
这里把hello.ftl中<form id="test">的表单作为"body"导入。
测试:
OFBiz搭建项目详细讲解——Ofbiz表单相关推荐
- 用C#搭建IE BHO勾子, 取表单密码
授权CSDN, 请在征求同意后转载. 作者: 陈嘉, NetSecure Inc, Canada, 软件工程师 微软在1997年正式退出Browser Helper Object (BHO), 使程序 ...
- Vue.js + Nuxt.js 项目中使用 Vee-validate 表单校验
vee-validate 是为 Vue.js 量身打造的表单校验框架,允许您校验输入的内容并显示对应的错误提示信息.它内置了很多常见的校验规则,可以组合使用多种校验规则,大部分场景只需要配置就能实现开 ...
- SPA项目开发之CRUD+表单验证
目录 一.SPA项目开发之表单验证 二.SPA项目开发之CRUD 一.SPA项目开发之表单验证 我们做项目的都关乎到增删改查的功能,在进行增删改查功能之前,我们必须有一个表单验证. ...
- vant 验证手机号_【uni app】vant weapp的引入和部分详细调用(表单输入框、验证码、弹出层搭配选择器、地图)...
本次小程序的开发使用uni app+vant weapp,vant weapp如何引用和部分组件使用方法如下 引入 在github(https://github.com/youzan/vant-wea ...
- html5表单讲解,HTML5 表单新增元素与属性讲解
01 标签的control属性 中文翻译:控制 在HTML5中,可以再标签内部放置一个表单元素,并且通过该标签的control属性来访问该表单元素. form属性 Form属性 formaction属 ...
- SSM项目 Jquery实现From表单提交 json后台并接受
2019-6-21 山西太原工作 前台整理 文章总结 主要是前后台的交互代码,浪费了两个小时才弄好,注意 前台往后台返回的时候 使用的并非json格式传入后台 , 后台使用@ModelAttribut ...
- SpringCloud工作笔记084---SpringCloud项目中,关于防止表单提交_使用redis+Aspect面向切面实现
技术交流QQ群[JAVA,C++,Python,.NET,BigData,AI]:170933152 这里用注解+redis的方式来防止表单提交 先声明注解: package cn.gov.credr ...
- SPA项目开发(CRUD表单验证)
目录 一.表单验证 二.增删改 一.表单验证 步骤: ①.将以下拷入Articles.vue中分页条下面 <!-- 编辑界面 --><el-dialog :title="t ...
- oracle分区属于什么知识,详细讲解Oracle表分区的相关概念及其优点
Oracle 8i以后推出了分区选项.分区将表分离在若于不同的表空间上,用分而治之的方法来支撑元限膨胀的大表,组大表在物理一级的可管理性.将大表分割成较小的分区可以改善表的维护.备份.恢复.事务及查询 ...
最新文章
- Linux和optee双系统中1020-1023号的中断号的使用
- openstack 用nova API 指定 compute node 创建 instance
- 算法竞赛入门经典(第二版) | 例题4-5 追踪电子表格中的单元格 (UVa512,Spreadsheet Tracking,World Finals)(解法二)
- [蓝桥杯][算法提高VIP]开灯游戏-dfs
- angular开发中对请求数据层的封装
- WINDOWS资源编译器出错信息
- 单机数据库优化的一些实践
- python循环语句总结
- windows卸载linux系统,Windows和Linux双系统下完美卸载linux
- avast注册号|好用的avast注册号|没过期avast注册号
- 深入理解操作系统原理之文件系统
- 【Java对象转换】002- Java 对象与 Map 互转
- 如何画出企业系统架构图
- C语言实现一元二次方程的实根和复根
- 录播服务器系统调试内容,高清录播服务器系统选择注意事项
- 【Datawhale第25期组队学习】Task01:异常检测概念和方法
- java计算机毕业设计ssm兴发农家乐服务管理系统n159q(附源码、数据库)
- 正则表达式以及正则表达式在字符串的替换、切割、获取中的应用
- BBED修改数据文件的SCN
- 为什么资源管理对现代企业很重要?
热门文章
- 10-Stapler-可执行文件提权-内核提权-les.sh-linpeas.sh
- mysql骚操作_关于MySQL的一些骚操作——提升正确性,抠点性能
- 2020/08/28 周末计划
- border.css
- 服务器显示无internet,为何我可以上网,但却显示无internet访问
- 算法 64式 14、排序算法整理_1_1到15题
- Three.js - SpotLight 光源
- TinyXML-2 读 XML 文件
- IAP15F2K61S2芯片引脚图
- Wine Reviews(葡萄酒评论相关数据集)