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 第一节 ...
随机推荐
- C++ 栈和队列
使用标准库的栈和队列时,先包含相关的头文件 #include<stack> #include<queue> 定义栈如下: stack<int> stk; 定义队列如 ...
- Java Web项目调优原则
1. 根据oracle生成的awr文件排除是否是数据库或者sql问题 2.配置中间件的dump文件路径,gc log文件路径 3.通过 MemoryAnalyzer 分析 dump文件 4.通过exc ...
- java endorsed
endorsed目录,充许你将一些特殊的类库放到其中以供项目使用. 官方说明: Specifying the -Djava.endorsed.dirs=lib/endorsed system p ...
- C#Form窗体通过代码改变尺寸
通过Size属性不能得到正确的窗体尺寸, 怎么办? 还需要设置 MaximumSize 属性和你的 size属性尺寸一样. this.FormBorderStyle = FormBorderStyle ...
- jquery全选+下拉+单选+事件+挂事件
1.全选 <body> <input type="checkbox" id="qx" /> 全选 <input type=&quo ...
- NRF51822之GPIOTE使用
---恢复内容开始--- 在上篇介绍nrf51822的GPIOTE http://www.cnblogs.com/libra13179/p/5336580.html 我们现在开始下水游泳. /** @ ...
- Redis学习笔记(1)-Key
package cn.com; import java.text.ParseException; import java.util.List; import java.util.Set; import ...
- Windows下Memcache的安装与在php中使用
memcache dll插件和测试例子下载地址: http://pecl.php.net/package/memcache Windows下Memcache的安装方法 Memcached官方:http ...
- ViewModel命令ICommand对象定义
如果定义如下 public ICommand ViewMenuItemCommand: 那么UI绑定,则无法执行代理方法 需如下定义 public ICommand ViewMenuItemComma ...
- 小易邀请你玩一个数字游戏,小易给你一系列的整数。你们俩使用这些整数玩游戏。每次小易会任意说一个数字出来,然后你需要从这一系列数字中选取一部分出来让它们的和等于小易所说的数字。 例如: 如果{2,1,2,7}是你有的一系列数,小易说的数字是11.你可以得到方案2+2+7 = 11.如果顽皮的小易想坑你,他说的数字是6,那么你没有办法拼凑出和为6 现在小易给你n个数,让你找出无法从n个数中选取部分求和
小易邀请你玩一个数字游戏,小易给你一系列的整数.你们俩使用这些整数玩游戏.每次小易会任意说一个数字出来,然后你需要从这一系列数字中选取一部分出来让它们的和等于小易所说的数字. 例如: 如果{2,1,2 ...