OAF二次开发step by step(二)--二次开发的环境的配置

上一篇 / 下一篇  2008-03-01 16:10:10 / 天气: 晴朗 / 心情: 高兴 / 个人分类:Oracle二次开发

查看( 266 ) / 评论( 7 )

$xa(H5k Xy0关于OAF的二次开发,上次说到了初始化OAF的开发环境

_.? Zh @:G_I R5vq[ F0

p5NRtW&i}0初始化后的环境对于全新开发的功能是没有问题的,但是二次开发因为系统内部结构的关系,还需要进行进一步的环境配置才能正常工作。否则,上千条的ERROR会让你无法编译通过。ERP100社区%`Ue+K:X

Cz"qV-IW9Yh0首先,在本地恢复服务器环境ERP100社区 cB$u!uW(z;H
 1、确认设置用户级变量JDEV_USER_HOME和dbc文件ERP100社区(S6`2VTax@
 2、在Jdeveloper中创建数据连接ERP100社区.?&c K3OgU
 3、打开tutorial工作区,并rebuild该project,这样mycalsses目录中的内容就会被创建。ERP100社区Ni"M'yS:Y4R-yH5`1{
 4、创建一个OA Workspace,并创建一个OA Project,在Project Properties面板中,指定刚才下载的dbc文件为该Project的dbc信息文件,并指定Username(应用用户),password,应用短名称和职责关键字。上述的信息需要视你进行的二次开发的模块具体信息而定,比如你要对EAM进行二次开发,就不能在这里使用PM的职责,因为职责权限涉及对后台数据对象以及前台部分模块的访问控制。在默认条件下,myprojects目录下的所有的文件和子目录均会包含进新建的OA Project中,如果你觉得乱的话,可以使用Project Properties对话框中的Exclude选项,将文件或子目录排除出去,只留下该Project相关的文件。ERP100社区!c;b z3ah6^4M-s
 5、用FTP下载服务器上$JAVA_TOP目录下的文件到myclasses目录,一般仅需要下载需要使用的class,比如,EAM开发仅需要下载$JAVA_TOP/oracle/apps/eam下的所有class,注意,下载后的类,需要按照在服务器上的目录结构来进行放置。比如,下载$JAVA_TOP/oracle/apps/eam下的类,在也要将其放置到本地的%JDEV_USER_HOME%\myclasses\oracle\apps\eam目录下。通常会由于网络的问题而导致对于java class文件的下载会比较慢(文件小而多,目录层次深),可以先在telnet上将相应的目录压缩成tar文件,然后再下载。下载下来的目录中包括各层次路径下的java class文件和VO、AM等除RG、PG外的所有的xml文件。ERP100社区/e%T QDG+w_%O8^$F
 6、将myclasses目录下相应子目录下需要进行二次开发的class文件反编译后拷贝到myprojects的相应的子目录路径下,并删掉对应的class文件。ERP100社区T&x2L9V&G/h
 7、下面是使用xml Exporter工具来导出服务器MDS数据库中的页面文件。ERP100社区J1p:w.KS
    我一般习惯于写成bat脚本来在cmd窗口中直接执行。ERP100社区kSo+i#de,h0\ dN
    比如,我的脚本my_export.bat的内容为:
!g x];x#Bz&i0        D:\p6509325_R12_GENERIC\jdevbin\oaext\bin\export.bat %1
H"l5j%TVG#j.Z0          -rootdir D:\export -username apps -password appsERP100社区Nv!K| [ t
          -dbconnection "(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.44)(PORT = 1521))(CONNECT_DATA=(SID=PROD1)))"ERP100社区!a2O`)V$n;Y
        pauseERP100社区9QViS-fA6O
    那么,我需要进行二次开发,导出一个页面的时候,首先使用目标页面上的“关于此页”链接,得到该页面的路径为
8H2{.T TS o Ui-i0        /oracle/apps/eam/workorder/webui/EAM_EW_START_PAGE
v/[ O,v(`3^,u/?0    则我在cmd窗口中切换到脚本所在目录,然后,执行以下命令ERP100社区t#bv.qj1q\ rVA}{
        my_export /oracle/apps/eam/workorder/webui/EAM_EW_START_PAGE
~0`i)XKf2J7K6j0    出现提示信息
c,\#fiq apH0        Exporting /oracle/apps/eam/workorder/webui/EAM_EW_START_PAGE
d'm}8a!qdw,}8j0        Export completed.
0pp*v2Q8t|cX8Vv [0    则表明导出页面成功。
rg3H,~Frn0    此时,你可以在D:\export\oracle\apps\eam\workorder\webui目录下找到EAM_EW_START_PAGE.xml文件。ERP100社区F E(YQ1J{&E9G/]/B
    将导出的整个目录结构保留,并拷贝到myprojects目录下,刷新OAProject,则会发现新增了相应路径下的页面文件。
_4cdPt+`A;K~x0    注:服务器上的$PROD_TOP/mds目录下的xml文件通常情况下与服务器MDS数据库中的xml文件代码是一致的。比如$EAM_TOP/mds目录。但是需要注意xml文件的目录层次结构。ERP100社区u F"zEi+_-vK6d
        我估计该目录下的文件是在应用系统安装时,执行批量导入命令的时候,系统原本的xml文件存放的地方。
