2

フォールバック ソリューションをモバイルで動作させようとしていますが、いくつか問題があります。

私は次のjsp構造を持っています

views
-mobile
--about.jsp
-tablet
--about.jsp
--intermediary.jsp
about.jsp
intermediary.jsp

現在、モバイルには intermediary.jsp はありませんが、フォールバック ディレクトリにはあります。AbstractDeviceDelegatingViewResolver 内の resolveViewName は、ビューが null の場合にのみ発生します。

    public View resolveViewName(String viewName, Locale locale) throws Exception {
    String deviceViewName = getDeviceViewName(viewName);
    View view = delegate.resolveViewName(deviceViewName, locale);
    if (enableFallback && view == null) {
        view = delegate.resolveViewName(viewName, locale);
    }
    if (logger.isDebugEnabled() && view != null) {
        logger.deb

私が抱えている問題は、null を返す viewResolver が見つからないことです。InternalResourceViewResolver は null を返さず、UrlBasedViewResolver は常に存在しない /mobile/intermediary.jsp のビュー名を返すため、404 がスローされます。

ありがとう、

4

1 に答える 1