java程序查找weblogic中的连接池出错
出错信息:javax.naming.NameNotFoundException: While trying to look up jdbc/cwc in java:comp/env.; remaining name 'jdbc/cwc'
at weblogic.jndi.internal.BasicNamingNode.newNameNotFoundException(BasicNamingNode.java:897)
at weblogic.jndi.internal.ApplicationNamingNode.lookup(ApplicationNamingNode.java:150)
at weblogic.jndi.internal.WLEventContextImpl.lookup(WLEventContextImpl.java:256)
at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:359)
at weblogic.jndi.factories.java.ReadOnlyContextWrapper.lookup(ReadOnlyContextWrapper.java:45)
......
已经在weblogic8.1中正确配置了Datasource,具体信息为:
name:cwc
jndiname:jdbc/cwc
测试也通过,在weblogic 的jndi tree上面的jdbc目录下面也能找到cwc.
JAVA程序为:
private static Context initctx = null;
private static Context envCtx= null;
private static DataSource bds=null;
initctx = new InitialContext();
envCtx = (Context)initctx.lookup("java:comp/env");
bds = (DataSource) envCtx.lookup("jdbc/cwc");
请高手指点,如何配置才能找到此JNDI.
--------------------编程问答-------------------- 以下代码经供参考:如果错误请指正。
private static Context initctx = null;
private static DataSource bds=null;
Hashtable properties = new Hashtable();
properties.put(Context.PROVIDER_URL,“java:comp/env”);
initctx = new InitialContext(properties);
bds = (DataSource) initctx.lookup("jdbc/cwc"); --------------------编程问答-------------------- 先查找java:comp/env
再查找jdbc/cwc --------------------编程问答-------------------- 我也碰到和楼主一样的问题。顶下
--------------------编程问答-------------------- 参考JAVA程序:
InitialContext ctx = null;
DataSource ds = null;
ctx = new InitialContext();
ds = (DataSource) ctx.lookup("cwc"); --------------------编程问答-------------------- 不知,帮顶 --------------------编程问答-------------------- 看看程序指定端口和JNDI部署端口是否一致 --------------------编程问答-------------------- 试试这个:
JNDI名字:jdbc/tdy218
调用:
--------------------编程问答-------------------- 值得思考
try
{
Context initContext = new InitialContext();
DataSource ds = (DataSource)initContext.lookup("jdbc/tdy218");
Connection con = ds.getConnection();
....
补充:企业软件 , 中间件