Oracle EBS Form 发布到Server端的注意事项
前段时间在本地XP系统上测试了一些整合javabean的Form例子,想着发布到服务器段去看看能否运行正常,一开始以为会和本地XP系统一样,部署到相关的目录下进行一些配置就可以了,但实际过程却和想象的大相径庭,部署到服务器上可称得上是一波三折。下面将Oracle EBS Form 发布到Server端的若干注意事项阐述如下:
1、确定EBS版本
由于不同版本EBS配置jar文件和发布javabean jar包的位置存在一些差异,所以必须要知道EBS版本,这样遇到问题才好搜索对应的解决方案。可以通过SQLPlus连接EBS数据库来查看服务器上的EBS版本:
SQL*Plus: Release 10.1.0.4.2 - Production on 星期二 11月 17 11:10:46 2015
Copyright (c) 1982, 2005, Oracle. All rights reserved.
连接到:
Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> select RELEASE_NAME from fnd_product_groups;
RELEASE_NAME
--------------------------------------------------------------------------------
12.1.1
SQL>
可以看到本地是12.1.1的版本。
2、确定服务器的操作系统
据了解,EBS在不同操作系统上,javabean jar包配置和上传的目录也存在一些差异,例如我的本地环境是XP,服务器是Linux(Redhat),配置环境就不一样,这也是我一开始安装本地配置总是找不到相应的javabean jar包的原因。XP(windows)系统上传jar包的位置为/forms/java/下,配置文件为form/server/formsweb.cfg.但是Linux为appsweb.cfg!!!
3、确定部署位置
由上面可知待发布的服务器是Linux操作系统,EBS版本为12.1.1。Oracle EBS 中的appsweb.cfg有两个位置,分别是:
1. $OA_HTML/bin and (此配置文件供R11用)
2. $ORA_CONFIG_HOME/10.1.2/forms/server/ (此配置文件供R12用)
在服务器的终端输入一下命令查看$ORA_CONFIG_HOME/10.1.2/forms/server/的实际目录,然后编辑其目录下的appsweb.cfg
[appldev@erp ~]$ $ORA_CONFIG_HOME/10.1./forms/server/
-bash: /u01/oracle/VIS/inst/apps/VIS_erp/ora/10.1./forms/server/: is a director
[appldev@erp ~]$
在appsweb.cfg中找到archive节点(需要追加javahost.jar =>/OA_JAVA/oracle/apps/fnd/jar/javahost.jar,注意是逗号分隔):
archive=/OA_JAVA/oracle/apps/fnd/jar/fndforms.jar,/OA_JAVA/oracle/apps/fnd/jar/fndformsi18n.jar,/OA_JAVA/oracle/apps/fnd/jar/fndewt.jar,/OA_JAVA/oracle/apps/fnd/jar/fndswing.jar,/OA_JAVA/oracle/apps/fnd/jar/fndbalishare.jar,/OA_JAVA/oracle/apps/fnd/jar/fndaol.jar,/OA_JAVA/oracle/apps/fnd/jar/fndctx.jar,/OA_JAVA/oracle/apps/fnd/jar/javahost.jar
这里看到OA_JAVA为虚拟目录,到终端查看其实际目录为:
[appldev@erp ~]$ $OA_JAVA/oracle/apps/fnd/jar/
-bash: /u01/oracle/VIS/apps/apps_st/comn/java/classes/oracle/apps/fnd/jar/: is a
directory
[appldev@erp ~]$
因此将javahost.jar上传到/u01/oracle/VIS/apps/apps_st/comn/java/classes/oracle/apps/fnd/jar/下,这个和$COMMON_TOP/java/classes/oracle/apps/fnd/jar一致。
[appldev@erp ~]$ $COMMON_TOP/java/classes/oracle/apps/fnd/jar
-bash: /u01/oracle/VIS/apps/apps_st/comn/java/classes/oracle/apps/fnd/jar: is a
directory
[appldev@erp ~]$
至此,部署到服务器的文件上传和配置工作完成,然后上传Form到对应的目录,配置菜单即可(客户端和服务器的SSH工具为Bitvise SSH Client)。
4、其他
想在打开javabean窗体时,启用一个进程,打开网址:(苹果系统用open) cmd /c start www.baidu.com?uid=username^&pwd=pwd (此处^可以转义&符号)
执行按钮WHEN-BUTTON-PRESSED触发器代码为:
:BL.RESULT := '' ;
--Set_Custom_Property( 'BL.BEAN', 1, 'SET_PROG', :BL.CMD ) ;
-- use ^ to escape & in teh command line like this:
Set_Custom_Property( 'BL.BEAN',1, 'SET_PROG','cmd /c start www.microstarsoft.com?uid=username__pwd^&pwd=2') ;
然后用代码模拟用户单击,在窗体激活时(WHEN-WINDOW-ACTIVATED)触发按钮事件:
--自动执行单击事件
--GO_ITEM('<block_name>.<button_name>');
--EXECUTE_TRIGGER('WHEN-BUTTON-PRESSED');
GO_ITEM('BL.EXECUTE');
EXECUTE_TRIGGER('WHEN-BUTTON-PRESSED');
默认情况下,Oracle窗体加载后单击关闭按钮无效,在窗体的KEY-EXIT下:
exit_form(no_validate);

