`
xitong
  • 浏览: 6179078 次
文章分类
社区版块
存档分类
最新评论

MetaData Service (MDS) in OA Framework

 
阅读更多
OAF的XML文件有:
  • UIX Pages and Regions.
  • OAF Personalizations
  • BC4J Substitutions (EO, VO Substitutions)
  • BC4J Components (EO.xml, VO.xml, AM.xml, AO.xml, VL.xml)

OAF的很多组件都是以XML的形式存在,但到最终的系统里,OAF的XML文件会存储到数据库表中(JDR_表)。MDS提供API(JDR_UTILS)从JDR表读取,并构建XML的定义。



Table Details
JDR_PATHS Stores document paths, packages and there parent child relationship.
Primary Key: PATH_DOCID
JDR_COMPONENTS Stores components on documents and OA Framework pages.
Primary Key: COMP_DOCID, COMP_SEQ
JDR_ATTRIBUTES Stores attribute/properties of components on documents and OA Framework pages.
Primary Key: ATT_COMP_DOCID, ATT_COMP_SEQ, ATT_SEQ
JDR_ATTRIBUTES_TRANS Stores translated attribute values of document components or OA framework pages.
Primary Key: ATL_COMP_DOCID, ATL_LANG, ATL_COMP_REF, ATL_NAME


JDR_UTILS API

How to get page or region contents from MDS repository
BEGIN
jdr_utils.printDocument('/oracle/apps/fnd/framework/toolbox/tutorial/webui/HelloWorldPG',1000);
END;

Lists all the MDS documents of specified directory currently imported into database.
BEGIN
jdr_utils.listdocuments ('/oracle/apps/per/selfservice.webui', TRUE ) ;
END

Delete a Page from MED repository
BEGIN
jdr_utils.deletedocument ('p_document => /oracle/apps/per/selfservice/webui/somepagePG') ;
END ;



In jDeveloper, when I build a page and its regions, it looks I am building an XML file. Is page definition stored as XML file in OA Framework?
The storage page definition happens in JDR tables, where page components are not stored as XML. But MDS provides API's to build XML definition from the data in JDR tables.
Hence there are two provisions
1. When you design a page, you store "page definiton" in XML format on your pc. When deploying to your system/server, you load this XML file into JDR tables by using command xmlimporter

2. When a user runs the page, OA Framework does the following steps:-
Step a. OA Fwk Requests page definition/structure from (MDS) --note its cached too
Step b. MDS engine returns a xml file to OA Framework
Step c. Each node/component in XML(of Step b) is translated into a web bean object. Let's say your page has
Region-Main
field1
Regionchild
Button

In this case, four web beans objects will be instantiated by OA Framework. A bean object is nothing but an object representation components like fields, buttons, regions etc. A bean object also has methods like setRendered, setRequired, getRequired etc.
Step d. Not only we have beans created for that page, those beans are nested as well, in exactly the same sequence of components within Region-Main. Hence parent child relationship is retained.
Step e. After rendering the page,OA Framework then calls the controller class for that MDS page. The page is displayed to user after processRequest in Controller is completed.


refer:http://oracle.anilpassi.com/mds-in-oa-framework-what-exactly-it-is-2.html





分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics