在Spring Boot中无法正确转发

问题描述 投票:0回答:1

作为从Struts 1.x到Spring Boot迁移的一部分,我一直在努力正确转发应有的信息。

原始的Struts版本依赖于web.xml,尽管我想将项目转换为一个全新的,完全基于Java的解决方案,但由于时间的限制,它的复杂性使此操作有些艰巨,并且可能不必要。我还把视图部分留在了原始的JSP中,即使它的齿长了一些。

-我有一个初始banner.jsp页面,一旦通过验证,它就会正确显示。

-单击banner.jsp页面上的“确定”按钮,然后尝试转发到index.jsp页面(以上代码所在的位置)。相应的日志(除其他外)产生:

…DispatcherServlet-POST“ / Employees / do / Index”的“ FORWARD”调度,参数= {masked}没有POST / Employees / do / Index的映射从“ FORWARD”分发中退出,状态404

(““ Employees”是各个jsp页面所驻留的uri根)

-在原始的Struts版本中,单击index.jsp并传递了显示的已填充template.jsp页面。

404似乎只是指示映射问题,但是当我尝试了每个uri变体时,我都能想到,我认为问题的根源与jsp forward有关,而Spring无法理解其“ do / Index”。在Struts中,这似乎是传递参数值的构造。

为视觉起见,这里是一些相关代码:

banner.jsp

<form name="bannerForm" method="post" >
            <input type="hidden" name="accepted" value="yes" />
            <input type="submit" value="Ok" />
</form>

index.jsp

<%@ page language="java" contentType="text/html;charset=UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<c:if test='${empty Validated}'><jsp:forward page="/do/Index" /></c:if>

任何想法可能是什么问题,或者存在等效问题或解决方法?

java spring jsp struts-1
1个回答
0
投票

您可以尝试在application.properties中进行以下配置

spring.mvc.view.prefix = / WEB-INF / jsp /spring.mvc.view.suffix = .jsp

并且您的WEB-INF应该位于src / main / webapp /文件夹中。完整路径将类似于src / master / vegcart / src / main / webapp / WEB-INF / jsp /(根据maven Project)] >

© www.soinside.com 2019 - 2024. All rights reserved.