【问题标题】:Misterious invoking remote EJB3 on WAS 7在 WAS 7 上神秘地调用远程 EJB3
【发布时间】:2012-01-04 12:08:53
【问题描述】:

我为我的英语道歉。

我正在尝试使用 EJB 3 技术。我有两个ears 应用程序,一个是Web 应用程序,另一个是带有远程EJB 的应用程序,使用EJB 3.0。我将它们部署在同一台服务器 Websphere 7 中,它们成功启动。我的测试是通过@EJB注解和“查找”调用EJB,然后,Web应用程序有一个Servlet,通过@EJB注解在EJB上引用,在远程接口上引用其他引用,即

查看纯副本到剪贴板打印?

import org.icabanas.pruebaconcepto.dominio.Producto;  
import org.icabanas.pruebaconcepto.facade.ProductoSessionFacade;  

public class ProductoServlet extends HttpServlet {  

    @EJB(name="EJB/ProductoSessionFacade")  
    private ProductoSessionFacade productoSessionFacade;  

    private ProductoSessionFacade productoSessionFacadeJndi;      

        protected void doPost(HttpServletRequest req, HttpServletResponse resp)  
            throws ServletException, IOException {  
        Producto producto = getProductoFromRequest(req);  

        try{  
            System.out.println("INJECTION");  
            productoSessionFacade.alta(producto);  
        }  
        catch (Exception e) {  
            System.out.println("Error in INJECTION");  
            System.out.println(e.getMessage());  
        }  

        try{  
            System.out.println("JNDI");           
            productoSessionFacadeJndi = (ProductoSessionFacade) lookupJNDI("org.icabanas.pruebaconcepto.facade.ProductoSessionFacade");  
            productoSessionFacadeJndi.alta(producto);  
        }  
        catch (Exception e) {  
            System.out.println("Error in JNDI");  
            System.out.println(e.getMessage());  
        }  
    }  
.......  
}  

我有以下问题:当我启动应用程序时一切正常,我通过 jndi 查找获得了 EJB 注释,但是当我重新启动或重新发布包含 Web 应用程序的 ear 时,我得到了 EJB 注释并且它工作正常,但是当我尝试通过 JNDI 查找获取 EJB 时,出现以下错误:

“org.icabanas.pruebaconcepto.facade._ProductoSessionFacade_Stub 与 org.icabanas.pruebaconcepto.facade.ProductoSessionFacade 不兼容”

知道会发生什么吗?

提前致谢!

【问题讨论】:

  • 请包含异常堆栈跟踪。您似乎错过了对 PortableRemoteObject.narrow 的调用,但不清楚是您还是服务器忘记了调用。

标签: ejb-3.0 websphere-7


【解决方案1】:

这实际上是 WebSphere 7 中的一个错误,我认为它已在 7.0.0.17 中修复。我对 7.0.0.15 也有同样的问题。一种解决方法是重新启动包含 EJB 的应用程序。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-21
    • 1970-01-01
    • 2020-12-03
    • 2011-12-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多