电话:0731-83595998
导航

Jbuilder6.0+Weblogic6.0完成EJB开发部署

来源: 2017-12-21 16:20

 百度广告

  一、环境的建立

  1、 Weblogic6.0与ejb相关的环境配置

  与数据库发生关系的EJB,所以需要建立一个ConnectionPool和DataSource。

  创建ConnectionPool

  (1)我使用的是ORACLE8I数据库。将classes12.zip(Oracle的type4类型jdbc驱动程序)拷贝到bea的相关目录(我这儿放在了mydomain下的lib目录下)。然后在setenv.cmd中的"set CLASSPATH="后面加上%WL_HOME%"config"mydomain"lib"classes12.zip;将驱动程序加入到classpath中。

  (2)启动weblogic并打开控制台(http://127.0.0.1:7001/console),选择左面数型结构的功能栏中的Services-----JDBC----Connection Pools---Create a new JDBC Connection Pool。

  (3)Name栏中输入自己为该Pool定义的名称。例如:TestConnectionPool

  在URL中输入:jdbc:oracle:thin:@127.0.0.1:1521:Oracle (IP、端口号、服务名按照自己的修改);

  在Driver Classname栏中输入:oracle.jdbc.driver.OracleDriver;

  在Properties(key=value)栏中输入:

  user=scott
dll=ocijdbc8

  分别是数据库连接用户名、密码、动态连接库以及协议(其中用户名和密码按自己的修改)。

  在Target页签中选择服务器名,并Apply。

  (4)、其他的参数设置例如Intial Capacity等可以自己按照字面意思进行配置。 

  (1)、在左面树型结构的Services---JDBC---Data Sources下Create a new JDBC Data Source

  (2)、在Name中输入自己定义的名称

  例如:TestDataSourc,在JNDI Name栏中输入:自己定义的名称;

  例如:CRMDBSource,在Pool Name中输入刚才创建的JDBC Connection Pool的Name, 上面的TestConnectionPool,在Targets页中选择服务器名称并Apply即可。

  这样就在Weblogic6.0中建立了Oracle的数据库连接池和数据源。

  配置Weblogic的classpath

  由于我的ejb运行时需要调用别的类,所以必须在classpath中指定路径,例如:我要使用mydomain"applications"testfile这个目录下的文件。那么在setenv.cmd文件中进行如下修改

set APPLICATIONS=."applications
set EX_WEBAPP_CLASSES=%WL_HOME%"config"mydomain"applications"testfile

  然后在set CLASSPATH中加入%CLIENT_CLASSES%;%EX_WEBAPP_CLASSES%;

  在startWeblogic.cmd文件的set CLASSPATH中加入%classpath%;.;

  2、Jbuilder6.0的环境建立

  要想在Jbuilder中使用weblogic,就要先安装Borland App Server,然后才能使用weblogic。(我也不知到为什么,谁能告诉我)我安装了Borland App Server4.5。

  在jbuilder6.0的Tools菜单下选择Enterprise Setup----Application Servers----BAS4.5的BAS4.5 installation directory下选择你的BAS4.5安装的路径,我这儿是D:/Borland/AppServer

   还是在Application Servers页下选择Weblogic6.x,在Weblogic 6.x installation directory下

   在建立Project文件后还要在Project菜单下选择Project Properties---Paths设置你程序运行所需资源文件,一定要添加Weblogic 6.x Client和j2ee.jar。

   还是在上面的界面中选择Servers页,在Application server:下一定要选择Weblogic 

  修改Weblogic6.0的一个Bug,在使用Jbuilder和weblogic联合使用时,最好在计算机系统中设置环境变量。步骤是从我的电脑---属性---高级---环境变量---Administrator的用户变量---新建:变量名:TEMP,变量值:d:"temp;新建:变量名:TMP,变量值:d:"temp。

  我这儿就假设d:"temp是临时目录。如果不这样做,那么在生成jar文件的时候会报奇怪的错误,虽然这好像不影响什么。

  这样所需要的开发环境都已经建好了,下面就可以将全身心都投入到ejb的开发中了!

  1、 通过File菜单的new Project创建一个新的Project,然后再new----选择Enterprise页下的Enterprise JavaBean 1.x,我这儿开发的是ejb1.1。就出现了Enterprise JavaBean Wizard-Step 1 of 3向导窗口(如图1), 因为我们还没有现存的EJB module,所以New一个(如图2),输入你的EJB module名,自定义,ok后继续,出现Wizard-Step 2 of 3(如图3)。这儿定义包名和Bean类名称以及Bean类的基类,还有Bean的属性,是stateless session bean还是Stateful session bean还是….,继续就到了Wizard-Step 3 of 3(如图4),Finish后。你会发现在IDE中已经有了远程接口,Home接口,Bean类以及ejb-jar.xml和weblogic-ejb-jar.xml,全都有了,只要你将它们充实了就行了。特别是XML文件都可以实现可视化的定义操作了。

 




|||

 

 


 

 



  首先定义了一个SQL语句类的接口

 

package hello;

public interface DefaultSQLContext {
public String getParameterType();
}


  例如:hello.TestSQL.Java

 

package hello;
static String paraValue;
return "select baseitemid,datasource,baseitemname,maxlength,description from ctm_baseitem where businesstypeid=?";
public String getParameterType(){
}
//0是查询语句,1表示更新语句;
return 0;
}
||| 
  hello.HelloWord.Java文件如下所示:

 

package hello;
import Javax.ejb.*;
import Java.util.Vector;
public void execute() throws RemoteException;
}

  Hello. HelloWorldBean文件如下所示,真正的执行程序:

 

package hello;

import Java.rmi.*;
import Javax.sql.*;
import Java.util.*;

public class HelloWorldBean implements sessionBean {
private defaultSQLContext sql;
private Connection con = null;
private Vector vResult,vColumnName;
String paraValue;

public void init(){
initCtx= new InitialContext();
con= ds.getConnection();
}catch(Exception e){System.out.println(e);}
/*
public void setSqlContext(String str){
}
private void initSQLContext(){

init();

try{
sql = (defaultSQLContext)aclass.newInstance();
System.out.println("cannot initialize instance"+sqlContext);
}

/*
this.paraValue = str;
*/

public void execute(){
int iColumnCount = 0;
ResultSetMetaData rsm= null;
//首先获得SQLContext;

try{
System.out.println("SQL = "+sql.getSQL());
{
for(int i=0;i

if(sql.getType()==0) //查询;
vResult = new Vector();
rs = ps.executeQuery();
iColumnCount= rsm.getColumnCount();
vInnerValue= new Vector();
for(int j=1;j

温馨提示:因考试政策、内容不断变化与调整,长理培训网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准! (责任编辑:长理培训)

已有 22658 名学员学习以下课程通过考试

网友评论(共0条评论)

请自觉遵守互联网相关政策法规,评论内容只代表网友观点!

精品课程

更多
10781人学习

免费试听更多

相关推荐
图书更多+
拼团课程更多+
热门排行
  • 长理培训微信公众号
    每日推送精彩考试资讯
    长按二维码识别
    微信搜索“ 长理培训
  • 加入QQ群一起来考国网!
    QQ群号:223940140
    点击进入

长理培训客户端 资讯,试题,视频一手掌握

去 App Store 免费下载 iOS 客户端