我有一个Hybris安装,我的团队已经在所有页面/标签/片段/视图的桌面版本中开发了所有内容。
现在我的CSS团队表示他们可以通过CSS处理响应,但桌面版本需要成为要调用的页面。
我的问题是,当我在移动设备/模拟器中打开网站时,会调用页面的移动路径,最后返回404。
关闭此自动重定向功能可以做些什么.. ??
任何想法......?
我已经检查了hmc并关闭了手机的频道,但这只适用于电子产品和服装。
我正在研究b2c telco频道
答案 0 :(得分:1)
首先,它不是自动重定向,而是在Hybris中实现InternalResourceViewResolver的方式,如果你想摆脱这个功能,你可以更新“com.yourAcceleratorPackahe.storefront.web.view.UiExperienceViewResolver”:
public String getViewName(final UiExperienceLevel uiExperienceLevel, String viewName)
{
final String prefix = getUiExperienceViewPrefix().get(uiExperienceLevel);
if (prefix != null)
{
if (viewName.startsWith(AbstractPageController.PAGE_ROOT + "addon:"))
{
viewName = viewName.replace(AbstractPageController.PAGE_ROOT + "addon:", "addon:"); // ...pages/addon:/<extension-name>/.../<component-view>....->....addon:/<extension-name>/.../<component-view>
}
if (viewName.startsWith("addon:"))
{
viewName = viewName.replace("addon:", ""); // ................................addon:/<extension-name>/cms/<component-view>....->..../<extension-name>/cms/<component-view>
viewName = viewName.substring(1, viewName.length()); // ....................../<extension-name>/cms/<component-view>..........->....<extension-name>/cms/<component-view>
final String extensionName = viewName.substring(0, viewName.indexOf('/')); // <extension-name>/cms/<component-view>...........->....<extension-name>
viewName = viewName.substring(viewName.indexOf('/'), viewName.length()); // ..<extension-name>/cms/<component-view>...........->..../cms/<component-view>
return getAddOnPrefix() + "/" + extensionName + "/" + prefix + viewName; // ..<addon-prefix>/<extension-name>/<ui-prefix>/cms/<component-view>
}
return prefix + viewName;
}
return getUnknownUiExperiencePrefix() + viewName;
}
我会这样配置'youStoreFrontExtension / web / webroot / WEB-INF / config / spring-mvc-config.xml'文件:
<property name="uiExperienceViewPrefix">
<map>
<entry key="DESKTOP" value="${commerceservices.default.desktop.ui.experience:desktop}/"/>
<entry key="MOBILE" value="${commerceservices.default.mobile.ui.experience:desktop}/"/>
</map>
</property>
<property name="unknownUiExperiencePrefix" value="${commerceservices.default.desktop.ui.experience:desktop}/"/>
使用这样的local.properties:
commerceservices.default.desktop.ui.experience=desktop
commerceservices.default.mobile.ui.experience=desktop
在最新版本的加速器下,您有一个自适应视图文件夹,如果它是您正在使用的文件夹,则应将桌面更改为响应。
答案 1 :(得分:1)
添加:
# Disables the mobile version of the site. This can be made site specific like this:
# uiexperience.level.supported.b2ctelco=DESKTOP
uiexperience.level.supported=DESKTOP
到店面扩展的project.properties文件。
它告诉Hybris你只想支持桌面ui体验级别。 注:在更改生效之前,您需要清除移动设备上的缓存/ cookie。
答案 2 :(得分:0)
重定向机制是通过spirngMVC的视图解析器实现的,您应该在前扩展名下的spring-mvc-config.xml
文件中找到它。
要关闭重定向,您应该:
将uiExperienceViewPrefix
属性更改为
<property name="uiExperienceViewPrefix">
<map>
<entry key="DESKTOP" value="desktop/"/>
<entry key="MOBILE" value="desktop/"/>
</map>
</property>
这会将所有移动视图重定向到桌面jsp页面。
El jaoujat
答案 3 :(得分:0)
如果您有权访问hybris wiki,请检查以下网址:
https://wiki.hybris.com/display/forum/Turning+off+mobile+site+ui+experience