我正在处理一个遗留项目,该项目使用OracleForms6i(是的,我知道它是旧的)从PLL库调用C++函数。
现在我们需要使用Java而不是C++,因此我们需要从Oracle调用Java (对象/类/方法)。
我知道这是一个很有挑战性的课题,但如果有人能提供一个简单的例子来做以下工作,我会很高兴的:
一个基本的例子,也许哈罗世界将是理想的。
我知道一些PL/SQL,但我不是Oracle窗体开发人员;请原谅我。
如果这是不可能的,你能告诉我一些其他的选择吗?
发布于 2011-05-05 20:05:03
嗯,在通过互联网进行了大量查找之后,我发现了一个非常好的资源(不过是西班牙语):Elias关于Oracle窗体和Java的博客
我用:
在此基础上,我成功地创建了hello world示例:
配置路径环境变量:
Ex: PATH_TO_JAVA = C:\Program
添加到CLASSPATH
创建Java程序
将类导入窗体
在Oracle窗体中创建一个新项目,并创建一个画布,在画布中使用文本和按钮。按钮的名称: TEXT_HI_WORLD。
单击菜单: Program > Import类
如果一切顺利,那么就会有一个新窗口显示这个类所在的包,然后将它扩展到HiWorld类。进口它。
在程序单元中,现在将有两个文件:
这是自动生成并需要使用类的文件。
然后回到画布上,右键单击Button并选择Thrigger当按下按钮时,它的编程将是:
DECLARE
v_wb ORA_JAVA.JOBJECT;
v_hi VARCHAR2(20);
BEGIN
v_wb := hiworld.new();
v_hi:= hiworld.getHi(v_wb);
:TEXT_HI_WORLD := v_hi
END;现在执行程序并单击按钮!:)
希望这能帮助不太了解表单的Java程序员与遗留系统集成!:D
发布于 2017-07-11 21:33:22
我以前已经这样做过,使用一个简单的类应该可以工作,但是当您尝试开发更复杂的东西时,我建议从VBean类扩展,您可以在oracle的窗体安装文件夹(frmall.jar)中找到这个库。
发布于 2013-08-20 16:27:06
// el programa corregido.
public class HolaMundo {
private String hi= "Hey World!!!";
public String GetHi(){
return this.hi;
}
public static void main(String args[]){
HolaMundo hm = new HolaMundo();
System.out.println(hm.GetHi());
}
}https://stackoverflow.com/questions/5890868
复制相似问题