2014-11-02 Created By BaoXinjian


1. OAF(Oracle Application Framework)

是针对EBS12的新的框架,UI比其他版本(form)要好,功能也有所增强, 12里不少新的功能都是基于OAF开发的

2. BC4j(Business Component for java)

业务组件,和“业务”相关的一些java 对象(entity object)

3. DBC file (Database connection file)

数据库链接文件,里面会存储一些权限的信息

4. UIX (Oracle XML user interface framework)

解析和处理XML文件的framework (Oracle XML user interface framework leveraged by the OA Framework for rendering and interacting with HTML web beans)

5. LOV (list of values)

A user interface control that lets users choose a value from a predefined list of values for the purpose of populating one or more fields on a page.


1. OAF结构

MVC结构(BC4J – Module)

EO (entity object对应DB表的object)

VO (view object,可以认为是反映业务级别的object,VO可以包括几个EO)

2. Control 的Class 一定不要读取数据库,可能会出现性能的问题,在OAF的架构里,使用Module 来处理和DB相关的东西的,Control直接调用相应Module的方法来实现

3. 设置“授权的”时候,(允许使用一定的用户链接EBS 的Instance)一定要给相应的用户分配responsibility,否则会链接不上

(1). 如果使用oracle EBS 内置的用户,这种用户默认已经设置了权限,所以可以正常链接

(2). 但如果建立一个新的用户,就必须要设置权限,才保证能够连接上 (或者新建立的新的instance,都需要配置相应的权限)

4. EBS 服务有两个组成

(1). 一个是application 安装EBS整个系统

(2). 另一个是数据库的,可以用不同的服务器

5. OAF的开发需要使用特定的Jdeveloper (需要在metalink上下载),这个版本才是支持EBS的,并且一定要对应正确的EBS版本号(包括小版本) (根据一个DOC ID来对应)

6. 客户端调试的时候,需要使用DBC 文件(需要从服务器端获得),这个文件里包含用户信息和一些认证信息 (XXX.dbc)

7. 一个页面只能使用一个application module

8. OAF 主要的参考文档(可以看到详细的说明,javadoc和例子)支持EBS 的JDeveloper 安装之后,可以看到jdevdoc

9. R12 已经很好地支持了Flexfield (弹性域)

10. OAF是新的技术,拥有很漂亮的界面,但是UI上有很多的局限性,虽然支持一些自定义,但有些看似简单的UI,实现起来很麻烦,或者根本无法实现,所以答应客户更改UI的时候一定要谨慎,不能仅凭自己的直觉来决定,需要和技术顾问探讨,并且了解支持的一些UI布局等

11. OAF 有Page Flow 的概念 (和form的tab 页面可以随意切换是类似的), Step By Step 注册那种,相应的Page 之间可以设置依赖关系

(1). Page Flow 解释一下:

比如需要创建一个含有20个field的数据记录,如果放置在一个页面会使页面很大,所以会将这些字段分类放置到不同的页面,

会出现几个页面(页面直接是有一定的联系,比如,必须创建了第一个页面,才能创建第二个页面)

(2). 对于页面删除 -> 确认删除 -> 最终删除,也属于类似的

12.OAF 和 Form的差别

11. MDS 目录仅仅放置了Page相关的UI页面,(Page / Region)

12. IMPORT 一个新的OAF 页面 ,重新Deploy可以生效 ,建议还是重启服务器

13. 但是更改Class(CO / EO/VO ) 等,必须要 Adoacall 重启这个命令, 最保险的方式重启所有的服务

14. 建议OAF,分开开发和测试环境分开,因为开发可能频繁地重启Server

(1). OAF 可以在本机调试

(2). 避免影响“功能顾问”进行测试

(3). 页面更改,可以不重启服务器,但必须Import (上传到Server不行)

(4). My Classes 文件更改,一般需要重启服务器 (除非可以清空Java Class的Cache)

15. XMLImporter 命令,引入一些文件

(1). 引入到MDS respotiry (数据库)  (注意这个机制,页面相关的那些XML文件,实际都是存储到Sever端的数据库里的,仅仅数据库里的值被更改,才可能生效的)

(2). 上传到服务器(作为备份,不能更改,更改不起作用)

16. Deploy Step

(1). Copy myclasses into JAVA_TOP

(2). Import page (进入到数据库或者文件)

(3). Restart middleware

Thanks and Regards

转载:月下闲谈http://www.lifandong.com/erp/171

