@Override protected String getDeviceViewNameInternal(String viewName) { RequestAttributes attrs = RequestContextHolder.getRequestAttributes(); Assert.isInstanceOf(ServletRequestAttributes.class, attrs); HttpServletRequest request = ((ServletRequestAttributes) attrs).getRequest(); Device device = DeviceUtils.getCurrentDevice(request); SitePreference sitePreference = SitePreferenceUtils.getCurrentSitePreference(request); String resolvedViewName = viewName; if (ResolverUtils.isNormal(device, sitePreference)) { resolvedViewName = getNormalPrefix() + viewName + getNormalSuffix(); } else if (ResolverUtils.isMobile(device, sitePreference)) { resolvedViewName = getMobilePrefix() + viewName + getMobileSuffix(); } else if (ResolverUtils.isTablet(device, sitePreference)) { resolvedViewName = getTabletPrefix() + viewName + getTabletSuffix(); } // MOBILE-63 "redirect:/" and "forward:/" can result in the view name containing multiple trailing slashes return stripTrailingSlash(resolvedViewName); }
@Override protected String getDeviceViewNameInternal(String viewName) { RequestAttributes attrs = RequestContextHolder.getRequestAttributes(); Assert.isInstanceOf(ServletRequestAttributes.class, attrs); HttpServletRequest request = ((ServletRequestAttributes) attrs).getRequest(); Device device = DeviceUtils.getCurrentDevice(request); SitePreference sitePreference = SitePreferenceUtils.getCurrentSitePreference(request); String resolvedViewName = viewName; if (ResolverUtils.isNormal(device, sitePreference)) { resolvedViewName = getNormalPrefix() + viewName + getNormalSuffix(); } else if (ResolverUtils.isMobile(device, sitePreference)) { resolvedViewName = getMobilePrefix() + viewName + getMobileSuffix(); } else if (ResolverUtils.isTablet(device, sitePreference)) { resolvedViewName = getTabletPrefix() + viewName + getTabletSuffix(); } // MOBILE-63 "redirect:/" and "forward:/" can result in the view name containing multiple trailing slashes return stripTrailingSlash(resolvedViewName); }