我創建了一個從我的應用程序客戶端啓動的小型junit測試。 我的服務器是glassfish 3.1.1。 當我運行測試,我得到這個錯誤:啓動JUNIT測試時創建上下文失敗
javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial
我已經添加了propreties到改變的背景之下,什麼都沒有。 這我怎麼設置我的背景:
@Before
public void setUp() throws NamingException {
Properties props = new Properties();
System.out.println("launch");
props.setProperty("java.naming.factory.initial",
"com.sun.enterprise.naming.SerialInitContextFactory");
props.setProperty("java.naming.factory.url.pkgs",
"com.sun.enterprise.naming");
props.setProperty("java.naming.factory.state",
"com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl");
// optional. Defaults to localhost. Only needed if web server is running
// on a different host than the appserver
//props.setProperty("org.omg.CORBA.ORBInitialHost", "localhost");
// optional. Defaults to 3700. Only needed if target orb port is not 3700.
//props.setProperty("org.omg.CORBA.ORBInitialPort", "3700");
Context annuaire = new InitialContext(props);
GeoBeanRemote service = (GeoBeanRemote) annuaire.lookup(GeoBeanRemote.class.getName());
BeanProvider.setGeoBean(service);
}
APP-serv.rt和GF客戶端添加到我的運行測試。
謝謝。
如果您使用的是GlassFish v3 +,則只需在您的類路徑中使用gf-client.jar –
是否可以顯示異常堆棧跟蹤? –