jbulder6与weblogic6.1整合

发表于:2007-06-22来源:作者:点击数: 标签:
Weblogic的安装 1)安装Weblogic到d:\下。密码设定为12345678。 2)crack.jar拷到 bea\wlserver6.1\lib目录下,将bea\wlserver6.0\config\mydomain目录中的 start WebLogic .cmd 文件中的set CLASSPATH=.;.\lib\ weblogic _sp.jar;.\lib\weblogic.jar(如果没

   
  Weblogic的安装
  1)安装Weblogic到d:\下。密码设定为12345678。

  2)crack.jar拷到 bea\wlserver6.1\lib目录下,将bea\wlserver6.0\config\mydomain目录中的 startWebLogic.cmd 文件中的set CLASSPATH=.;.\lib\weblogic_sp.jar;.\lib\weblogic.jar(如果没有weblogic_sp.jar,需删掉'.\lib\weblogic_sp.jar;')改为: set CLASSPATH=.;.\lib\crack.jar;.;.\lib\weblogic_sp.jar;.\lib\weblogic.jar(如果在你的项目中使用有其他的jar文件,必须把你的jar文件加在这里。)
  
  把系统环境变量TMP、TEMP改为不带有空格的目录;在JB6里菜单 Project - Default Project Properties-Paths 中把所有带空格的目录改为不带中文名、空格的目录。
  
  JBuilder6 的配置
  1、打开Tools-Enterprise Setup-Application Server,在Weblogic6.x的书签页上,填上BEA home directory(在你安装weblogic时需要指定)和Weblogc installation directory等所有的空白路径。在这以后,你打开Tools-Configure Libraries的话,在左边可以看到已经有了两个WebLogic6.x的包(包括deploy和client),里面的jar(主要是一个weblogic.jar,一个weblogic_sp.jar。其中weblogic_sp.jar是为了给你的weblogic打补丁的时候准备的,你如果没有可以删掉。)都是6.1版本的。
  2、在Tools--Enterprise Setup--Application Server面板下选择Weblogic 6.x把Weblogic installation directory 设置为D:/bea/wlserver6.1 (这样你的jsp也可以用weblogic了),BEA home directory 设置为 D:/bea ,然后点确定。在菜单Project下点击Default Project Properties,选择Servers面板,点击Application server有面的按钮---“….” ,双击应用服务器选择对话框中的Weblogic Application Server 6.x 修改 VM parameters 为:
  -ms64m -mx64m -Djava.library.path=C:/bea/wlserver6.1/bin -Dbea.home=C:/bea -Dweblogic.Domain=mydomain -Dweblogic.Name=myserver -Djava.security.policy==C:/bea/wlserver6.1/lib/weblogic.policy -classpath .;.\lib\weblogic_sp.jar;.\lib\weblogic.jar; .\lib\ mm.mysql-2.0.4-bin.jar(如果在你的项目中使用有其他的jar文件,必须把你的jar文件加在这里。)
  -Dweblogic.management.password=12345678
  点确定
  3、在Tools-Enterprise Setup-CORBA标签页里,点Configuration右边的New...,增加一个weblogic的项; 在Path for ORB tools下,加入Weblogic的目录;在Library for projects下,点"..."加入 Weblogic6.x deploy 的库;在compiler command 填上idlj.exe;在Command option for output directory 填上一个目录路径,但是要注意不能是中文、带空格。
  4、Project-Default Project Properties-Servers 点"..."。这里选择Application Server ,选Weblogic6.x。这时候JB6会自动完成对在Project-Default Project Properties-Path-Required Libraries选Weblogic6.x deploy和Weblogic6.x client,Project-Default Project Properties-Build -IDL在 IDL compiler 选Weblogic。
  关闭Jbuilder. WebLogic配置完成.
  
  下面是制作Entity Bean,数据库是mysql
  在mysql中建表:
  首先在数据库中创建一个用来测试的表,数据库名test 表名 test 我们设置两个字段:
  name vrachar(15)不允许为空主键
  addr varchar(50)允许为空
  
  在Weblogic中建立连接池:
  1.打开开始菜单中的执行Weblogic目录下的Start Default Server,输入密码”12345678”启动Weblogic。
  2.启动”Start Default Console”,输入用户名”system” 密码 “12345678” 进入控制台,在左面菜单中找到”JDBC”项,打开他你会发现子菜单中有一项为”Connection Pools”,右击该项,然后选 ”Configure a new JDBC Connection Pool...” 配置连接池
  属性如下表
  Name mysqlpool
  URLjdbc: jdbc:mysql://localhost/test /test为数据库名/
  Driver Class nameorg.gjt.mm.mysql.Driver
  Properties(key=value):user=root
  Password
  完成后点击Creat按钮。
  3.点击Targets标签,选中myserver,把它移入Chosen项,点击Apply
  4. ”JDBC”项中选中Data Sources,右击该项,然后选 ”Configure a new JDBC Connection Pool...” 配置数据源。
  属性如下表
  Name: mysql
  JNDI Name:mysql
  Pool Name:mysqlpool
  剩下的保持默认。
  5.点击Targets标签,选中myserver,把它移入Chosen项,点击Apply
  6.关闭控制台和Weblogic服务。连接池和数据源已经建好了。
  
  1.打开Jbuilder,新建一个名为hello项目,并在wizard的第2步中,Required Libraries中添加上Weblogic 6.1。
  2.新建一个名为HelloWorld的EJB Moudle。
  3.新建一个Enterpris JavaBean 1.x,选择HelloWorld组,点击下一步。package选择hello, Class name为“FistBean”,options选择Container managed persistence EJB 1.1 entity bean 然后点下一步。点击Finish。
  4.项目下共有3个文件分别是
  First.java,FirstHome.java,FirstBean.java
  在First.java中加入
  public java.lang.String getAddr() throws RemoteException;
  public java.lang.String getName() throws RemoteException;
  public void setAddr(java.lang.String addr) throws RemoteException;
  public void setName(java.lang.String name) throws RemoteException;
  在FistBean.java中
  先删掉其中的:
  public String ejbCreate() throws CreateException {
   /**@todo: Implement this method*/
   return null;
   }
   public void ejbPostCreate() throws CreateException {
   }
  加入
  public String name;
  public String addr;
  public String ejbCreate(String name,String addr) throws CreateException, RemoteException {
  setName(name);
  setAddr(addr);
  return null;
  }
  public String ejbCreate(String name) throws CreateException, RemoteException {
  return ejbCreate(name,null);
  }
  public void ejbPostCreate(String name,String addr) throws CreateException, RemoteException {
  }
  public void ejbPostCreate(String name) throws CreateException, RemoteException {
  }
  public void setName(String name){
  this.name = name;
  }
  public void setAddr(String addr){
  this.addr = addr;
  }
  public String getName(){
  return this.name;
  }
  public String getAddr(){
  return this.addr;
  }
  在FirstHome.java中
  删掉:
  public First create() throws RemoteException, CreateException;
  加入:
  public First create(String name) throws CreateException, RemoteException;
  public First create(String name,String addr) throws CreateException, RemoteException;
  
  5.点击左面菜单中的HelloWorld,然后双击下面的First, 点击右面窗体下面的Resource References标签,点击面板上的Add按钮,在跳出的输入对话框中输入”First”点ok,选择type为java.sql.DataSource。选中First,在下面JNDI Name框中输入hello.FirstHome。选中下面的cmp选项。
  在WebLogic6.x properties标签中,第一行(data-source-name)中加入mysql
  6.展开First,双击cmp1.1,table(s)输入”test”,容器管理表内容如下
  isCMP isPK Field TypeColumn Name(s)Column Type
  选中 选中 name namevarchar(15)
  选中 不选 addr addrvarchar(50)
  7.右击EJB Deployment Descriptor下的JDBC1 DataSources 新建一个名为mysql的数据源,配置如下:
  JNDI name mysql
  URLjdbc: jdbc:mysql://localhost/test
  User name root
  Password
  Driver class name org.gjt.mm.mysql.Driver
  配置完成点击“Test Connection”如正确则显示
  Attempting to connect to database...
  Connection suclearcase/" target="_blank" >cceeded.
  如果显示下面的信息
  Attempting to connect to database...
  Driver not on classpath.
  Add the driver to the classpath using the Set Classpath command.
  则表示数据库的jdbc驱动并不在classpath里,把数据库的驱动添加到项目的Required Libraries中去。
  8.双击左边的HelloWorld,然后点击右面窗口中的 EJB DD Source ,然后选weblogic-cmp-rdbms-jar.xml找到 datasource修改为mysql.
  9.保存后按Ctrl+F9编译,应该没有问题。
  10.新建一个Test EJB Client 全部采用默认设置即可。
  11.再main方法里面找到 FistTestClient1 client = new FistTestClient1();
  然后再后加入下面的代码:
  First ff=client.create("testName","testAddr");
  try {
  System.out.println(ff.getName());
  System.out.println(ff.getAddr());
  }
  catch (java.rmi.RemoteException ex) {
  ex.printStackTrace();
  }
  然

原文转自:http://www.ltesting.net