很多朋友在使用JBuilder来做CORBA Applet的时候,会碰到不少困难。下面是一个教程,不懂的朋友可以照着做一遍,因为能成功,就不会失去信心。然后可以自己再摸一摸。本文中的有些做法不是必须的(甚至是多余的),有些则非此不可。读者可以自己多琢磨琢磨,慢慢也就懂了。
预备工作:
软件
JB4E,JDK1.2,jre-1_2_2_005-win.exe(PlugIn1.2.2_005),Win2000P,IE5
安装及设置
JDK1.2
JB4E及所带的AppServer4.1,并确保已经能做CORBA程序了(JB IDE配置正确)
用RegSvr32/u …beans.ocx卸掉已有的PlugIn,以防干扰。beans.ocx文件所在的目录可用regedit来在注册表中查看。
开始:
1.New一个Project并设置你的Project的JDK指向1.2
2.书写以下IDL
module Module1 { interface Interface1 { long operation1(); }; };
3.生成Server并实现。这里让实现代码如下:
public int operation1() { ServerMonitor.log("(" + _name + ")Interface1Impl.Java operation1()"); return (int)System.currentTimeMillis(); }
粗体字为所输入代码
4.生成一个Applet,加一个jButton和一个jLabel并让局部代码如下:
public class Applet1 extends JApplet { private untitled1.Module1.Interface1 _interface1; String _name = "Interface1"; /**Initialize the applet*/ public void init() { try { jbInit(); org.omg.CORBA.ORB orb = org.omg.CORBA.ORB.init(this, null); _interface1 = untitled1.Module1.Interface1Helper.bind(orb, "/" + _name + "_poa", _name.getBytes()); … void jButton1_actionPerformed(ActionEvent e) { jLabel1.setText(new Integer(_interface1.operation1()).toString()); }
5.编译并打包
6.用以下命令启动AppServer ias ?javahome c:jbuilder4jdk1.3
7.在IDE中启动Server
8.启动一个dos command窗口,进入以下目录 cd inpriseappserverHtmlpublic_html
9.拷贝以下文件到该目录下
untitled1.jar vbjorb.jar Applet1.html jre-1_2_2_005-win.exe
10.修改Applet1.html为Applet2.html,如下
<HTML> <HEAD> <TITLE> HTML Test Page </TITLE> </HEAD> <BODY> untitled1.Applet1 will appear below in a Java enabled browser.<BR> <APPLET CODEBASE = "." archive="vbjorb.jar , untitled1.jar" CODE = "untitled1.Applet1.class" NAME = "TestApplet" WIDTH = 400 HEIGHT = 300 HSPACE = 0 VSPACE = 0 ALIGN = middle > <PARAM NAME="org.omg.CORBA.ORBClass" VALUE="com.inprise.vbroker.orb.ORB"> <PARAM NAME="vbroker.orb.alwaysTunnel" VALUE="true"> <PARAM NAME="vbroker.orb.gatekeeper.ior" VALUE=""> </APPLET> </BODY> </HTML>
11.修改Applet1.html为Applet3.html,如下
<HTML> <HEAD> <TITLE> HTML Test Page </TITLE> </HEAD> <BODY> untitled1.Applet1 will appear below in a Java enabled browser.<BR> <OBJECT classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93" WIDTH = 400 HEIGHT = 300 NAME = "TestApplet" ALIGN = middle VSPACE = 0 HSPACE = 0 codebase="http://127.0.0.1:8080/jre-1_2_2_005-win.exe#Version=1,2,2,0"> <PARAM NAME = CODE VALUE = "untitled1.Applet1.class" > <PARAM NAME = CODEBASE VALUE = "." > <PARAM NAME = ARCHIVE VALUE ="Untitled1.jar , vbjorb.jar" > <PARAM NAME = NAME VALUE = "TestApplet" > <PARAM NAME="org.omg.CORBA.ORBClass" VALUE="com.inprise.vbroker.orb.ORB"> <PARAM NAME="vbroker.orb.alwaysTunnel" VALUE="true"> <PARAM NAME="vbroker.orb.gatekeeper.ior" VALUE=""> </BODY> </HTML>
粗体字(IP地址)可以为13步中所显示的值
12.在该目录下执行 start gatekeeper
13.执行以下程序,记下其中的IP地址 printior gatekeeper.ior
14.执行以下程序观察运行结果 jdk1.2inappletviewer http:/…:8080/Applet2.html
其中URL主机地址为上一步所看到的IP地址
15.在IE5中输入以下URL,观察运行结果
http://…:8080/Applet3.html 其中URL主机地址为13步中所看到的IP地址
怎么样?是不是看到太阳升起来了?
|