InitialContext();
客户端你不能这样初始化它,你应该加上个方法,比如在你的SERVLET程序里加上:
private Context getInitialContext() throws Exception {
String url = "t3://localhost:7001";
String user = null;
String password = null;
Properties properties = null;
try {
properties = new Properties();
properties.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory");
properties.put(Context.PROVIDER_URL, url);
if (user != null) {
properties.put(Context.SECURITY_PRINCIPAL, user);
properties.put(Context.SECURITY_CREDENTIALS, password == null ? "" : password);
} return new InitialContext(properties);
}
catch(Exception e) {
log("Unable to connect to WebLogic server at " + url);
log("Please make sure that the server is running.");
throw e;
}
}
用这个方法初始化它。
而且,实际中你应该保证你的相关配置文件为最新的。有些临时文件可以手工删除或者刷新。
客户端你不能这样初始化它,你应该加上个方法,比如在你的SERVLET程序里加上:
private Context getInitialContext() throws Exception {
String url = "t3://localhost:7001";
String user = null;
String password = null;
Properties properties = null;
try {
properties = new Properties();
properties.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory");
properties.put(Context.PROVIDER_URL, url);
if (user != null) {
properties.put(Context.SECURITY_PRINCIPAL, user);
properties.put(Context.SECURITY_CREDENTIALS, password == null ? "" : password);
} return new InitialContext(properties);
}
catch(Exception e) {
log("Unable to connect to WebLogic server at " + url);
log("Please make sure that the server is running.");
throw e;
}
}
用这个方法初始化它。
而且,实际中你应该保证你的相关配置文件为最新的。有些临时文件可以手工删除或者刷新。
解决方案 »
- java 备份oracle数据表
- myeclipse8+tomact6+struts2.2.1出现了个难缠问题
- struts1.2 spring 2.5 hibetnate3.1 oracle数据库反向生成,运行报错
- activemq使用HTTP协议时队列阻塞问题
- XMPP机器人 openfire spark
- 求js 急急?
- 大家帮我分析一下这是怎么回事!!快下岗了,哎!
- 有通jasper report的吗?
- Spring框架调用Web Service冒错什么原因?
- 小问题:为什么我配置的JBUILDER不能使用EAR和JMS,其它的都可以!
- 一个关于jms的低级问题
- 求教,怎能从命令行手动生成weblogic7的描述符
properties.put(Context.SECURITY_PRINCIPAL, user);
properties.put(Context.SECURITY_CREDENTIALS,password == null ? "" : password);
就不要了
只要Properties p = new Properties();
p.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.TengahInitialContextFactory");
ctx = new InitialContext(p);
就够了?
我现在试试
File → new → Enterprise → EJB Test Client生成一个客户端测试的类,将自动生产一些相关初始化的代码,你仔细看看那些代码。
其一:Context并没有初始化,你可以在你的程序里试着打印Context类,就可以看它到底初始化没有。
其二:找不到你定义的JNDI名称,这样的话出现问题的地方就很多,你需要仔细查看你的配置文件。
其三:文件并未更新,比如说,你更改了相关设置,但你的EJB没有发布成功,你就以为是JNDI名称设置不正确,你可以手工更新你的EJB文件到WEB服务器,然后删除一些临时生成的文件重启服务再试。
共同学习!!
Properties p = new Properties();
p.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.TengahInitialContextFactory");
p.put(Context.PROVIDER_URL, "t3://localhost:7001");
Context ctx=new InitialContext(p);还是不行
还是那个错!
谁还能帮帮我!
Failed initializing bean access.可我只是个好简单的BEAN我再看看吧,对了,我的Context打出来是javax.naming.InitialContext@c1d35
?这初始化了吗?