JNDI获得数据源

javadata 2007-01-06 03:39:59
我在 JB下边
Driver:
weblogic.jdbc.mssqlserver4.Driver
URL:
jdbc:weblogic:mssqlserver4:News@localhost:1433
Database name:
weblogic:mssqlserver4:News@localhost:1433
JNDI name:
DataSource
实现了数据库的连接(weblogic的数据源 是不?)

现在我引用这个数据源
导入了这些包:
import java.sql.*;
import javax.naming.Context;
import javax.naming.InitialContext;
获得数据源的程序如下:
public Connection getConnection() throws Exception {
try {
Context ctx = new InitialContext();
javax.sql.DataSource ds = (javax.sql.DataSource) ctx.lookup("DataSource");
return ds.getConnection();
} catch (Exception e) {
System.out.println("不能获取数据源");
e.printStackTrace();
return null;
}
}

可我在调用实体BEAN进行数据库的插入时 老是说 找不到数据源

麻烦给小弟指点一下
...全文
641 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
javadata 2007-02-05
  • 打赏
  • 举报
回复
搞定
javadata 2007-01-15
  • 打赏
  • 举报
回复
好了上边的问题也解决了
可为什么
我插入数据库老是空呢
我用他进行了数据的插入
try {
System.out.println("ejbCreate()方法被调用");
con = getConnection();
String sqlStr = "insert into UserIfometion(UserName,Userpwd,"
+ "RealName,sex,UserItrduce)"
+ " values (?,?,?,?,?)";
pstmt = con.prepareStatement(sqlStr);
pstmt.setString(1, username);
pstmt.setString(2, userpwd);
pstmt.setString(3, realname);
pstmt.setString(4, sex);
pstmt.setString(5, useritrduce);
System.out.println(sqlStr);
System.out.println("888888888888888888888888888888888888844哦");
pstmt.executeUpdate();
pstmt.execute();
System.out.println(username);
System.out.println(userpwd);
System.out.println(realname);
System.out.println(sex);
System.out.println(useritrduce);

System.out.println("dhhhhhhhhhhhhhhhhhddddddddddd哦");

return null;
} catch (Exception e) {
throw new CreateException(e.toString());
} finally {
try {
if (pstmt != null) {
pstmt.close();
}
} catch (Exception e) {
e.printStackTrace();
}
try {
if (con != null) {
con.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}
下边是测试端的
try{
home.create("杨涌旗","66113576","栀子花开","男","TNND");

}catch(Exception e){}

我能显示 测试端的值 但是 插不进去
可我有个自增的字段他的值却是在变化的
TNND
javadata 2007-01-10
  • 打赏
  • 举报
回复
还没呢
JB里边
才学不知道咋个整 别笑哈 呵呵
Daem0n(瓶中的精灵) 给指点一下嘛
Daem0n 2007-01-10
  • 打赏
  • 举报
回复
你在配置文件里面配置数据源了没有
javadata 2007-01-09
  • 打赏
  • 举报
回复
xia现在又报这个错
我改成了
Context env = (Context) new InitialContext().lookup("java:comp/env");
DataSource source = (DataSource) env.lookup("DataSource");//这个地方要和conf里面的名称相统一

Daem0n(瓶中的精灵) 说的lookup("xxxx")里边是不是写数据源呢 我写了他还报下边那错
C:\bea\jdk150_03\bin\javaw -classpath "F:\EJB\regrter\classes;C:\bea\weblogic90\server\lib\weblogic_sp.jar;C:\bea\weblogic90\server\lib\weblogic.jar;C:\bea\weblogic90\server\lib\webservices.jar;C:\bea\weblogic90\javelin\lib\javelinx.jar;C:\bea\weblogic90\common\lib\log4j.jar;C:\Borland\JBuilder2006\thirdparty\jakarta-struts-1.2-lib\antlr.jar;C:\Borland\JBuilder2006\thirdparty\jakarta-struts-1.2-lib\commons-beanutils.jar;C:\Borland\JBuilder2006\thirdparty\jakarta-struts-1.2-lib\commons-collections.jar;C:\Borland\JBuilder2006\thirdparty\jakarta-struts-1.2-lib\commons-digester.jar;C:\Borland\JBuilder2006\thirdparty\jakarta-struts-1.2-lib\commons-fileupload.jar;C:\Borland\JBuilder2006\thirdparty\jakarta-struts-1.2-lib\commons-logging.jar;C:\Borland\JBuilder2006\thirdparty\jakarta-struts-1.2-lib\commons-validator.jar;C:\Borland\JBuilder2006\thirdparty\jakarta-struts-1.2-lib\jakarta-oro.jar;C:\Borland\JBuilder2006\thirdparty\jakarta-struts-1.2-lib\struts.jar;F:\Y2\J2EE\driver\mssqlserver4v65.jar;C:\bea\jdk150_03\lib\tools.jar;C:\bea\jdk150_03\lib\dt.jar;C:\bea\jdk150_03\lib\htmlconverter.jar;C:\bea\jdk150_03\lib\jconsole.jar;C:\bea\jdk150_03\sample\jnlp\servlet\jnlp.jar;C:\bea\jdk150_03\sample\jnlp\servlet\jnlp-servlet.jar;C:\bea\jdk150_03\sample\jnlp\servlet\jardiff.jar;C:\bea\jdk150_03\jre\lib\jsse.jar;C:\bea\jdk150_03\jre\lib\im\indicim.jar;C:\bea\jdk150_03\jre\lib\im\thaiim.jar;C:\bea\jdk150_03\jre\lib\deploy.jar;C:\bea\jdk150_03\jre\lib\jce.jar;C:\bea\jdk150_03\jre\lib\ext\localedata.jar;C:\bea\jdk150_03\jre\lib\ext\dnsns.jar;C:\bea\jdk150_03\jre\lib\ext\sunjce_provider.jar;C:\bea\jdk150_03\jre\lib\ext\sunpkcs11.jar;C:\bea\jdk150_03\jre\lib\charsets.jar;C:\bea\jdk150_03\jre\lib\rt.jar;C:\bea\jdk150_03\jre\lib\plugin.jar" regrter.UserInfoTestClient1
javax.ejb.CreateException: java.lang.NullPointerException
at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:191)
at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:315)
at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:250)
at regrter.UserInfo_1571he_HomeImpl_900_WLStub.create(Unknown Source)
at regrter.UserInfoTestClient1.main(UserInfoTestClient1.java:211)
Caused by: javax.ejb.CreateException: java.lang.NullPointerException
at regrter.UserInfoBean.ejbCreate(UserInfoBean.java:49)
at regrter.UserInfo_1571he_Impl.ejbCreate(UserInfo_1571he_Impl.java:263)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at weblogic.ejb20.manager.DBManager.create(DBManager.java:1371)
at weblogic.ejb20.manager.DBManager.remoteCreate(DBManager.java:1319)
at weblogic.ejb20.internal.EntityEJBHome.create(EntityEJBHome.java:269)
at regrter.UserInfo_1571he_HomeImpl.create(UserInfo_1571he_HomeImpl.java:80)
at regrter.UserInfo_1571he_HomeImpl_WLSkel.invoke(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:503)
at weblogic.rmi.cluster.ClusterableServerRef.invoke(ClusterableServerRef.java:224)
at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:393)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:147)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:389)
at weblogic.rmi.internal.BasicServerRef.access$300(BasicServerRef.java:56)
at weblogic.rmi.internal.BasicServerRef$BasicExecuteRequest.run(BasicServerRef.java:903)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:179)
Daem0n 2007-01-09
  • 打赏
  • 举报
