2011-12-11 89 views
2

我有一個在單獨安裝中使用tomcat和openejb的WebApp。我正試圖將其移至TomEE(Web配置文件/加)環境,並且遇到查找錯誤。 JNDIContext拋出java.lang.NullPointerException。TomEE查找錯誤

我先試着用TomEE web profile。我的web應用程序也使用Web服務和谷歌搜索引導我嘗試TomEE plus,因爲Web配置文件不支持Web服務。沒有運氣w /這個版本。

這兩個版本之間的一個區別是,在TomEE Web配置文件中,我訪問openejb webapp時看到所有Remote對象。但是我沒有看到他們帶有TomEE plus版本。

http://localhost:8080/openejb/viewjndi.jsp

的,我怎麼能解決這個有什麼建議?我猜這是配置問題,我不知道哪一個。

下面是完整的堆棧跟蹤:

java.lang.NullPointerException 
    org.apache.openejb.client.JNDIContext.createBusinessObject(JNDIContext.java:203) 
    org.apache.openejb.client.JNDIContext.lookup(JNDIContext.java:247) 
    javax.naming.InitialContext.lookup(InitialContext.java:392) 
    org.bluebox.customer.client.CustomerConnection.getCustomerAccountRemote(CustomerConnection.java:67) 
    org.bluebox.customer.client.CustomerLogin.prepare(CustomerLogin.java:65) 
    com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:167) 
    com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98) 
    com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) 
    com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:176) 
    com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) 
    org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164) 
    com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) 
    com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:190) 
    com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) 
    com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:187) 
    com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) 
    org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52) 
    org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:498) 
    org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:434) 

回答

2

TomEE加絕對是如果從OpenEJB的/ Tomcat的安裝遷移使用權發行。它們的特性與堆棧現在支持完整的EJB 3.1,JAP 2.0和JAX-RS的區別相同。 TomEE的Web Profile版本比較精簡,缺少WebServices,JMS和任何非WebProfile要求。這是一個簡短的comparison of APIs supported

這看起來像是1月份發佈的TomEE 1.0.0-beta-2修正的bug。如果你可以試試看,那會很棒。我們絕對希望確保您可能面臨的任何問題在1.0.0 GA之前得到解決。