我想從GWT devmode內部執行JNDI查找。從GWT開發模式到glassfish v3的EJB JNDI查找
我有一個本地的glassfishv3運行我想查找的EJB。如果我將GWT-Webapp部署到所說的glassfish中,一切都按預期工作。但是,如果我嘗試查找EJB組件從DEVMODE中我得到這個異常:
javax.naming.NamingException: Lookup failed for 'myBean' in SerialContext [Root exception is javax.naming.NamingException: Unable to acquire SerialContextProvider for SerialContext [Root exception is java.lang.NullPointerException]] ... Caused by: javax.naming.NamingException: Unable to acquire SerialContextProvider for SerialContext [Root exception is java.lang.NullPointerException]
at com.sun.enterprise.naming.impl.SerialContext.getProvider (SerialContext.java:276)
at com.sun.enterprise.naming.impl.SerialContext.lookup (SerialContext.java:430)
... 22 more Caused by: java.lang.NullPointerException
at com.sun.enterprise.naming.impl.SerialContext.getRemoteProvider (SerialContext.java:297)
at com.sun.enterprise.naming.impl.SerialContext.getProvider (SerialContext.java:271)
... 23 more
看來,嵌入式碼頭找不到類路徑中的類「SerialContextProvider」。
我嘗試將gf-client.jar和glassfish-naming.jar添加到類路徑中(除了在eclipse中將glassfish v3添加到目標運行時),但無濟於事。
我甚至放在一個包含簡單的EJB項目以及執行查找的GWT項目的小樣本(在這裏找到:http://satansoft.de/jnditest/jnditest.tgz)。 該歸檔文件還包含一個小的CLI客戶端,它在類路徑中使用gf-client.jar運行時工作得非常好。
我也在官方的gwt郵件列表上問過這個問題,但沒有人能夠幫助我。
因此:是否有人能夠從GWT devmode執行JNDI查找到glassfish v3?
此文檔可能有用:http://docs.sun.com/app/docs/doc/820-7695/beanv?l = en&a = view。 似乎Jetty服務器必須發生一些公平的配置才能訪問遠程GF上的bean。最可能的問題是您跳過了一個,或者配置了GWT應用程序,而不是服務器。 – vkraemer 2010-02-04 16:22:22