ofbiz进击 第一节。 新建自己的webapp项目
创建一个webapp的过程
更新下来项目(直接从svn上面切下来就好),要先ant clean 下,然后在重新ant下。
一:
start sheel here :ant create-component(创建组件) 会在热部署文件夹中自动生成对应的项目文件列表
二:
(可能性)当项目文件夹生成以及项目启动之后,发现项目在页面上显示不了,然后通过直接路径访问,发现项目是存在的,只是项目拒绝访问,是因为在创建项目的时候,填写了 对应的权限,要将访问权限给用户组。
进入到项目的文件夹下面 然后输入命令 ant load-file -Ddata-file=权限文件
三:
如何要创建一个实体对象,需要在framework/entity/entitydef/entitymodel.xml 中添加一个entity节点对象。(需要注意的地方是:字段field 的type 可以根据fieldtypemysql.xml中 查看已经定义好的type类型。)
<entity entity-name="Student" package-name="com.brains.student">
<description>学生</description>
<field name="studentId" type="id-ne"></field>
<field name="studentName" type="name"></field>
<prim-key field="studentId"/>
</entity>
四:
control 文件,实现请求与资源的扭转功能。数据库连接:配置在entityengine.xml中,在fieldtypemysql.xml里,定义了mysql中常用的字段类型。自己构建数据时,尽量创建id小于10000的数据,因为ofibiz的数据引擎在创建数据的时候,会从10000位开始点创建,防止冲突。
五:
在config配置文件中,可以通过配置去实现语言国际化,同时也可以配置实体对象对应的字段属性,当表格填充或者编辑页面的时候,会自动加上列的解释说明。
<property key="FormFieldTitle_roomId">
<value xml:lang="zh">房间ID</value>
<value xml:lang="en">Room ID</value>
</property>
六:
自动根据实体对象类型去填充form列表或者表单的时候,有两种方式:
<auto-fields-service service-name="createStudent"/>(会根据services方式的入参跟出参,去显示页面上的表单内容,即如果是入参必须要填写的话,对应的fieldtext对有输入校验,出参则不会再页面上显示)
<auto-fields-entity entity-name="Student"/> 这种方式的自动装配,会将实体对象的所有属性全部都展示显示出来。
七:
查询 <service service-name="performFind" result-map="result" result-map-list="listIt">注意 当使用这个service的时候,需要注意的是列表名要注意一定要是listIt 。
八:
当使用Java类做方法的时候,如果出现class not found 这样的错误,而很明显,这个类存在于src目录下,则需要在项目上右击,然后在java build path 的souce 标签下添加对应的src文件夹,然后重新启动一下项目,功能就能正常运行了。
九:
在entitymodel.xml中添加类的时候,如果不设定主键的话,表会创建不出来。
十:
修改哪些文件一定要更新
1:service.xml 2:新增java文件的时候 需要更新.3:修改Services.xml类型的文件.
ofbiz进击 第一节。 新建自己的webapp项目的更多相关文章
- ofbiz进击 第二节。 control 理解与创建
首先要说的是,学习ofbiz,要去http://ofbiz.apache.org/官网里面,去看右边菜单里 Management Apps 的例子,然后找到类似的页面,去看调用的源码方法. co ...
- 2014年度辛星html教程夏季版第一节
从今天起开始在博客园开启自己的html教程啦,先从第一节开始把,首先推荐一个网站,就是http:/www.w3cschool.cc,这是一个公开的教学网站,但是它有一个问题,那就是虽然很全面,但是不是 ...
- 第一节:ASP.NET开发环境配置
第一节:ASP.NET开发环境配置 什么是ASP.NET,学这个可以做什么,学习这些有什么内容? ASP.NET是微软公司推出的WEB开发技术. 2002年,推出第一个版本,先后推出ASP.NET2. ...
- Android精通教程-第一节Android入门简介
前言 大家好,给大家带来Android精通教程-第一节Android入门简介的概述,希望你们喜欢 每日一句 If life were predictable it would cease to be ...
- Ext JS学习第十六天 事件机制event(一) DotNet进阶系列(持续更新) 第一节:.Net版基于WebSocket的聊天室样例 第十五节:深入理解async和await的作用及各种适用场景和用法 第十五节:深入理解async和await的作用及各种适用场景和用法 前端自动化准备和详细配置(NVM、NPM/CNPM、NodeJs、NRM、WebPack、Gulp/Grunt、G
code&monkey Ext JS学习第十六天 事件机制event(一) 此文用来记录学习笔记: 休息了好几天,从今天开始继续保持更新,鞭策自己学习 今天我们来说一说什么是事件,对于事件 ...
- android内部培训视频_第一节
声明:本视频为公司内部做android培训时录制的,无任何商业目的.同时鉴于水平有限,可能不符合您的需求,放在这里的目的是提供给公司同事下载,作为培训的一个记录,也作为一个系列教程的自我督促完成的理由 ...
- Maven新建webapp项目index.jsp报错
最近用eclipse新建了一个maven项目,结果刚新建完成index.jsp页面就报错了,先把错误信息贴出来看看 后来就找资料,结果发现两种解决办法,希望可以帮助用得上的人! 第一种:直接在pom. ...
- 我的第一节Android课
我的第一节安卓课程,今天非比寻常的一天,我开始了我程序猿之路的第一节安卓课程,安卓课程只是我的一个兴趣班,我的本专业是java开发,因为喜欢做一个属于自己的一个手机APP,就选多个一样技能,毕竟十八般 ...
- 第四章 跨平台图像显示库——SDL 第一节 与SDL第一次亲密接触
http://blog.csdn.net/visioncat/article/details/1596576 GCC for Win32 开发环境介绍(5) 第四章 跨平台图像显示库——SDL 第一节 ...
随机推荐
- WPF绑定Model的实例对象
创建一个用户控件 1. behindcode指定this.DataContext=XXViewModel 2. "{Binding DataContext.EditModel.MId,Rel ...
- php--yii2.0框架的curl
yii2.0框架的增删改查 //插入操作 save() $customer=new Customer(); $customer->name=‘小熊‘; $customer->save() ...
- 比较setImmediate(func),setTimeout(func),process.nextTick(func)
node中的事件优先级机制: console.log('第一笔!'); process.nextTick(function() { console.log('吃个饭吧!'); setImmediata ...
- 设计模式:职责链模式(Chain Of Responsibility)
定 义:使多个对象都有机会处理请求,从而避免请求的发送者和接受者之间的耦合关系.将这些对象连成一条链,并沿着这条链传递请求,直到有一个对象处理它为止. 结构图: 处理请求类: //抽象处理类 abs ...
- android通过pc脚本执行sqlite3脚本
最近在调研市面上的一些android db框架,需要经常重复的输入一堆比如 adb shell cd /data/data/com.example.testandroiddb/databases sq ...
- Protocol and Delegate
为什么使用委托? 答:比如,我上班的工作主要内容包括 (1)写代码(2)写文档(3)测试程序(4)接电话(5)会见客户 (1)(2)我自己全权负责,但是后面(3)(4)(5)我不想或者不方便自己做,所 ...
- [LeetCode]题解(python):102 Binary Tree Level Order Traversal
题目来源 https://leetcode.com/problems/binary-tree-level-order-traversal/ Given a binary tree, return th ...
- Using Change Management and Change Control Within a Project
In any project, change is inevitable whether it comes from within the project or from external sourc ...
- iOS FMDB官方使用文档 G-C-D的使用 提高性能(翻译)(转)
由于FMDB是建立在SQLite的之上的,所以你至少也该把这篇文章从头到尾读一遍.与此同时,把SQLite的文档页 http://www.sqlite.org/docs.html 加到你的书签中.自动 ...
- iOS 应用程序的生命周期(转CocoaChina)
对于iOS应用程序,关键是要知道你的应用程序是否正在前台或后台运行.由于系统资源在iOS设备上较为有限,一个应用程序必须在后台与前台有不同的行为.操作系统也会限制你的应用程序在后台的运行,以提高电池寿 ...