// Get a naming context InitialContext jndiContext = new InitialContext(p); System.out.println("Got context");
// Get a reference to the Interest Bean //jboss默认jndi名为ejb-jar.xml中的:ejb-name Object ref = jndiContext.lookup("Hello"); System.out.println("Got reference");
HelloHome home = (HelloHome)PortableRemoteObject.narrow(ref, HelloHome.class);
这句的时候出错,为什么?
try
{
//jndi配置,硬编码到java中,应实现为外部属性文件
Properties p=new Properties();
p.setProperty("java.naming.factory.initial",
"org.jnp.interfaces.NamingContextFactory");
p.setProperty("java.naming.provider.url",
"localhost:1099");
//out print jndi配置
p.list(System.out);
// Get a naming context
InitialContext jndiContext = new InitialContext(p);
System.out.println("Got context");
// Get a reference to the Interest Bean
//jboss默认jndi名为ejb-jar.xml中的:ejb-name
Object ref = jndiContext.lookup("Hello");
System.out.println("Got reference");
改为
Object ref = jndiContext.lookup("HelloBean");
试试看
Properties p=new Properties();
p.setProperty("java.naming.factory.initial",
"org.jnp.interfaces.NamingContextFactory");
p.setProperty("java.naming.provider.url",
"localhost:1099");
//out print jndi配置
p.list(System.out);
// Get a naming context
//jndi配置,硬编码到java中,应实现为外部属性文件
Properties p=new Properties();
p.setProperty("java.naming.factory.initial",
"org.jnp.interfaces.NamingContextFactory");
p.setProperty("java.naming.provider.url",
"localhost:1099");
//out print jndi配置
p.list(System.out);
// Get a naming context
InitialContext jndiContext = new InitialContext(p);
这个跟
//jndi配置,硬编码到java中,应实现为外部属性文件
Properties p=new Properties();
p.setProperty("java.naming.factory.initial",
"org.jnp.interfaces.NamingContextFactory");
p.setProperty("java.naming.provider.url",
"localhost:1099");
//out print jndi配置
p.list(System.out);
// Get a naming context
InitialContext jndiContext = new InitialContext(p);
这样子跟
//jndi配置,硬编码到java中,应实现为外部属性文件
Properties p=new Properties();
p.setProperty("java.naming.factory.initial",
"org.jnp.interfaces.NamingContextFactory");
p.setProperty("java.naming.provider.url",
"localhost:1099");
//out print jndi配置
p.list(System.out);
// Get a naming context
InitialContext jndiContext = new InitialContext(p);
这样子跟
InitialContext jndiContext = new InitialContext();有什么区别阿?
InitialContext jndiContext = new InitialContext(p);
这样子跟
InitialContext jndiContext = new InitialContext();有什么区别阿?
InitialContext jndiContext = new InitialContext(p);
这样子跟
InitialContext jndiContext = new InitialContext();有什么区别阿?
我看有些书上用InitialContext jndiContext = new InitialContext();为什么??
InitialContext()
构造一个初始上下文。
protected InitialContext(boolean lazy)
构造一个具有不进行初始化的选项的初始上下文。
InitialContext(Hashtable<?,?> environment)
使用所提供的环境构造一个初始上下文。 有些书上用InitialContext jndiContext = new InitialContext(); 也可以 可能是因为他的客户程序与EJB运行在同一个JVM中,或者是因为提供了jndi.properties文件吧
把这个文件所在目录设定到环境变量classpath