1

长时间的听众,第一次来电。

我们正在从 BEA WebLogic 10 迁移到 GlassFish v3。我们已经成功地将一个大型项目迁移到 GlassFish,并且一切正常,但现在我们正在为未来做计划。

具体来说,我们将 MyEclipse 8.5 与一个生成 EAR 文件的企业应用程序项目 (DCMHub) 和一个进入 EAR 的 Web 应用程序项目 (DCMWeb) 一起使用。

然而,DCMWeb 实际上是一大堆相关的应用程序,它们都聚集成一个巨大的 jsps、类文件和 jar 文件。我们想做的是将它们分解成逻辑单元。例如,我们希望拥有多个,例如 DCMWeb_A、DCMWeb_B 和 DCMWeb_C,以及一些 Web 服务(DCMWebService_A、DCMWebService_B)等等,而不是只有一个 Web 应用程序 (DCMWeb)。(显然,我们不会使用这些特定的名称;我只是为了方便提问而这么称呼它们。)

现在,棘手的问题来了。所有这些 Web 应用程序和 Web 服务都将共享一些共同的功能。例如,我们想要单点登录,因此用户、身份验证和权限的概念应该是相同的。同样,我们想共享某些类,例如用户在哪个部门,或者他在哪个办公室工作等。

如果这只是一个普通的 Java 应用程序,我可能会为演示创建一堆 jar,例如 DCMWeb_A、DCMWeb_B、DCMWeb_C、DCMWebService_A、DCMWebService_B,以及一些用于共享类和业务逻辑的附加 jar,例如 CommonClasses.jar , UserAndDeskLogic.jar 等

但这不是一个普通的旧 Java 应用程序。这是一个企业应用程序,我想这样构建它:a)我们很容易通过简单的步骤从丑陋的项目过渡到漂亮的项目,而不会破坏任何主要的东西,b)最终导致的结果我们完全符合 Java EE 6 中“正确”的做事方式,因此我们可以利用 Java、GlassFish 和 MyEclipse 的所有最新产品。

现在,这是我们在 MyEclpse 8.5 中得到的大致结构:

DCMHub(企业应用程序)
   META-INF
      application.xml
      MANIFEST.MF

DCMWeb(Web 应用程序)
   src(所有 java 源文件)
   WebContent
   css(我们所有的样式文件)
   图像(我们所有的 .jpg、.gif 等)
   包括(我们所有的 jsp 片段)
   javascript(所有的 .js 文件)
   META -INF
      MANIFEST.MF
   安全(所有需要验证才能查看的 jsps)
   WEB-INF
      类
      lib
      tlds
      applicationContext.xml
      dcmweb-servlet.xml
      faces-config.xml
      log4j.properties
      log4j.xml
      oscache.properties
      sun-jaxws.xml
      sun-web .xml
      web.xml
   xmlhttp
   login.jsp(我们未经身份验证的用户登录页面)

现在,很明显,我们正在考虑用来封装一些业务逻辑的其中一件事是使用 EJB 3。但是我该如何介绍这些呢?我之前的尝试都失败了。要么我不能让 MyEclipse 将它们部署为 EAR 的一部分,要么更常见的是,我不能让 Web 应用程序项目“看到”EJB 项目中的类。(虽然我可以对它们进行 Goto-Definition,但奇怪的是,MyEclipse 仍然将其标记为错误。)

很抱歉这个冗长的问题,但是组织这个应用程序的最佳方式是什么以便我们可以继续前进,同时又不会破坏我们目前正在做的任何事情?

非常感谢!

 Jeff G

PS 我能够让我的 EJB 加载并且我的 MyEclipse 项目来引用它,所以这部分已经解决了。但我仍然在追寻一个大问题:即,前进的最佳方式是什么?

4

1 回答 1

0

普通的 Java EE Eclipse 可以用通用功能做实用项目。MyEclipse 有类似的概念吗?

于 2010-07-27T14:15:16.087 回答