开发环境应注意问题
安装JDK,并配置JAVA环境变量JAVA_HOME
同时需要申请一个访问EBS服务器的端口。
(注:端口可用别人已申请好了的也可自己再申请新的)
申请端口:mwactl.sh -login apps/apps start 11444
关闭端口:mwactl.sh -login apps/apps stop_force 11444
安装JDeveloper 12c
根据EBS版本,在Metalink上找到合适的JDeveloper版本,与OAF开发共用 JDeveloper,这里JDeveloper安装包为fmw_12.1.3.0.0_soa_quickstart.jar。
设置环境变量JDEV_USER_HOME
JDeveloper安装后启动JDeveloper,在非主目录下的其他路径中找到JDeveloper解压后的子路径\jdevhome\jdev子路径\jdevhome\jdev
如果Win7/8出现显示异常,需要jdevbin\jdev\bin 下的 jdev.conf 配置文件,将以下 注释项去掉,AddVMOption -Dsun.java2d.noddraw=true。
必需Java库及JDBC库文件打包
在EBS服务器中打包需要的JAVA库,命令如下:
cd $JAVA_TOP
jar -cvf mwa.jar oracle/apps/mwa
jar -cvf fnd.jar oracle/apps/fnd
jar -cvf wms.jar oracle/apps/wms
jar -cvf inv.jar oracle/apps/inv
打包完后该目录下的情况:
将打包好的JAVA文件下载到本地。
安装Oracle主目录 下oracle_common\rda\da\lib里面就有多种jdbc库文件,使用ojdbc14.jar。
MWA客户化案例
案例Demo演示案例
创建MWA工程
打开JDeveloper,点击File >New >Applications
点击OK,编辑Application Name
点击Next,编辑Project Name
点击Finish。
加载库文件
双击项目MWADemoProject,并导航到Libraries and
Classpath。点击Add Library 和Add Jar/Directory ,分别加入之前打包好的Jar文件和jdbc库文件。
Function 开发
创建Function文件
右键项目MWADemoProject,选择New -> Java Class
点击OK
修改DemoFunction文件中代码
package oracle.apps.cux.demo_11175.server;
import oracle.apps.inv.utilities.server.OrgFunction;
public class DemoFunction extends OrgFunction {
public DemoFunction() {
super();
setFirstPageName("oracle.apps.cux.demo_11175.server.DemoPage");
addListener(this);
}
}
Page开发
创建Page文件
与创建Function文件的方法一样
修改如下信息:
Name: DemoPage
Package: oracle.apps.cux.demo_11175.server
修改DemoPage文件中代码
package oracle.apps.cux.demo_11175.server;
import java.sql.SQLException;
import oracle.apps.inv.utilities.server.UtilFns;
import oracle.apps.mwa.beans.ButtonFieldBean;
import oracle.apps.mwa.beans.LOVFieldBean;
import oracle.apps.mwa.beans.PageBean;
import oracle.apps.mwa.beans.TextFieldBean;
import oracle.apps.mwa.container.MWALib;
import oracle.apps.mwa.container.Session;
import oracle.apps.mwa.eventmodel.MWAEvent;
import oracle.apps.mwa.eventmodel.MWAPageListener;
public class DemoPage extends PageBean implements MWAPageListener {
public DemoPage(Session paramSession) {
setSession(paramSession);
initLayouts();
initPrompts();
initListeners();
}
private void initLayouts() { }
private void initPrompts() { }
private void initListeners() { }
public void pageEntered(MWAEvent mwaEvent) { }
public vo