Oracle EBS Form 发布到Server端的注意事项的更多相关文章
- Oracle EBS Form Builder使用Java beans创建窗体
最近有个项目,需要研究一下Oracle的E-Business Sutie(EBS),对于以前没接触此套件的我来说,简直太痛苦了.在网上找了一堆资料,试着进行Form二次开发,也遇到各类奇葩问题.目前遇 ...
- 如何启用Oracle EBS Form监控【Z】
前言: 有时候,因某些需要,必须知道Oracle的Form被使用的情况,以方面我们做出决策: 例如,如果某个Form被使用的次数非常多,那么,这个Form的相关SQL代码就应该优先处理,以减少服务器负 ...
- 如何启用Oracle EBS Form监控
前言: 有时候,因某些需要,必须知道Oracle的Form被使用的情况,以方面我们做出决策: 例如,如果某个Form被使用的次数非常多,那么,这个Form的相关SQL代码就应该优先处理,以减少服务器负 ...
- Oracle EBS - Form DEV Env
1. 创建文件夹resource与forms, 以便存放pll与forms(主要用到APSTAND.fmb, APPSTAND.fmb, TEMPLATE.fmb)文件; 2. 修改注册表 HKEY_ ...
- oracle ebs form开发总结
item的布局千万不要去乱动,只要调好长宽和y轴的坐标就好了.form内部集成了很多代码对布局进行动态的调整,而且有一些代码的长宽什么的还是写死了的,我们一动,form可能就识别不了了,然后就显示出来 ...
- Oracle EBS FORM 更改记录状态
get到一个新的思路. 因为validate触发器是无法做go_block或者loop操作的,因此可以尝试修改数据块属性,将状态更新为改动的,触发 ON-UPDATE 触发器,将循环或者跳转语句加入到 ...
- How to set window title name on Oracle EBS Form?
--1. 置換掉原來Winodw Property上的Title String ex. SET_WINDOW_PROPERTY('XXDII_INV_MISC_TXN_V',TITLE,:misc_t ...
- ORACLE EBS FORM 二次开发常用小技巧
1.锁住当前行 Set_Item_Instance_Property('main.import_flag', CURRENT_RECORD, UPDATE_ALLOWED, PROPERTY_OFF) ...
- Oracle EBS FORM lov
存在一种情况: 一个LOV的值当前有效,因此填入保存.但突然无效后,当查询该界面时就会弹出LOV框使其修改. 解决方案: 1. 非常粗暴,不设置校验,在LOV对应的item强行将校验设置为NO. 2. ...
随机推荐
- Script Component 引用package variable
ScriptComponet 的变量分为两种类型,ReadOnly和ReadWrite,使用C#引用这两种类型的变量,有一点不同. 1,创建两个变量 2,将变量传递给script component ...
- hdu1962Corporative Network带权回路
/* 有N个企业,每个企业想要实现通信,要用线路来连接,线路的长度为abs(a-b)%1000; 如果企业a 链接到了企业b 那么b就是the center of the serving! 然后有两种 ...
- 【Android】[转] Android中Bitmap,byte[],Drawable相互转化
一.相关概念 1.Drawable就是一个可画的对象,其可能是一张位图(BitmapDrawable),也可能是一个图形(ShapeDrawable),还有可能是一个图层(LayerDrawable) ...
- [Java 基础]数组
数组初始化 定义数组语法格式 定义数组有两种方式,如下两种格式是等价的: int[] a1; int a1[]; 注:在C/C++中,不支持第一种格式.但是,推荐使用这种方式,因为这样似乎更合理,声 ...
- Entity Framework想说爱你不容易,这么多的报错,这么多的限制,该如何解决?
首先看一下采用MODEL FIRST的方式设计的实体模型对象关系图: 注意:EntityOne中有导航属性:EntityTwo 在如下代码中的几种情况进行新增操作,均会报错,新增都不会成功: stat ...
- SpringMVC——自定义拦截器、异常处理以及父子容器配置
自定义拦截器: 一.若想实现自定义拦截器,需要实现 org.springframework.web.servlet.HandlerInterceptor 接口. 二.HandlerIntercepto ...
- JavaScript的setTimeout和setInterval的深入理解
发表过一片博客<跟着我用JavaScript写计时器>,比较基础.....有网友说应该写一下setTimeout的原理和机制,嗯,今天就来写一下吧: 直奔主题:setTimeout和set ...
- entity framework 5 更新指定字段
dbSet.Attach(good); var stateEntry = ((IObjectContextAdapter)context).ObjectContext. ObjectStateMana ...
- 【转载】那些年我们一起清除过的浮动demo
返回文章:那些年我们一起清除过的浮动 闭合浮动 与 清除浮动 的区别 .main:很抱歉,现代浏览器中我没能把warp撑高(float:left) .side:我也浮动了(float:left) .f ...
- Windows Phone 8.1中AppBarToggleButton的绑定问题
在WP8.1中,应用栏按钮已经可以支持绑定了,而且提供了一种AppBarToggleButton类型,相当于一种开关按钮,这种按钮有一个属性IsChecked,标记是否为选中状态. 于是想当然的,将I ...