前段时间在本地XP系统上测试了一些整合javabean的Form例子,想着发布到服务器段去看看能否运行正常,一开始以为会和本地XP系统一样,部署到相关的目录下进行一些配置就可以了,但实际过程却和想象的大相径庭,部署到服务器上可称得上是一波三折。下面将Oracle EBS Form 发布到Server端的若干注意事项阐述如下:

1、确定EBS版本

由于不同版本EBS配置jar文件和发布javabean jar包的位置存在一些差异,所以必须要知道EBS版本,这样遇到问题才好搜索对应的解决方案。可以通过SQLPlus连接EBS数据库来查看服务器上的EBS版本:

  1. SQL*Plus: Release 10.1.0.4.2 - Production on 星期二 11 17 11:10:46 2015
  2. Copyright (c) 1982, 2005, Oracle. All rights reserved.
  3. 连接到:
  4. Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - 64bit Production
  5. With the Partitioning, OLAP, Data Mining and Real Application Testing options
  6. SQL> select RELEASE_NAME from fnd_product_groups;
  7. RELEASE_NAME
  8. --------------------------------------------------------------------------------
  9. 12.1.1
  10. 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

  1. [appldev@erp ~]$ $ORA_CONFIG_HOME/10.1./forms/server/
  2. -bash: /u01/oracle/VIS/inst/apps/VIS_erp/ora/10.1./forms/server/: is a director
  3. [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为虚拟目录,到终端查看其实际目录为:

  1. [appldev@erp ~]$ $OA_JAVA/oracle/apps/fnd/jar/
  2. -bash: /u01/oracle/VIS/apps/apps_st/comn/java/classes/oracle/apps/fnd/jar/: is a
  3. directory
  4. [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一致。

  1. [appldev@erp ~]$ $COMMON_TOP/java/classes/oracle/apps/fnd/jar
  2. -bash: /u01/oracle/VIS/apps/apps_st/comn/java/classes/oracle/apps/fnd/jar: is a
  3. directory
  4. [appldev@erp ~]$

至此,部署到服务器的文件上传和配置工作完成,然后上传Form到对应的目录,配置菜单即可(客户端和服务器的SSH工具为Bitvise SSH Client)。

4、其他

想在打开javabean窗体时,启用一个进程,打开网址:(苹果系统用open) cmd /c  start www.baidu.com?uid=username^&pwd=pwd (此处^可以转义&符号)

 执行按钮WHEN-BUTTON-PRESSED触发器代码为:

  1. :BL.RESULT := '' ;
  2. --Set_Custom_Property( 'BL.BEAN', 1, 'SET_PROG', :BL.CMD ) ;
  3. -- use ^ to escape & in teh command line like this:
  4. Set_Custom_Property( 'BL.BEAN',1, 'SET_PROG','cmd /c start www.microstarsoft.com?uid=username__pwd^&pwd=2') ;

然后用代码模拟用户单击,在窗体激活时(WHEN-WINDOW-ACTIVATED)触发按钮事件:

  1. --自动执行单击事件
  2. --GO_ITEM('<block_name>.<button_name>');
  3. --EXECUTE_TRIGGER('WHEN-BUTTON-PRESSED');
  4. GO_ITEM('BL.EXECUTE');
  5. EXECUTE_TRIGGER('WHEN-BUTTON-PRESSED');

默认情况下,Oracle窗体加载后单击关闭按钮无效,在窗体的KEY-EXIT下:

  1. exit_form(no_validate);

  

Oracle EBS Form 发布到Server端的注意事项的更多相关文章

  1. Oracle EBS Form Builder使用Java beans创建窗体

    最近有个项目,需要研究一下Oracle的E-Business Sutie(EBS),对于以前没接触此套件的我来说,简直太痛苦了.在网上找了一堆资料,试着进行Form二次开发,也遇到各类奇葩问题.目前遇 ...

  2. 如何启用Oracle EBS Form监控【Z】

    前言: 有时候,因某些需要,必须知道Oracle的Form被使用的情况,以方面我们做出决策: 例如,如果某个Form被使用的次数非常多,那么,这个Form的相关SQL代码就应该优先处理,以减少服务器负 ...

  3. 如何启用Oracle EBS Form监控

    前言: 有时候,因某些需要,必须知道Oracle的Form被使用的情况,以方面我们做出决策: 例如,如果某个Form被使用的次数非常多,那么,这个Form的相关SQL代码就应该优先处理,以减少服务器负 ...

  4. Oracle EBS - Form DEV Env

    1. 创建文件夹resource与forms, 以便存放pll与forms(主要用到APSTAND.fmb, APPSTAND.fmb, TEMPLATE.fmb)文件; 2. 修改注册表 HKEY_ ...

  5. oracle ebs form开发总结

    item的布局千万不要去乱动,只要调好长宽和y轴的坐标就好了.form内部集成了很多代码对布局进行动态的调整,而且有一些代码的长宽什么的还是写死了的,我们一动,form可能就识别不了了,然后就显示出来 ...

  6. Oracle EBS FORM 更改记录状态

    get到一个新的思路. 因为validate触发器是无法做go_block或者loop操作的,因此可以尝试修改数据块属性,将状态更新为改动的,触发 ON-UPDATE 触发器,将循环或者跳转语句加入到 ...

  7. 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 ...

  8. ORACLE EBS FORM 二次开发常用小技巧

    1.锁住当前行 Set_Item_Instance_Property('main.import_flag', CURRENT_RECORD, UPDATE_ALLOWED, PROPERTY_OFF) ...

  9. Oracle EBS FORM lov

    存在一种情况: 一个LOV的值当前有效,因此填入保存.但突然无效后,当查询该界面时就会弹出LOV框使其修改. 解决方案: 1. 非常粗暴,不设置校验,在LOV对应的item强行将校验设置为NO. 2. ...

随机推荐

  1. Enerprise Solution Main 启动方法源代码

    .NET 系统以Main方法作为应用程序的启动入口点,Enterprise Solution的启动程序源代码如下: [STAThread] static void Main() { string MA ...

  2. 【WP开发】在手机屏幕点亮时播放声音

    今天说的内容有点流氓,请诸君在开发应用时谨慎使用. 那么,这活儿到底有多流氓呢? 先介绍一下要实现的功能:当用户按电源键(也可以是双击屏幕)点亮手机的屏幕时播放一下短音乐,而且应用程序可以不在前台运行 ...

  3. 什么才是正确的javascript数组检测方式

    前面的话 对于确定某个对象是不是数组,一直是数组的一个经典问题.本文专门将该问题择出来,介绍什么才是正确的javascript数组检测方式 typeof 首先,使用最常用的类型检测工具——typeof ...

  4. 【目录】Newlife XCode组件相关文章目录

    本博客所有文章分类的总目录链接:本博客博文总目录-实时更新  1.Newlife XCode组件相关文章目录  1.Newlife XCode组件资源目录汇总[2013年版]    2.Newlife ...

  5. HTML Inspector – 帮助你编写高质量的 HTML 代码

    HTML Inspector 是一款代码质量检测工具,帮助你编写更优秀的 HTML 代码.HTML Inspector 使用 JavaScript 编写,运行在浏览器中,是最好的 HTML 代码检测工 ...

  6. 实用js代码大全

    实用js代码大全 //过滤数字 <input type=text onkeypress="return event.keyCode>=48&&event.keyC ...

  7. Cordova webapp实战开发:(1)为什么选择 Cordova webapp?

    很长时间没有专注写代码了,即使写点代码也主要是写写敏捷个人app,这个App主体内容是我用了一周的时间,使用PhoneGap+JQueryMobile搭建的,之所以会比较快的完成,是因为11年我在做建 ...

  8. Windows Azure Cloud Service (44) 将Cloud Service加入Virtual Network Subnet,并固定Virtual IP Address(VIP)

    <Windows Azure Platform 系列文章目录> 在之前的文章中,笔者已经详细介绍了如何将Virtual Machine加入Virtual Network,并且绑定固定的Pr ...

  9. 自制简单的.Net ORM框架 (一) 简介

    在自己研究ORM之前,也使用过几个成熟的ORM方案,例如:EntityFramework,PetaPoco,Dapper 等,用是很好用,但是对自己来说总是不那么方便,EF比较笨重,Dapper要自定 ...

  10. jQuery 3.1 API中文文档

    jQuery 3.1 API中文文档 一.核心 1.1 核心函数 jQuery([selector,[context]]) 接收一个包含 CSS 选择器的字符串,然后用这个字符串去匹配一组元素. jQ ...