Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Hybris 找不到自定义加载项组件_Hybris - Fatal编程技术网

Hybris 找不到自定义加载项组件

Hybris 找不到自定义加载项组件,hybris,Hybris,我正在尝试在插件中创建一个组件。在impex过程中(contentslot、pagetemplate等)一切正常,但在访问页面时不会呈现 我已经按照步骤进行了操作,但我的控制器甚至没有被调用 @Controller("ConfirmationComponentController") @RequestMapping(value = ControllerConstants.Actions.Cms.ConfirmationComponent) public class Confi

我正在尝试在插件中创建一个组件。在impex过程中(contentslot、pagetemplate等)一切正常,但在访问页面时不会呈现

我已经按照步骤进行了操作,但我的控制器甚至没有被调用

@Controller("ConfirmationComponentController")
@RequestMapping(value = ControllerConstants.Actions.Cms.ConfirmationComponent)
public class ConfirmationComponentController extends AbstractCMSAddOnComponentController<ConfirmationComponentModel> {

  @Override
  protected void fillModel(HttpServletRequest request, Model model, ConfirmationComponentModel component) {

  }
}
@Controller(“确认组件控制器”)
@RequestMapping(值=ControllerConstants.Actions.Cms.ConfirmationComponent)
公共类确认ComponentController扩展了AbstractCMSAddOnComponentController{
@凌驾
受保护的无效填充模型(HttpServletRequest请求、模型模型、确认组件模型组件){
}
}
我已经从插件模块中将组件的jsp添加到“WEB-INF/views/responsive/cms/”中,但我一直收到以下错误:

找不到文件[/WEB-INF/views/addons/trainingcore/responsive/cms/confirmationcomponent.jsp]

p.S.:我已经设法调用了组件控制器,但是getView()返回了错误的路径,这就是为什么没有调用组件的原因。有什么帮助吗?非常感谢:)


是否应该在addon*-items.xml中创建此组件?

您首先需要知道的内容

在hybris中使用插件是一项复杂的工作。您需要知道,这些资源并没有在插件中使用,而是(在构建过程中)复制到您的店面,在那里使用它们

所有班级

myaddon/acceleratoraddon/web/src/
将复制到:

mystorefront/web/addonsrc/myaddon/
所有资源

myaddon/acceleratoraddon/web/webroot/
将被复制到相应的文件夹:

mystorefront/web/webroot/WEB-INF/_ui-src/addons/myaddon
mystorefront/web/webroot/WEB-INF/tld/addons/myaddon
mystorefront/web/webroot/WEB-INF/messages/addons/myaddon
mystorefront/web/webroot/WEB-INF/tags/addons/myaddon
mystorefront/web/webroot/WEB-INF/views/addons/myaddon

这意味着

这意味着,组件jsp的有效路径不会是:

/WEB-INF/views/cms/...
/WEB-INF/views/myaddon/cms/...
但会是这样的:

/WEB-INF/views/cms/...
/WEB-INF/views/myaddon/cms/...
路径
myaddon
将取决于声明组件的扩展名。因此,如果您在
trainingcore items.xml中声明它,它将

/WEB-INF/views/trainingcore/...
/WEB-INF/views/myaddon/...
如果在
myaddon items.xml
中声明它,则

/WEB-INF/views/trainingcore/...
/WEB-INF/views/myaddon/...

你首先需要知道什么

在hybris中使用插件是一项复杂的工作。您需要知道,这些资源并没有在插件中使用,而是(在构建过程中)复制到您的店面,在那里使用它们

所有班级

myaddon/acceleratoraddon/web/src/
将复制到:

mystorefront/web/addonsrc/myaddon/
所有资源

myaddon/acceleratoraddon/web/webroot/
将被复制到相应的文件夹:

mystorefront/web/webroot/WEB-INF/_ui-src/addons/myaddon
mystorefront/web/webroot/WEB-INF/tld/addons/myaddon
mystorefront/web/webroot/WEB-INF/messages/addons/myaddon
mystorefront/web/webroot/WEB-INF/tags/addons/myaddon
mystorefront/web/webroot/WEB-INF/views/addons/myaddon

这意味着

这意味着,组件jsp的有效路径不会是:

/WEB-INF/views/cms/...
/WEB-INF/views/myaddon/cms/...
但会是这样的:

/WEB-INF/views/cms/...
/WEB-INF/views/myaddon/cms/...
路径
myaddon
将取决于声明组件的扩展名。因此,如果您在
trainingcore items.xml中声明它,它将

/WEB-INF/views/trainingcore/...
/WEB-INF/views/myaddon/...
如果在
myaddon items.xml
中声明它,则

/WEB-INF/views/trainingcore/...
/WEB-INF/views/myaddon/...