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