我在 Weblogic 11g 上运行 Java 6。
我正在开发一个使用 EJB 与数据库通信的 Web 服务项目。目前我正在处理错误,因此我尝试在调用 Web 服务之前取消部署 EJB。我的 EJBClientHelper 类如下所示:
package mypackage.elkom.utils;
import java.io.Serializable;
import java.util.Properties;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import mypackage.elkom.ejb.beans.session.remote.ElkomRemote;
public class EJBClientHelper implements Serializable {
/**
*
*/
private static final long serialVersionUID = 1L;
private ElkomRemote elkomRemote;
private static final String ELKOM_JNDI = "ElkomBean#mypackage.ejb.beans.session.remote.ElkomRemote";
private Context ctx;
private void prepareEjb3Connection() throws PropsFileException, NamingException {
// Here's code for getting the ejbProviderURL from propsfile //
props.put("java.naming.factory.initial", weblogic.jndi.WLInitialContextFactory");
props.put("java.naming.provider.url",ejbProviderURL);
ctx = new InitialContext(props);
}
public void setElkomRemote(ElkomRemote elkomRemote) {
this.elkomRemote = elkomRemote;
}
public ElkomRemote getElkomRemote() throws NamingException, PropsFileException {
prepareEjb3Connection();
if(elkomRemote == null) {
elkomRemote = (ElkomRemote)ctx.lookup(ELKOM_JNDI);
}
return elkomRemote;
}
}
但是,当我使用 getElkomRemote(); 我收到此消息的 NamingException:
SEVERE: The object identified by: '678' could not be found. Either it was has not been exported or it has been collected by the distributed garbage collector.;
nested exception is: java.rmi.NoSuchObjectException: The object identified by: '678' could not be found.
Either it was has not been exported or it has been collected by the distributed garbage collector.
javax.ejb.EJBException: The object identified by: '678' could not be found. Either it was has not been exported or it has been collected by the distributed garbage collector.;
nested exception is: java.rmi.NoSuchObjectException: The object identified by: '678' could not be found.
Either it was has not been exported or it has been collected by the distributed garbage collector.
java.rmi.NoSuchObjectException: The object identified by: '678' could not be found. Either it was has not been exported or it has been collected by the distributed garbage collector.
任何人都知道为什么我收到此消息而不是 NamingException?也许如何解决它?