OAF_OAF Framework学习笔记的基本概念(概念)的更多相关文章

  1. .NET Remoting学习笔记(一)概念

    目录 .NET Remoting学习笔记(一)概念 .NET Remoting学习笔记(二)激活方式 .NET Remoting学习笔记(三)信道 背景 自接触编程以来,一直听过这个名词Remotin ...

  2. 【转载】.NET Remoting学习笔记(一)概念

    目录 .NET Remoting学习笔记(一)概念 .NET Remoting学习笔记(二)激活方式 .NET Remoting学习笔记(三)信道 背景 自接触编程以来,一直听过这个名词Remotin ...

  3. Entity Framework学习笔记

    原文地址:http://www.cnblogs.com/frankofgdc/p/3600090.html Entity Framework学习笔记——错误汇总   之前的小项目做完了,到了总结经验和 ...

  4. Entity Framework 学习笔记(2)

    上期回顾:Entity Framework 学习笔记(1) Entity Framework最主要的东西,就是自己创建的.继承于DbContext的类: /// <summary> /// ...

  5. ADO.NET Entity Framework学习笔记(3)ObjectContext

    ADO.NET Entity Framework学习笔记(3)ObjectContext对象[转]   说明 ObjectContext提供了管理数据的功能 Context操作数据 AddObject ...

  6. Entity Framework学习笔记——错误汇总

    之前的小项目做完了,到了总结经验和更新学习笔记的时间了.开始正题之前先啰嗦一下,对之前的学习目标进行一个调整:“根据代码生成表”与“生成数据库脚本和变更脚本”合并为“Code First模式日常使用篇 ...

  7. Spring Framework 学习笔记——核心技术之Spring IOC

    Spring Framework 官网文档学习笔记--核心技术之Spring IOC 官方文档 spring-framework-5.3.9 1. Spring Framework 核心技术 1.1 ...

  8. [.NET Framework学习笔记]一些概念

    CIL:Common Intermediate Language 公共中间语言 VB.NET 和 C#.NET 编译以后都生成相同的中间语言,程序集就是由CIL组成的,CIL代码也叫做托管代码,因为C ...

  9. 【原】Learning Spark (Python版) 学习笔记(一)----RDD 基本概念与命令

    <Learning Spark>这本书算是Spark入门的必读书了,中文版是<Spark快速大数据分析>,不过豆瓣书评很有意思的是,英文原版评分7.4,评论都说入门而已深入不足 ...

随机推荐

  1. 告诉我, 究竟我的SQL Server慢在哪里?

    你可以使用下面的语句来使用sys.dm_os_wait_stats这个DMV得到线程的等待信息(线程在等什么, 等了多久)的统计数值. WITH [Waits] AS (SELECT [wait_ty ...

  2. docker 基本原理及快速入门

    作者地址:青牛 什么是docker Docker 是一个开源项目,诞生于 2013 年初,最初是 dotCloud 公司内部的一个业余项目.它基于 Google 公司推出的 Go 语言实现. 项目后来 ...

  3. 动态装载外部JavaScript脚本文件

    当我们请求一个URL地址时,浏览器会从远程服务器装载各种所需的资源,如JavaScript.CSS.图片等.而在加载JavaScript时,常常会发生下面这种情况: 也就是说,当浏览器碰到Script ...

  4. Android制作曲线、柱状图、饼形等图表——使用AChartEngine

    之前在java开发中实现图表使用JFreeChar组件,最近有个小项目要求在Android端进行数据分析,如何实现图表呢?查了一下google提供了一个开源组件Achartengine非常好用,可实现 ...

  5. Transformer中引用iqd作为数据源的时候数据预览出现乱码

    在cognos开发利用transform建模的过程中导入iqd数据源预览乱码问题,下面先描述一下环境 操作系统版本: [root@enfo212 ~]# cat /proc/version Linux ...

  6. Ubuntu 或 UbuntuKyLin14.04 Unity桌面側边栏和顶层菜单条显示异常解决方法

    近期一直想要回到Linux以下去开发,正好Ubuntu14.04桌面版系统在近期公布,所以趁此机会下载了最新版的Ubuntu版本号.并在虚拟机VMware软件上面搭建一改Ubuntu系统,因为眼下有适 ...

  7. OpenNMS编译,打包并在Windows下启动

    1.Download Opennms latest source code 2.Download latest Java JDK and install it. Set JAVA_HOME path ...

  8. 微信小程序开发:设置消息推送

    开发设置中,启用并设置消息推送配置后,用户发给小程序的消息以及开发者需要的事件推送,都将被微信转发至该服务器地址中. 不过照着说明去操作,即使按照最简单的明文方式去设置,还是提示Token验证失败.仔 ...

  9. whereis 命令(转)

    原文:http://www.cnblogs.com/peida/archive/2012/11/09/2761928.html whereis命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b) ...

  10. rmdir 命令(转)

    原文:http://www.cnblogs.com/peida/archive/2012/10/27/2742076.html rmdir命令.rmdir是常用的命令,该命令的功能是删除空目录,一个目 ...