OFBiz进阶之HelloWorld(三)使用 Form Widget

1. Now add one more menu item to by name "PersonForm" to your PracticeMenus.xml file.

<menu-item name="PersonForm" title="PersonForm">
<link target="PersonForm" />
</menu-item>

2. Create one file in widget by name PracticeForms.xml and create a list form for showing the records from person entity.

(Take reference from ExampleScreens.xml and ExampleForms.xml files).

<?xml version="1.0" encoding="UTF-8"?>
<forms xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/widget-form.xsd">
    <form name="ListPersons" type="list" list-name="persons" list-entry-name="person"  default-map-name="person" paginate-target="personForm">
        <!-- Important: Here service definition for updatePracticePerson has been used for automatically rendering the form fields, which you can use after completing CRUD operations from Part-3 -->
         <!-- auto-fields-service service-name="updatePracticePerson" default-field-type="display" map-name="person"/-->

         <!-- The above method can be used in case a service specific form is being rendered, otherwise form-fields can be explicitly mentioned as given below:-->
         <field name="firstName"><display/></field>
         <field name="middleName" ><display/> </field>
         <field name="lastName" ><display/> </field>
    </form>
</forms>

3. Create new screen by name personForm and include this list form in it.

<screen name="PersonForm">
        <section>
            <actions>
                <set field="headerItem" value="personForm"/>
                <set field="titleProperty" value="PageTitlePracticePersonForm"/>
                <entity-condition entity-name="Person" list="persons"/>
            </actions>
            <widgets>
                <decorator-screen name="CommonPracticeDecorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <label text="Person List" style="h2"/>
                        <include-form name="ListPersons" location="component://practice/widget/PracticeForms.xml"></include-form>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
</screen>

4. Do the needful for showing this screen in controller.xml.

Now run the application again and observe the difference.
Till Now you have worked on controller requests mappings, Screen widget, form widget, Decorator, Menus, groovy, ftl.

时间: 2024-10-27 06:24:50

OFBiz进阶之HelloWorld(三)使用 Form Widget的相关文章

OFBiz进阶之HelloWorld(一)创建热部署模块

创建热部署模块 参考文档 https://cwiki.apache.org/confluence/display/OFBIZ/OFBiz+Tutorial+-+A+Beginners+Development+Guide 1 在目录hot-deploy下创建目录practice(即为要创建的模块名称) 2 在目录hot-deploy/practice下创建文件ofbiz-component.xml 1 <?xml version="1.0" encoding="UTF-8

OFBiz进阶之HelloWorld(五)创建新实体

1 Creating Custom Entity 新实体的创建你可以再参考 example 组件,为此你可以看下 example 组件的 entitymodel.xml 文件.你可以按下列步骤创建新的实体: a. 在 hot-deploy/practice/  下创建一个 entitydef 的子目录. b. 创建一个 entitymodel.xml 文件.这个文件包括你想定义的实体定义. c. 要装载定义,你需要在 ofbiz-component.xml 文件中定义一个条目,如下: <enti

OFBiz进阶之HelloWorld(二)创建热部署模块

参考文档 https://cwiki.apache.org/confluence/display/OFBIZ/OFBiz+Tutorial+-+A+Beginners+Development+Guide Going ahead, you will create some advanced GUI patterns, interact with existing database tables and will learn how to secure your web application. 1

Hadoop入门进阶步步高(三)-配置Hadoop

三.配置Hadoop 1.设置$HADOOP_HOME/conf/hadoop-env.sh 这个文件中设置的是Hadoop运行时需要的环境变量,在1.2.1版中共有19个环境变量,如下: 变量名称 默认值 说明 JAVA_HOME 设置JDK的路径,这个必须设置,否则Hadoop无法启动,值如: /usr/local/jdk1.6.0_33 HADOOP_CLASSPATH 空 这个用以设置用户的类路径,也可以在执行计算之前设置 HADOOP_HEAPSIZE 1000m 设置Hadoop堆的

java web进阶篇(三) 表达式语言

表达式语言(Expression Language ,EL)是jsp2.0中新增的功能.可以避免出现许多的Scriptlet代码 格式: ${ 属性名称 },  使用表达式语言可以方便的访问对象中的属性,提交的参数或者进行各种数学运算,而且使用表达式语言最大的特点是如果输出的内容是null,则会自动使用空字符串("")表示. <%request.setAttribute("name", "info");%> <h1>${n

GSON使用的学习笔记,进阶篇(三)

本篇笔记内容比较杂乱,没有专门去整理. TypeAdapter 现在轮到TypeAdapter类上场,但考虑到gson默认行为已足够强大,加上项目实践中应用json时场景不会太复杂,所以一般不需要自定义TypeAdapter.TypeAdapter优点是集成了JsonWriter和JsonReader两个类,定义了一套与gson框架交互的良好接口,同时便于管理编码和解码的实现代码,不至于太零碎.因而在了解JsonReader和JsonWriter的使用方法之后,自定义TypeAdapter类来完

[.net 面向对象程序设计进阶] (4) 正则表达式 (三) 表达式助手

[.net 面向对象程序设计进阶] (2) 正则表达式(三) 表达式助手 上面两节对正则表达式的使用及.NET下使用正则表达式作了详细说明,本节主要搜集整理了常用的正则表达式提供参考. 此外为了使用方便,编写了一个<正则表达式助手>方便测试正则表达式. 1.正则表达式助手 1.1 软件概述 软件名称: <正则表达式助手> 版本: 1.0 最后更新日期: 2015/07/01 作者: YuBinfeng 运行环境: .NET Framework 4.6及以上(常用表达式功能,需要联网

OFBiz进阶之环境搭建(eclipse)

一. 环境准备 1. jdk1.6 下载地址:http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javase6-419409.html#jdk-6u45-oth-JPR 2. eclipse 下载地址: 3. mysql 4. navicat for mysql 5. tomcat 二. 环境搭建 1. 配置jdk,配置环境变量 2. 配置tomcat 3. 安装mysql

麦子学院 — 产品进阶课程(三)

学完前面两个阶段的视频我相信大家对产品经理这个职位的职责肯定有了新的认识吧. 给大家说一个我之前培训的时候一个搞笑的事情吧,曾经培训的是平面设计和网页制作.开学的第二天开始用PS制作简单的 icon ,那时候我感觉自己好厉害,什么logo 都可以画出了我基础班上完就可以上班了,干嘛浪费时间嘛- - 后来学了越来越多的设计技能,胆子不是越来越大,反而不敢去面试了.因为学的更多才发现自己懂得很少. 所以小伙伴们千万不要像我这样子无知搞笑,认真的学习每一节课程,做好笔记,好脑子不如烂笔头呢! 这个ic