站内搜索: 请输入搜索关键词

当前页面: 开发资料首页J2EE 专题jboss:如何远程查找数据源

jboss:如何远程查找数据源

摘要: jboss:如何远程查找数据源


在jbuilder中运行下面程序,抱错:javax.naming.NameNotFoundException: ssDS not bound
如果用jsp:直接写
InitialContext ctx = new InitialContext();
ctx.lookup();就能找到
猜测是初始化InitialContext的问题,但是找不到原因,请高手指教

public static void getDataSource()
{
try
{
Properties properties = new Properties();
properties.put("java.naming.factory.initial",
"org.jnp.interfaces.NamingContextFactory");
properties.put("java.naming.provider.url", "jnp://localhost:1099");
properties.put("jjava.naming.factory.url.pkgs", "org.jboss.naming:org.jnp.interfaces");

InitialContext ctx = new InitialContext(properties);
DataSource datasource = (DataSource) ctx.lookup("java:/ssDS");
}
catch (Exception ex)
{
ex.printStackTrace();
}
}



楼主利用JNDI方法是正确的 具体的我就不懂了 呵呵 顶一下


oracle-ds.xml中的配置是没问题的,不然用jsp也找不到datasource的


用EJB吧,这个方法比较好


请高手指教啊


你用了localhost, 是否服务器不在本机上?


在本机上


lookup("java:/ssDS");
这一句有问题,是JNDI的可访问性造成的。java:/ssDS不是全局可访问的,只能本地访问,如果你绑定jdni的时候用ssDS,则ssDS是全局可见。用jboss 的jndiview可以看到这种变化。


同意楼上的意见


下面才是正解
In JBoss4 you can bind the ConnectionFactory/DataSource in the global namespace


GenericDS
false
[jdbc: url for use with Driver class]
[fully qualified class name of java.sql.Driver implementation]
x
y



答案来自jboss的wiki,哎,无言,这是我们与别人的差距



↑返回目录
前一篇: JAVA里面如何判断插入/删除/更新数据库是否成功?
后一篇: soa的学习