jndi是需要传递一些参数的,如果用new InitialContext()的方式的话必须有一个jndi.properties文件放在CLASSPATH的目录中,在此文件中,应描述清楚java.naming.factory.initial和java.naming.provider.url等属性的值,也就是要给出由哪个JNDI服务器提供服务传递JNDI参数的方法也可以在new InitialContext()的时候进行,但必须传递一个Properties类型的参数,即new InitialContext(Properties p)这样的方式。。传递JNDI参数的另外一种方法是用命令行 -D的方式传递。具体可参考SUN的网站JNDI指南,你可以了解得更加清楚