回复
Context env = (Context) new InitialContext().lookup("java:comp/env");
DataSource source = (DataSource) env.lookup("xxxx");//这个地方要和conf里面的名称相统一
javadata 2007-01-06
  • 打赏
  • 举报
回复
老报这个错: 是为什么啊 不知道我是那没配置对 还是别的呢?
javax.naming.NameNotFoundException: Unable to resolve 'Employee'. Resolved '' [Root exception is javax.naming.NameNotFoundException: Unable to resolve 'Employee'. Resolved '']; remaining name 'Employee'
at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:191)
at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:315)
at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:250)
at weblogic.jndi.internal.ServerNamingNode_900_WLStub.lookup(Unknown Source)
at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:374)
at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:362)
at javax.naming.InitialContext.lookup(InitialContext.java:351)
at empbmpapp.EmployeeTestClient1.initialize(EmployeeTestClient1.java:55)
at empbmpapp.EmployeeTestClient1.<init>(EmployeeTestClient1.java:43)
at empbmpapp.EmployeeTestClient1.main(EmployeeTestClient1.java:353)
Caused by: javax.naming.NameNotFoundException: Unable to resolve 'Employee'. Resolved ''
at weblogic.jndi.internal.BasicNamingNode.newNameNotFoundException(BasicNamingNode.java:1123)
at weblogic.jndi.internal.BasicNamingNode.lookupHere(BasicNamingNode.java:250)
at weblogic.jndi.internal.ServerNamingNode.lookupHere(ServerNamingNode.java:171)
at weblogic.jndi.internal.BasicNamingNode.lookup(BasicNamingNode.java:204)
at weblogic.jndi.internal.RootNamingNode_WLSkel.invoke(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:503)
at weblogic.rmi.cluster.ClusterableServerRef.invoke(ClusterableServerRef.java:224)
at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:393)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:147)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:389)
at weblogic.rmi.internal.BasicServerRef.access$300(BasicServerRef.java:56)
at weblogic.rmi.internal.BasicServerRef$BasicExecuteRequest.run(BasicServerRef.java:903)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:179)
java.lang.NullPointerException
at empbmpapp.EmployeeTestClient1.main(EmployeeTestClient1.java:356)
Java 源码包 Applet钢琴模拟程序java源码 2个目标文件,提供基本的音乐编辑功能。编辑音乐软件的朋友,这款实例会对你有所帮助。 Calendar万年历 1个目标文件 EJB 模拟银行ATM流程及操作源代码 6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除,从账户中取出amt,如果amt>账户余额抛出异常,一个实体Bean可以表示不同的数据实例,我们应该通过主键来判断删除哪个数据实例…… ejbCreate函数用于初始化一个EJB实例 5个目标文件,演示Address EJB的实现,创建一个EJB测试客户端,得到名字上下文,查询jndi名,通过强制转型得到Home接口,getInitialContext()函数返回一个经过初始化的上下文,用client的getHome()函数调用Home接口函数得到远程接口的引用,用远程接口的引用访问EJB。 EJB中JNDI的使用源码例子 1个目标文件,JNDI的使用例子,有源代码,可以下载参考,JNDI的使用,初始化Context,它是连接JNDI树的起始点,查找你要的对象,打印找到的对象,关闭Context…… ftp文件传输 2个目标文件,FTP的目标是:(1)提高文件的共享性(计算机程序和/或数据),(2)鼓励间接地(通过程序)使用远程计算机,(3)保护用户因主机之间的文件存储系统导致的变化,(4)为了可靠和高效地传输,虽然用户可以在终端上直接地使用它,但是它的主要作用是供程序使用的。本规范尝试满足大型主机、微型主机、个人工作站、和TACs 的不同需求。例如,容易实现协议的设计。 Java EJB中有、无状态SessionBean的两个例子 两个例子,无状态SessionBean可会话Bean必须实现SessionBean,获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,计算利息等;在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天通信演示代码 2个目标文件,一个服务器,一个客户端。 Java Telnet客户端实例源码 一个目标文件,演示Socket的使用。 Java 组播组中发送和接受数据实例 3个目标文件。 Java读写文本文件的示例代码 1个目标文件。 java俄罗斯方块 一个目标文件。 Java非对称加密源码实例 1个目标文件 摘要:Java源码,算法相关,非对称加密   Java非对称加密源程序代码实例,本例中使用RSA加密技术,定义加密算法可用 DES,DESede,Blowfish等。   设定字符串为“张三,你好,我是李四”   产生张三的密钥对(keyPairZhang)   张三生成公钥(publicKeyZhang)并发送给李四,这里发送的是公钥的数组字节   通过网络或磁盘等方式,把公钥编码传送给李四,李四接收到张三编码后的公钥,将其解码,李四用张三的公钥加密信息,并发送给李四,张三用自己的私钥解密从李四处收到的信息……
Java 源码包 Applet钢琴模拟程序java源码 2个目标文件,提供基本的音乐编辑功能。编辑音乐软件的朋友,这款实例会对你有所帮助。 Calendar万年历 1个目标文件 EJB 模拟银行ATM流程及操作源代码 6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除,从账户中取出amt,如果amt>账户余额抛出异常,一个实体Bean可以表示不同的数据实例,我们应该通过主键来判断删除哪个数据实例…… ejbCreate函数用于初始化一个EJB实例 5个目标文件,演示Address EJB的实现,创建一个EJB测试客户端,得到名字上下文,查询jndi名,通过强制转型得到Home接口,getInitialContext()函数返回一个经过初始化的上下文,用client的getHome()函数调用Home接口函数得到远程接口的引用,用远程接口的引用访问EJB。 EJB中JNDI的使用源码例子 1个目标文件,JNDI的使用例子,有源代码,可以下载参考,JNDI的使用,初始化Context,它是连接JNDI树的起始点,查找你要的对象,打印找到的对象,关闭Context…… ftp文件传输 2个目标文件,FTP的目标是:(1)提高文件的共享性(计算机程序和/或数据),(2)鼓励间接地(通过程序)使用远程计算机,(3)保护用户因主机之间的文件存储系统导致的变化,(4)为了可靠和高效地传输,虽然用户可以在终端上直接地使用它,但是它的主要作用是供程序使用的。本规范尝试满足大型主机、微型主机、个人工作站、和TACs 的不同需求。例如,容易实现协议的设计。 Java EJB中有、无状态SessionBean的两个例子 两个例子,无状态SessionBean可会话Bean必须实现SessionBean,获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,计算利息等;在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天通信演示代码 2个目标文件,一个服务器,一个客户端。 Java Telnet客户端实例源码 一个目标文件,演示Socket的使用。 Java 组播组中发送和接受数据实例 3个目标文件。 Java读写文本文件的示例代码 1个目标文件。 java俄罗斯方块 一个目标文件。 Java非对称加密源码实例 1个目标文件 摘要:Java源码,算法相关,非对称加密   Java非对称加密源程序代码实例,本例中使用RSA加密技术,定义加密算法可用 DES,DESede,Blowfish等。   设定字符串为“张三,你好,我是李四”   产生张三的密钥对(keyPairZhang)   张三生成公钥(publicKeyZhang)并发送给李四,这里发送的是公钥的数组字节   通过网络或磁盘等方式,把公钥编码传送给李四,李四接收到张三编码后的公钥,将其解码,李四用张三的公钥加密信息,并发送给李四,张三用自己的私钥解密从李四处收到的信息…… Java利用DES私钥对称加密代码实例 同上 java聊天室 2个目标文件,简单。 java模拟掷骰子2个 1个目标文件,输出演示。 java凭图游戏 一个目标文件,简单。 java求一个整数的因子 如题。 Java生成密钥的实例 1个目标文件 摘要:Java源码,算法相关,密钥   Java生成密钥、保存密钥的实例源码,通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateK

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