
ofbiz
文章平均质量分 87
xiaozaq
这个作者很懒,什么都没留下…
展开
-
ofbiz总结——使用performFind查询时如何设置排序
源码分析就不具体分析了。可以参考:ofbiz总结——使用performFind查询时如何设置查询条件值为null的情况下面直接说结论用法:<form name="ListFindStuBatch" list-name="listIt" title="" type="list" paginate-target="FindStuBatch" odd-row-style=..原创 2018-10-29 10:12:44 · 458 阅读 · 0 评论 -
ofbiz总结——实体里的关系名称
每当我们使用genericValue.getRelated()获取迷你语言,通过关系获取对象时,必须知道关系名称。那么关系名称在哪里定义的呢?看下面例子: primary sequenced ID原创 2017-10-26 08:03:07 · 781 阅读 · 0 评论 -
ofbiz总结——学习widget-form.xsd文档
widget-form.xsd中(类似XXXForms.xml文件)时会使用到的元素如下:原创 2017-10-25 15:20:27 · 469 阅读 · 0 评论 -
ofbiz总结——使用entity-auto服务实现增加、修改、删除提示国际化
在使用entity-auto服务时,操作后提示的消息都是英文,想汉化为中文该怎么配置呢?打开文件framework\service\config\ServiceUiLabels.xml ${entityName} created successfully ${entityName} updated successfull原创 2017-10-23 10:31:42 · 760 阅读 · 0 评论 -
ofbiz总结——实体视图定义view-entity
定义实体视图view-entity时默认是使用的view-link关联时,等价于sql的inner join。那要如何才能实现left join呢?访问路径http://ofbiz.apache.org/dtds/entitymodel.xsd查看xml关于view-link标签的定义从上面可以看到有一个rel-optional属性,其默认值是false,表示inner j原创 2017-10-24 13:22:30 · 2593 阅读 · 0 评论 -
ofbiz总结——使用performFind查询时如何设置查询条件值为null的情况
在使用performFind查找时,希望有个查询条件默认为null。比如:当然上面的配置是无法达到目的的,只会导致查询出满足result='null'的记录。通过分析performFind服务的源码,得出解决方案:这样配置后就会在查询是加上条件 result is null具体分析步骤:1. 找到performFind服务的实现源码。源码位置在framework\common\原创 2017-10-25 10:02:35 · 965 阅读 · 2 评论 -
ofbiz总结——Screen Widgets定义中常用的一些标签
1. if-then-else结构 <label text="Condition passed. Showing widgets element. Blah is: ${blah}" /> <label text="Condition failed! Showing fail-wid原创 2017-10-25 11:14:02 · 1370 阅读 · 0 评论 -
ofbiz总结——xml中变量与groovy、BeanShell脚本中变量作用域
在子元素(或在迷你语言中),访问一个screen widget的局部容器是直接和自动的。在局部容器中,简单地赋值给一个变量意味着创建该变量(或者修改它如果已经存在的话)。我们来看下面的一个例子:让我们来看BeanShell中的等同代码。在 LearningScreens.xml中,插入一个新的screen widget ConditionalScreenWithBsh:--------原创 2017-10-25 11:29:43 · 673 阅读 · 0 评论 -
ofbiz实战——实验室预约系统导航页
整体结构项目整体功能介绍:http://blog.youkuaiyun.com/xiaozaq/article/details/78399316项目源码下载:http://download.youkuaiyun.com/download/xiaozaq/10048238界面以及实现代码实验室预约系统共用配置文件:http://blog.youkuaiyun.com/xiaozaq/article/details/78原创 2017-11-01 10:12:40 · 1948 阅读 · 1 评论 -
THE FORM-WIDGET COOKBOOK
转载地址:http://www.opensourcestrategies.com/ofbiz/ofbiz_form_widget_cookbook.txtTHE FORM-WIDGET COOKBOOK========================This document is a series of HOWTOs on using the OFBIZ form-widget to转载 2017-10-16 16:14:56 · 422 阅读 · 0 评论 -
ofbiz总结——OFBiz中有两种类型的ECA规则:SECAs和EECAs
OFBiz中有两种类型的ECA规则:Service Event Condition Actions(SECAs)和Entity Event Condition Actions(EECAs)。SECA对于SECA,触发器(事件)是一个将调用的服务。一个条件可能是如果一个参数等于某个值(条件是可选的),动作是调用另一个服务。SECA定义在与服务定义相同的目录中(servicedef)。在名原创 2017-11-02 09:56:22 · 1592 阅读 · 0 评论 -
ofbiz——excel导出/加载工具类
org.apache.ofbiz.base.util.ExcelUtil类主要实现了excel导出/加载功能。实验室预约系统中主要使用了加载功能。使用方法:List list = ExcelUtil.readExcel(file);这样excel表格里的数据就解析到了list对象里了。需要依赖的jar包:commons-beanutils-1.9.1.jar,poi-3原创 2017-11-02 09:39:13 · 918 阅读 · 0 评论 -
ofbiz——上传工具类HttpRequestFileUpload修改优化
在使用HttpRequestFileUpload类实现文件上传功能时,发现单用户没有选择上传文件时,执行uploadObject.doUpload(request);方法时会报错,所以进行了优化。主要添加了一个Map fileMap;成员。当用户没有上传文件时,其uploadObject.getFile("file控件name")对于获取的值为null。当用户上传多个文件,也会解析保存到f原创 2017-11-02 09:29:16 · 915 阅读 · 0 评论 -
ofbiz实战10——学生管理实现代码
ofbiz项目开发主要代码模块:1.配置controller.xml。(具体路径:hot-deploy\booking\webapp\booking\WEB-INF目录下) 只有配置了controller.xml才能对用户的请求进行映射处理。2.配置XXXScreens.xml与XXXForms.xml。(所在目录:hot-deploy\booking\widget\bo原创 2017-10-31 10:07:00 · 945 阅读 · 0 评论 -
ofbiz学习——创建一个查询页面
创建一个查询页面,比如下面这个demo。1. 分析界面的html源码。右击查询按钮 ——》检查 弹出开发工具窗口,查看对应的html。从上面的源码可以知道,该查找界面是通过component://common/widget/CommonScreens.xml#FindScreenDecorator这个装饰器界面实现的。打开component://common/wi原创 2017-10-16 08:53:37 · 1157 阅读 · 0 评论 -
ofbiz主题优化
当用户只有一个应用权限,并不需要切换应用时,希望能下面那一栏隐藏掉。解决办法:打开apache-ofbiz-16.11.02\themes\flatgrey\template\AppBar.ftl文件原创 2017-11-09 16:37:54 · 608 阅读 · 0 评论 -
ofbiz实战——学生预约申请管理界面以及代码
学生预约申请管理是该项目的核心功能模块,该功能模块需求分为管理员需求和学生需求。管理员角色功能需求:查询学生预约申请,审核预约,考勤管理。学生角色需求:预约实验室项目,取消预约,查看我的预约。返回导航页学生预约申请查询界面:管理员单个审核界面:管理员批量审核界面:管理员批量考勤界面:学生预约申请查询界面:学生取消预约申原创 2017-11-01 10:14:19 · 1331 阅读 · 0 评论 -
ofbiz实战——实验项目批次管理界面以及代码
查询:新增:修改:LabProjectBatchScreens.xml<screens xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://ofbiz.apache.org/Widget-Screen" xsi:schemaLocation="http://原创 2017-11-01 10:14:01 · 623 阅读 · 0 评论 -
ofbiz总结——查询实体时关于orderBy值的格式问题
在使用delegator.findByCondition等方法查询数据库数据时,参数orderByList是一个List类型。里面的值格式有2种格式:1. 使用DESC关键字,如: "name DESC" 或者 "name ASC" (ASC排序可以不用写,默认就是ASC排序,等价"name" )2. 使用负号“-”,如: "-name" 或者 "+name" ("原创 2017-10-26 09:34:09 · 719 阅读 · 0 评论 -
ofbiz总结——常用XML结构定义文档链接
组件级:ofbiz-component.xml:http://ofbiz.apache.org/dtds/ofbiz-component.xsd表单模块:Forms.xml:http://ofbiz.apache.org/dtds/widget-form.xsd菜单模块:Menus.xml: http://ofbiz.apache.org/dtds/widget-menu.x原创 2017-10-26 16:41:48 · 626 阅读 · 0 评论 -
ofbiz——事件和服务中有哪些隐藏对象
总结一些常见的内置对象。掌握ftl,xml,groovy,java文件里哪些内置对象可以直接使用。因为之前开发过程对这方面知识掌握不是很透彻,很多时候都靠不停的调试才获取到正确的参数。事件OFBiz框架为我们在request中放置了一些作为属性的有用对象。其它的有用对象我们可在Session中得到。一旦在需要的地方提取取来,我们就可在Java方法中使用这些可用的对象。请求作为一个参原创 2017-11-06 09:39:13 · 1122 阅读 · 0 评论 -
ofbiz的delegator常用api
首先看针对单个实体的。1.根据主键查询实体findone通过主键找到一个实体。GenericValue findOne(java.lang.String entityName, java.util.Map fields, boolean useCache)例子1:facility = delegator.findOne("Facility", [facilityId : f原创 2017-12-08 10:17:10 · 1334 阅读 · 0 评论 -
在ofbiz中从多个数据库获取数据
要从多个数据库中获取数据,那么必然要连接多个数据库,所以必须配置对应的多个datasource。配置连接数据库在%OFBIZ_HOME%/framework/entity/conf/entityengine.xml文件中定义。例如:<datasource name="mysql30" helper-class="org.apache.ofbiz.entity.d原创 2017-12-07 10:57:50 · 1490 阅读 · 0 评论 -
ofbiz 表单控件之display标签
标签控件display拥有的属性also-hidden description size type currency image-location default-valuealso-hidden:枚举类型(取值范围 true , false),默认值为true。如果该属性设置为true,则对应的表单下会自动创建一个与该控件对应的隐藏的input。例子:如上面的fi原创 2017-12-06 16:30:46 · 680 阅读 · 0 评论 -
ofbiz 使用迷你语言对请求数据进行校验
使用表单控件时,虽然定义了required-field="true",但这样只是界面中控件后面显示一个*号,并不会提交前进行校验,即使为空也一样能提交成功。 <form name="EditInternalOrg" type="single" target="editInternalOrg" default-map-name="partyGroup" header-row-st原创 2017-11-30 17:05:32 · 348 阅读 · 0 评论 -
查看ofbiz生成的sql
查看SQL语句:在ofbiz中通过实体来进行数据的维护。将SQL隐藏在了下层,但是有时候,作为开发人员希望了解一个操作都进行了哪些SQL操作,通过\framework\base\config\debug.properties进行设置我们就可以在runtime目录下的logs的,ofbiz.log的日志中看到我们想看到的信息了。我们需要将print.verbose设置为true;原创 2017-12-08 11:32:35 · 839 阅读 · 1 评论 -
ofbiz widget-form.xsd分析总结1
1. forms标签froms标签是form.xml文件的根节点。文件中只会存在一个。1.1 可包含子标签froms标签可以包含的子标签有:form 和 grid。一般我们都是用的from。下面是form.xml文件根节点定义。一般情况下不用改。 xmlns="http://ofbiz.apache.org/Widget-Form" xsi:schem原创 2017-11-30 11:41:53 · 630 阅读 · 0 评论 -
ofbiz局部刷新on-event-update-area(如分页等)
on-event-update-area当对应表单事件发生时,指定局域会自动刷新。可包含的子标签按顺序包含三个子标签(可以没有,但是顺序不反了。):auto-parameters-service auto-parameters-entity parameter包含的属性event-type:必须,枚举类型,取值有:paginate sort-column submi原创 2017-11-30 11:40:11 · 606 阅读 · 0 评论 -
ofbiz总结——当有很多条消息时右下角“显示全部”乱码
问题:ofbiz操作完成后提示的消息有很多条时,右下角的“显示全部”乱码解决方案:参考lookup查找选中后输入框乱码解决方案,他们原理是相同的。具体步骤:1. 把系统语言切换到en2. 再次操作弹出消息框,可以看奥右下角显示“show all”字符串。3. 在framework\common\config\CommonUiLabels.xml中找到en对应原创 2017-10-25 21:06:44 · 424 阅读 · 0 评论 -
ofbiz总结——Lookup使用的字段包含中文是显示乱码。
问题:在使用Lookup时字段包含中文显示乱码。demo如下图:选择后输入框中显示: 2016-2017学年解决方案:修改文件framework\common\template\includes\AjaxAutocompleteOptions.ftl原文件:原创 2017-10-24 11:07:17 · 1996 阅读 · 0 评论 -
ofbiz 默认ecommerce为中文界面
1.MySQL数据库设置 在mysqld增加 default-character-set=utf8拷贝connetcot到jdbc目录,修改entity目录下xml配置文件,修改为使用mysql数据库,并将字符集设置如下:character-set="utf8"collate="utf8_general_ci"2.修改ecommerce目录下specialp原创 2017-05-26 10:22:04 · 546 阅读 · 0 评论 -
ofbiz修复bug——使用内容组件创建博客文章时报错
使用内容组件创建博客文章时报错。异常信息:ERROR: Could not complete the Create a new Blog Entry [file:/F:/ofbiz/apache-ofbiz-16.11.02/applications/content/minilang/blog/BlogServices.xml#createBlogEntry] process [原创 2017-11-06 15:41:49 · 535 阅读 · 0 评论 -
ofbiz在groovy中输出日志信息,便于调试。
将gson-2.2.4.jar文件放入lib文件夹下,然后在XXXX.groovy文件添加调试语句:import com.google.gson.Gson;gson = new Gson(); Debug.logInfo(gson.toJson(andMap), "CategoryDetailGroovy");然后访问页面(不用重启系统编译。修原创 2017-11-29 10:43:31 · 3004 阅读 · 0 评论 -
ofbiz总结——关于https=false配置使得项目可以项目可以通过http协议访问
因为使用https协议访问项目,浏览器经常提示证书不安全什么的,有些用户小白就不知道点击继续访问,而是直接点击关闭页面了。之后就反馈系统用不了。所以对项目进行配置,使项目支持http协议访问。主要是上面配置的security标签,这个必须要配置,不然http就访问不了。配置为https="false",那么就可以使用http访问了。具体端口配置需要修改下面2个文件apache-ofbi原创 2017-11-03 18:54:06 · 2158 阅读 · 5 评论 -
ofbiz中使用groovy
在widget中声明使用在controller.xml中声明使用(处理事件调用) 在controller.xml中可以以两种方式使用groovy。指定groovy文件路径,分为可指定方法名或不指定两种方式。注意:需在controller.xml文件中配置groovy的事件控制器在service.xml中使用指定groovy文件路径,可不指定方法名原创 2017-11-06 10:13:15 · 952 阅读 · 1 评论 -
ofbiz实战——实验室预约系统项目总结
实验室预约管理系统已经完成,通过此项目对ofbiz的使用做个总结。项目使用过程中使用到的技术点:1.原创 2017-11-02 10:46:54 · 2086 阅读 · 4 评论 -
ofbiz——如何使用set标签定义一个数组
set标签如何定义一个数组?举例来说,在在上面的动作中,我们可以添加:------------------------------------------------------------------------------------------------------和在模板中的FreeMarker代码:----------------------------原创 2017-11-06 08:43:03 · 671 阅读 · 0 评论 -
ofbiz实战——实验项目管理界面以及代码
实验项目管理主要有:curd功能。查询:新增:修改:LabProjectScreens.xml<screens xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://ofbiz.apache.org/Widget-Screen" xsi:schemaL原创 2017-11-01 10:13:14 · 1262 阅读 · 0 评论 -
ofbiz学习——深入分析lookup标签实现原理
上一章介绍了一个查询界面的实现。但是查询条件里有个生产标识的控件lookup实现逻辑没有深入的分析,本章主要就是分析lookup的具体实现逻辑。lookup标签生成的控件有2个功能:1. 类似jquery autocomplete的功能,输入字符后会自动弹出提示选项供用户选择。2. 右边有个小图标,点击小图标可以弹出一个查询窗口,通过查询条件筛选出查询结果后,选中目标选项,自动回填之前原创 2017-10-17 09:58:25 · 1092 阅读 · 0 评论 -
资料管理系统设计和实现
为了方便部门内员工快速掌握相关的业务知识,所以设计实现了一个简单的在线资料管理系统。把一些常见的业务知识整理好,发布在资料管理系统,方便职员遇到问题时查找资料,找到对应的办法解决。主要实现的功能:1.发布的资料可以归类。如:打印机问题,网络问题,电脑问题,电话机问题等等(这些类别可以配置)2.发布的资料可以包含图片,附件文档等等。3.权限控制。登录用户才能发布,编辑和删除资料。原创 2017-11-09 11:35:14 · 1611 阅读 · 0 评论