协议交换,使用Spring从表示到业务对EJB的远程调用

协议交换,使用Spring从表示到业务对EJB的远程调用,spring,jakarta-ee,ejb-2.x,spring-remoting,Spring,Jakarta Ee,Ejb 2.x,Spring Remoting,在我早期的项目中,我一直在广泛使用Spring DI和IOC。根据新的项目要求,我们必须按照以下方式设置项目: 业务项目(Java项目) 公共项目(Java项目) 演示项目(网络项目) 业务和演示交流/使用公共层。但是,业务和演示将部署在不同的应用服务器上,并且业务和演示之间的通信不是基于http的。表示通过iiop协议调用业务。这意味着,在从表示(web项目)调用业务(Java项目)时,会发生协议切换 为了设置不同的应用程序层,我做了如下操作: 在业务项目中,我使用SPRING依赖注入特性和普

在我早期的项目中,我一直在广泛使用Spring DI和IOC。根据新的项目要求,我们必须按照以下方式设置项目:

  • 业务项目(Java项目)
  • 公共项目(Java项目)
  • 演示项目(网络项目)
  • 业务和演示交流/使用公共层。但是,业务和演示将部署在不同的应用服务器上,并且业务和演示之间的通信不是基于http的。表示通过iiop协议调用业务。这意味着,在从表示(web项目)调用业务(Java项目)时,会发生协议切换

    为了设置不同的应用程序层,我做了如下操作:

    在业务项目中,我使用SPRING依赖注入特性和普通OOPS技术将所有业务逻辑方法和DAO方法封装在一个facade对象中

    现在我想使用EJB公开facade对象,从表示层,我想调用EJBJNDI并通过EJB调用获取facade对象

    我需要知道:

  • 如何创建EJB(一个简单的无状态会话BeanEJB2.1)并使用Spring公开它

  • 如何使用spring访问EJB?(无论是否使用弹簧将其暴露在外)

  • 对于在spring中进行相同的配置,我没有找到任何合适/完整的示例(甚至在spring ref中)

    非常感谢您对本主题的任何帮助

    感谢和问候

    吉滕德里亚短跑 Java/J2EE开发者,孟买,印度

  • 您不能使用Spring将其公开。您可以通过将其作为远程EJB部署在应用程序服务器中来公开它。这不是Spring的责任
  • 您可以按照参考文档中的说明访问远程EJB:

  • 还有一点,spring上下文xml应该首先加载到哪里,在业务层?对于web层,我也可以这样做,在web.xml、上下文参数中设置它,并使用WebApplicationContext将它加载到我的基本操作类中(如果要使用struts)。但是,关于业务层,我应该从ejbbean类加载它吗?在业务层,这是第一个要加载的类,还是任何其他类?