【问题标题】:ATG runAssembler - order of modules importATG runAssembler - 模块导入顺序
【发布时间】:2014-01-23 22:05:27
【问题描述】:

我正在尝试使用基于默认商业参考存储的 ATG runAssembler 创建 ear,我的主要目的是覆盖 CRS 的一些 jsp 文件。

我创建了模块 MyModule(带有包含我的 war 文件的子模块 Storefront)并在 Manifest 中指定了所有必需的模块,包括 Store.Storefront。我认为 MyModule.Storefront 应该是 runAssembler 导入中的最后一个,因为首先应该导入所有必需的模块。我使用以下命令创建耳朵:

./runAssembler -overwrite -standalone $DYNAMO_ROOT/MyModule/deploy/MyModule.ear -m MyModule.Storefront

但是我得到了错误的导入顺序:

...
Importing classes...
Importing classes for module DafEar
Importing classes for module MyModule.Storefront
Importing classes for module DafEar.Admin
Importing classes for module DafEar.base
Importing classes for module DCS.PublishingAgent
Importing classes for module Store.Storefront
Importing classes for module DCS.AbandonedOrderServices
...

我做错了什么?我需要做什么才能更改订单?您是否知道任何其他方法来覆盖不影响默认文件的 CRS jsp 页面?

谢谢。

更新: MyModule.Storefront 的清单:

Manifest-Version: 1.0
Ant-Version: Apache Ant 1.7.0
ATG-Version: 10.1.2
ATG-Version-Full: 10.1.2
ATG-Config-Path: config/
ATG-Product: STF
ATG-Required: MyModule.Back Store.Storefront
ATG-Web-Module: j2ee-apps/Storefront/store.war

【问题讨论】:

  • 对于 MyModule.Storefront,您的 MANIFEST.MF 文件是什么样的?您的自定义模块应该依赖于 Store.Storefront,因此它将在 ATG 模块之后构建。同样在 runAssembler 中,将 MyModule.Storefront 移到 Store.Storefront 之后。
  • 我已将请求的清单添加到说明中。问题是我在 manifest 和 runAssembler 中使用不同顺序的模块获得了很多经验,但这对我没有帮助。

标签: e-commerce atg


【解决方案1】:

将模块 Store.Storefront 移动到字段 ATG-Required 的开头:Nucleus 将所需模块及其在该字段中的位置排序。

【讨论】:

  • 我找到了决定:我已将我的模块放在 runAssembler 模块列表的末尾,并从我的模块清单中删除了 ATG-Required。
【解决方案2】:

当您使用 ATG 的分层概念时,您应该知道我们会覆盖该特定组件的现有属性的属性。这没有定义为覆盖 JSP 页面。 如果您想用自定义 JSP 替换 CRS JSP,那么您需要更改组件(配置文件夹中的 .properties 文件)的值。

【讨论】:

  • 据我所知,JSP 没有被定义为 Nucleus 组件,因此不可能覆盖相应属性的 JSP。我对吗?也许我误解了你。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-09-23
  • 1970-01-01
  • 2015-10-29
  • 2018-04-16
  • 1970-01-01
  • 2020-04-24
  • 2021-12-08
相关资源
最近更新 更多