@N/I$q C | j%F0    系统的批量导入命令,可以在应用用户applprod下执行ERP100社区0?'u |D}I^
        java oracle.jrad.tools.xml.importer.XMLImporter $JAVA_TOP/oaf_deploy/oracle/apps/eam/workorder/webui/EAM_EW_START_PAGE.xml -rootdir         $JAVA_TOP/oaf_deploy -username apps -password apps -dbconnection "(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ebs.erpsoft.com)(PORT = 1521))(CONNECT_DATA=(SID=PROD)))"ERP100社区 d-w:W(yW x!d

ERP100社区Z4xE.]B8KLuk'QH*?

 8、Make新建的Workspace和Project,会报出一些错误,如果是xml文件错误:应以根元素开头。ERP100社区3`#Zm!u6?8H-[R
    按照错误提示,将相应的xml文件删除即可。此处的错误可能由于应用程序版本的问题,其中保留了过时不用的空xml文件。ERP100社区0kLU |FwT{
    其他错误大多是无法找到相对应的class,此时再根据错误提示信息,下载相应的java class到myclasses目录即可。ERP100社区-hn}0G6Y
 9、当出现0 error(s)提示时,可以Run一下该页面(注意该页面应该是可以在系统功能直接访问的独立页面,而不是明细类的页面,否则需要设置运行时的初始化参数值)。ERP100社区*n!bsw#`#|)^
    运行后的页面,可能会在页面上方出现一大堆的Warning,一般都是提示类型转换的警告,忽略即可。
S*y(K^`@:u"v0    到这里,二次开发的环境的配置基本算是完成了。

o/R%d4Afp!Pvdac0

TAG: oaf OAF Step step 服务器 环境 数据库

freeya freeya 发布于2008-03-01 20:17:36
总结的挺不错的,支付一下
OAF Base Michael 发布于2008-03-01 20:30:35
我在服务器端批量部署的时候,也就是按照目录进行部署,为什么不能成功呢?
老蓝的博客 atomic79 发布于2008-03-01 20:52:50
批量部署不成功,有什么提示吗?
suniangu发布于2008-03-02 21:40:59
谢谢楼主啦!~ OAF正在学习中 唉 郁闷啊 累啊……
xiwang的个人空间 xiwang 发布于2008-07-05 00:02:27
为什么会出现这个错误
error
+cMGn*|,W|El$z     Unable to open file ,a2j4w"S4g7A L"a
CZ

D:\p6509325_R12_GENERIC\jdevhome\jdev\myprojects\oracle\apps\fnd\framework\toolbox\attributesetFwkTbxAd
"H"H*{]7T Ol9m4wERP100社区dresses.xmls\"ERP100社区        M#wLA;JW
the document is not in  the XML_path"C:\p6509325_R12_GENERIC\jdevbin\jdev\myproject,ERP100社区1Qlg8jY5^cX
C:\p6509325_R12_GENERIC\jdevbin\jdev\appsmdsxml"
xiwang的个人空间 xiwang 发布于2008-07-05 00:05:45
怎么会这样???
一切部署好后,run->rebuild 就出现-最专业的ERP社区,帮助你在ERP行业实现价值!l?P2}.xY;e
error
g3RN:VM;v(Q2n     Unable to open filewww.erp100.comT-\I8u
?ZZP

D:\p6509325_R12_GENERIC\jdevhome\jdev\myprojects\oracle\apps\fnd\framework\toolbox\attributesetFwkTbxAdERP, SAP, Oracle ERP,用友,金蝶6?;b
IQ t*[M7J

dresses.xmls\"www.erp100.com;@5@,]:j,F:P*M+Y*]uC p m
the document is not in  the XML_path"C:\p6509325_R12_GENERIC\jdevbin\jdev\myproject,-最专业的ERP社区,帮助你在ERP行业实现价值!7F1x.r4n3Q7a1N{B
C:\p6509325_R12_GENERIC\jdevbin\jdev\appsmdsxml"
老蓝的博客 atomic79 发布于2008-07-05 21:36:23
你是不是以前放在C盘根目录下了?另外检查你的JDEV_USER_HOME是不是指向你当前的工作路径。另外检查开发工作中Project Properties和Default Project Properties属性面板中的Oracle Applications节点下的MDS XML Path指定的是否正确的路径?
O&M:E^)eowww.erp100.com建议,解压后,在移动开发目录前,不要打开开发工具,否则开发工具会根据你的目录来自动指定一些Library的路径。最好一次解压到目录中!
我来说两句

(可选)

日历

« 2008-12-04  
 123456
78910111213
14151617181920
21222324252627
28293031   

数据统计

  • 访问量: 10319
  • 日志数: 81
  • 图片数: 3
  • 文件数: 1
  • 建立时间: 2007-11-22
  • 更新时间: 2008-07-07

RSS订阅

Open Toolbar