1

在 ESB 上部署类 Mediator 的最快方法是什么?

我在 Eclipse 中有我的自定义调解器,每次我将项目提取为 JAR 文件并将其放入“ESB\repository\components\lib”但它不会每次都提交更改......

看起来 ESB 仍然使用我的自定义中介的旧版本。

请建议

编辑:还要部署最后一个版本,我需要删除“dropins”文件夹中的所有文件

4

3 回答 3

3

我建议的最快方法(使用 Developer Studio 2.0.1):

  1. 创建中介项目
  2. 创建一个 Carbon 应用程序项目并将中介项目作为 C-App 工件包含在 C-App 项目中
  3. 导出C-App工程,获取CAR文件
  4. 将 CAR 文件部署到 C-App 部署文件夹(/repository/deployment/server/carbonapps)

** 无需重新启动服务器或删除 components/lib 位置或 components/dropins 位置中的现有 Jar

我建议的最快方法(使用 Carbon Studio 1.0.14):

  1. 将“碳应用项目”导出为 CAR
  2. 将 CAR 放入 /repository/deployment/server/carbonapps

** 无需重新启动服务器或删除 components/lib 位置或 components/dropins 位置中的现有 Jar

** 更新现有调解器时,将 C-App 部署位置中的现有 CAR 文件替换为新的 CAR 并重新启动服务器

哈沙娜

于 2012-09-10T09:28:27.497 回答
2

您可以使用 Developer Studio(以前称为 carbon studio)创建您的自定义中介项目,然后将您的中介逻辑包含在该类中介项目 [1] 中。然后在 Developer Studio 中创建一个 C-App 项目,其中包含您的 Class 调解器作为 C-App 工件[2]。

导出此 C-App 项目后,您将获得一个 CAR 文件,其中包含您的 Class mediator[3]。在 ESB 中部署此 CAR 文件后,它将自动在 ESB 中部署类中介器 OSGi 包,您可以立即使用类中介器。

当您更新类中介器逻辑时,您可以重新导出 C-App 项目并简单地将 ESB 中的现有 CAR 文件替换为新的 CAR 文件。然后,您之前的类中介 OSGi 包将从 ESB 中删除。但是由于 Equinox OSGi 实现的限制,在重新启动服务器之前,您将无法使用新版本的类中介器。

因此,您需要做的就是用较新版本的 CAR 文件替换现有的 CAR 文件并重新启动 ESB 服务器。ESB 服务器将负责将 OSGi 包部署到系统中。

由于我们已经实现了通过 Eclipse 本身 [4] 将 C-App 部署到 Carbon Server 的支持,因此您也可以使用这种方法。您需要做的是,将 ESB 服务器添加到 Eclipse 实例并通过 Eclipse 本身部署包含类中介的 C-App。当您采用这种方法时,您可以更新类中介器中的逻辑并通过 Eclipse [5] 将新版本的 CAR 文件重新部署到服务器。

甚至可以按照 [6] 中的指南在 Developer Studio 中调试您的 Class mediator。

[1]。http://wso2.org/project/developer-studio/2.0.1/docs/server_extensions_category.html#CustomMediator

[2]。http://wso2.org/project/developer-studio/2.0.1/docs/packaging.html#Distribution

[3]。http://wso2.org/project/developer-studio/2.0.1/docs/testing_deploying_category.html#CarGen

[4]。http://wso2.org/project/developer-studio/2.0.1/docs/testing_deploying_category.html#Deploy

[5]。http://wso2.org/project/developer-studio/2.0.1/docs/testing_deploying_category.html#Redeploy

[6]。http://wso2.org/project/developer-studio/2.0.1/docs/testing_deploying_category.html#debug

希望这可以帮助!

哈沙娜

于 2012-09-07T23:27:00.310 回答
2

到目前为止我发现的最快的方法是:

  1. 将“碳应用项目”导出为 JAR
  2. 将 jar 放入 WSO2_ESB\repository\components\lib
  3. 删除 WSO2_ESB\repository\components\dropins 中的相关 jar
  4. 重启 ESB
于 2012-09-10T08:17:09.013 回答