当前位置: 技术问答>java相关
高手请进,一个ejb入门级的问题!
来源: 互联网 发布时间:2015-11-18
本文导语: 我在试验ejb时,用jb7写了个sessionbean,什么都没改动过,就加了remote类型的 sayhello方法,输出helloworld字句而已,编译通过,发布到weblogic7也是成功的, 可是在写ejb test client时,在main方法 中总是用不起来create()和s...
我在试验ejb时,用jb7写了个sessionbean,什么都没改动过,就加了remote类型的
sayhello方法,输出helloworld字句而已,编译通过,发布到weblogic7也是成功的,
可是在写ejb test client时,在main方法
中总是用不起来create()和sayhello()方法。
例如我的main是这样的
ejbtestclient client = new ejbtestclient();
client.create(); //这个方法无法写的出来,总是报错。
System.out.println(client.sayhello()); //这个就更报错了!
然后我用debug看了一下,发现jndi的lookup找不到我的bean,我不知道是不是weblogic7部署出问题了,我的部署是按照下面的例子一一照做的:
配置WLS7
假如WLS7安装在c:bea下,进入c:beaweblogic700bin目录,修改startWLS.cmd(注意首先修改这个
文件是因为有的文档上说修改c:beauser_projectsmydomain下的startWeblogic.cmd,是不对的。)首先修
改这个文件是这时c:beauser_projectsmydomain下的startWeblogic.cmd还没有产生,保证你不会改错。如
果是linux下修改startWLS.sh
找到set CLASSPATH=%JAVA_HOME%libtools.jar;%WL_HOME%serverlibweblogic_sp.jar;
%WL_HOME%serverlibweblogic.jar;%CLASSPATH%
加上mysql.jar:成
set CLASSPATH=%JAVA_HOME%libtools.jar;%WL_HOME%serverlibweblogic_sp.jar;
%WL_HOME%serverlibweblogic.jar;pathmysql.jar;%CLASSPATH%
存档退出,在启动菜单上运行BEA Weblogic platform 7.0 -> domain configuration wizard有的就叫
configuration wizard。
1.Select a template:选择WLS Domain,Name默认的mydomain
2.Choose Server Type: 第一个
3.Specify directory for "mydomain" domain:C:beauser_projects
4.value Administrative Server Info-Admin Server Name or IP 写机器的ip,这样保险,其它默认
5.Configure Managed Server: Server Name:默认为myserver
Server Listen Address:写机器的ip .其它默认
6.Create System UserName and Password:写用户名和密码,如:system:aaaaaa
7.Install Server as Windows Servic:这里问要不要在启动操作系统时启动,可根据自己的需用选择。
8.Install Domain in Windows Start Menu:这里问要不要在开始菜单添加快捷方式,建议是“Yes”.
这样在开始菜单中会出现EBA Weblogic Platform 7.0->User projects-my domain->Start Server
如果8选择了yes,现在就从开始->EBA Weblogic Platform 7.0->User projects-my domain->Start Server启动
等一会儿,启动结束后进入:http://localhost:7001/console如果找不到页面把localhost换成主机名或IP试试
如果不能进入检查上面的步骤,反正这里如果不能访问向下做了,死也要给我访问到这个页面。
输入刚才的用户名和密码(system:aaaaaa)进入。
在左边的目录树中选中Services->JDBC->Connection Pools,单击右侧的Configure a new JDBC Connection Pool.
输入以下信息:
Configuration->General页:
Name = Mysql Connection Pool
URL = jdbc:mysql://localhost:3306/ejbdb(注意ejbdb是我上面的例子字段,以下都会这样)
Driver classname = org.gjt.mm.mysql.Driver
Properties :
user=root
password=111111 这两行是Properties 的内容,就是name=value形式
单击Create建立连接池。
选择Targets->Server页:
将myserver(服务器名称)移至右侧的列表中,但击单击Apply
在左边的目录树中选中Services->JDBC->Data Sources(或者TXData Sources)单击右侧的Configure a new JDBC
Connection Pool.,输入以下信息:
Configuration->General页:
Name = Mysql Tx Data Source
JNDI Name = ejbPool 这个名字就是你以后要引用的DataSource名称
Pool Name = Mysql Connection Pool
选中Emulate Two-Phase Commit for non-XA Driver和Row Prefetch Enabled
单击Create建立数据源。
Targets->Server页:
将myserver(服务器名称)移至右侧的列表中,但击单击Apply,配置完毕
而我的jb7的配置也应该没什么问题的,因为我用jdbc和datasource时都没问题的,
就是在写ejb时不行。高手帮忙看看!
sayhello方法,输出helloworld字句而已,编译通过,发布到weblogic7也是成功的,
可是在写ejb test client时,在main方法
中总是用不起来create()和sayhello()方法。
例如我的main是这样的
ejbtestclient client = new ejbtestclient();
client.create(); //这个方法无法写的出来,总是报错。
System.out.println(client.sayhello()); //这个就更报错了!
然后我用debug看了一下,发现jndi的lookup找不到我的bean,我不知道是不是weblogic7部署出问题了,我的部署是按照下面的例子一一照做的:
配置WLS7
假如WLS7安装在c:bea下,进入c:beaweblogic700bin目录,修改startWLS.cmd(注意首先修改这个
文件是因为有的文档上说修改c:beauser_projectsmydomain下的startWeblogic.cmd,是不对的。)首先修
改这个文件是这时c:beauser_projectsmydomain下的startWeblogic.cmd还没有产生,保证你不会改错。如
果是linux下修改startWLS.sh
找到set CLASSPATH=%JAVA_HOME%libtools.jar;%WL_HOME%serverlibweblogic_sp.jar;
%WL_HOME%serverlibweblogic.jar;%CLASSPATH%
加上mysql.jar:成
set CLASSPATH=%JAVA_HOME%libtools.jar;%WL_HOME%serverlibweblogic_sp.jar;
%WL_HOME%serverlibweblogic.jar;pathmysql.jar;%CLASSPATH%
存档退出,在启动菜单上运行BEA Weblogic platform 7.0 -> domain configuration wizard有的就叫
configuration wizard。
1.Select a template:选择WLS Domain,Name默认的mydomain
2.Choose Server Type: 第一个
3.Specify directory for "mydomain" domain:C:beauser_projects
4.value Administrative Server Info-Admin Server Name or IP 写机器的ip,这样保险,其它默认
5.Configure Managed Server: Server Name:默认为myserver
Server Listen Address:写机器的ip .其它默认
6.Create System UserName and Password:写用户名和密码,如:system:aaaaaa
7.Install Server as Windows Servic:这里问要不要在启动操作系统时启动,可根据自己的需用选择。
8.Install Domain in Windows Start Menu:这里问要不要在开始菜单添加快捷方式,建议是“Yes”.
这样在开始菜单中会出现EBA Weblogic Platform 7.0->User projects-my domain->Start Server
如果8选择了yes,现在就从开始->EBA Weblogic Platform 7.0->User projects-my domain->Start Server启动
等一会儿,启动结束后进入:http://localhost:7001/console如果找不到页面把localhost换成主机名或IP试试
如果不能进入检查上面的步骤,反正这里如果不能访问向下做了,死也要给我访问到这个页面。
输入刚才的用户名和密码(system:aaaaaa)进入。
在左边的目录树中选中Services->JDBC->Connection Pools,单击右侧的Configure a new JDBC Connection Pool.
输入以下信息:
Configuration->General页:
Name = Mysql Connection Pool
URL = jdbc:mysql://localhost:3306/ejbdb(注意ejbdb是我上面的例子字段,以下都会这样)
Driver classname = org.gjt.mm.mysql.Driver
Properties :
user=root
password=111111 这两行是Properties 的内容,就是name=value形式
单击Create建立连接池。
选择Targets->Server页:
将myserver(服务器名称)移至右侧的列表中,但击单击Apply
在左边的目录树中选中Services->JDBC->Data Sources(或者TXData Sources)单击右侧的Configure a new JDBC
Connection Pool.,输入以下信息:
Configuration->General页:
Name = Mysql Tx Data Source
JNDI Name = ejbPool 这个名字就是你以后要引用的DataSource名称
Pool Name = Mysql Connection Pool
选中Emulate Two-Phase Commit for non-XA Driver和Row Prefetch Enabled
单击Create建立数据源。
Targets->Server页:
将myserver(服务器名称)移至右侧的列表中,但击单击Apply,配置完毕
而我的jb7的配置也应该没什么问题的,因为我用jdbc和datasource时都没问题的,
就是在写ejb时不行。高手帮忙看看!
|
你的EJB在WLS700下是怎么部署的?贴出来看看
|
jbuilder7自动生成home,remote,bean,添加代码,然后编译,生产。jar文件。右键点击鼠标选择deploy发布,发布成功后,新建一个test client,jbuilder会生产连接到ejb得代码,然后你就可以象使用普通类一样使用client类。
完全配置JBuilder7和Weblogic7
作者:chenying 发表时间:2002/08/06 05:30pm
JBuilder7和Weblogic7都出来了,在这里记录了一些配置过程,希望对大家有帮助
:)
假设将Weblogic7安装在c:/bea
Weblogic7
安装略,
配置选择菜单中的Configuration Wizard就可以进行配置了
1.Select a template:选择WLS Domain,Name默认的mydomain
2.Choose Server Type: Managed Server(...)最长的
3.Specify directory for "mydomain" domain:C:beauser_projects
4.Value Administrative Server Info-Admin Server Name or IP 写机器的ip就可以了,其它的默认值即可
5.Configure Managed Server:
Server Name:默认为myserver,我这里是默认的
Server Listen Address:写机器的ip .其它的默认
6.Create System UserName and Password:写用户名和密码,随便写了
7.Install Server as Windows Servic:这里问要不要在启动操作系统时启动,可根据自己的需用选择。
8.Install Domain in Windows Start Menu:这里问要不要在开始菜单添加快捷方式,建议是“Yes”.这样在开始菜单中会出现EBA Weblogic Platform 7.0-User projects-my domain-Start Server
,
JBuiler7
1.Tools-Configure Servers
选择Weblogic Application Server 6.x+后,选择Enable server,使标签的选项为可编辑的。
A、General标签
Home directory : C:/bea/weblogic700/server
Main class: weblogic.Server
VM paramenters:-ms64m -mx64m -Djava.library.path=C:/bea/weblogic700/server/bin -Dbea.home=C:/bea -Dweblogic.Domain=mydomain -Dweblogic.Name=myserver -Djava.security.policy==C:/bea/weblogic700/server/lib/weblogic.policy -Dweblogic.management.discover=false -Dweblogic.ProductionModeEnabled=false
-Dweblogic.management.username=admin -Dweblogic.management.password=password
Main class和VM paramenters在选择Home directory后系统自动给出(总之不用自己填)
Working directory:C:/bea/user_projects/mydomain
即使不将weblogic安装到c盘,系统也会创建c:/bea的。
mydomain是在weblogic中创建的名称。
B、Custom标签
JDK installation directory: C:/bea/jdk131_02(系统在c盘自建的)
BEA home directory: C:/bea(同上)
Domain diredtory : C:/bea/user_projects/mydomain(同上)
User name 和 Password :是weblogic的用户名和密码
Domain name 、Server name、 Version 都是默认的就可以了,例如mydomain,myserver,7.0(C:/bea/weblogic700)
2、Tools-Enterprise Setup
A、CORBA标签
在Configuration中,选择new
Name for this configuaration:随便写,在这里我写的是weblogic
Path for ORB tools: C:/bea/weblogic700/server/bin
Library for projects: WebLogic 6.x+ Deploy ,Path for ORB tools写对了,这个选一下就好了。
IDL compiler command: idlj.exe
Command option for output directory: 随便一个存在的文件夹就可以了,当然最好所在的磁盘空间越大越好。
3、Project-Default Project Properties
主要是server 标签
选择Single server for all services in project ,选择WebLogic Application Server 6.x+就可以了。
就写到这了...........