forms - Spring MVC Restful 应用程序 : Redirect a form result to another page

标签 forms spring model-view-controller rest redirect

我是 Spring MVC Restful 的新手。
假设我有 index.jsp,它将用户转发到一个表单页面,用户可以在其中提交一个术语进行搜索。我用 POST 处理程序方法捕获该术语,然后进行一些计算并希望将结果重定向到另一个页面(/WEB-INF/jsp),例如,我们说根据结果构建一个图。问题是如何同时收集结果和重定向 URL。
Controller 如下:

@RequestMapping(value="/termForm", method = RequestMethod.GET)
public ModelAndView  setupForm() {
Term termClass = new Term();
return new ModelAndView("term", "command", termClass);
}
@RequestMapping(value="/getTerm", method=RequestMethod.POST)
public String getTerms(@ModelAttribute("term") Term term, BindingResult result)
{
    String label = term.getTerm();

    //doing some calculation to term here
    result = ....
    return "redirect:"+ "graphPage.jsp";
}

通过搜索,我发现Spring View Resolver只能处理根目录下重定向的jsp(和index.jsp一样)。在这种情况下,“graphPage”似乎不接受“result”。我还在 XXX-servlet.xml 中包含 UrlBasedViewResolver 如下:
   <bean id="viewResolver"
    class="org.springframework.web.servlet.view.UrlBasedViewResolver">
    <property name="viewClass"
        value="org.springframework.web.servlet.view.JstlView" />
    <property name="prefix" value="/WEB-INF/jsp/" />
    <property name="suffix" value=".jsp" />
</bean>

抱歉问了这么长的问题,请给出任何提示来做到这一点。非常感谢。

我的问题有两个部分。一种是将 POST 方法重定向到另一个页面,graphPage.jsp。由于我们转到图形,因此我们还需要来自 POST 方法的数据来创建图形。这是另一个问题。希望很清楚。我已经通过添加处理程序方法解决了第一个问题,见下文。但是如何将结果打包并传递给Graph.jsp呢?谢谢
@RequestMapping(value="/graphPage", method=RequestMethod.GET)
public String showGraph()
{

    return "graphPage";
}

最佳答案

如果您使用 RedirectView,您将更好地控制重定向。而不是字符串。请参阅此示例。

@Contoller
@RequestMapping("/your")
public class YourController


    @RequestMapping(value="/getTerm", method=RequestMethod.POST)
    public ModelAndView getTerms(@ModelAttribute("term") Term term, BindingResult result) {
        ...
        return new ModelAndView(new RedirectView("/your/other", true));
    }

    @RequestMapping(value="/other", method=RequestMethod.POST)
    public String otherMethod() {...}       
}

但也许你问了一些不同的问题,那么请重写你的问题。很难理解你的问题是什么。/

顺便提一句。测试您是否可以直接请求您的“graphPage”

关于forms - Spring MVC Restful 应用程序 : Redirect a form result to another page,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12330679/

相关文章:

java - 如何在 MVC Java 中实现我的代码?

java - Java Swing 模型/MVC 的目的

javascript - 防止 jQuery post 请求多次触发

java - 没有错误,但是映射不起作用 Spring boot + tomcat 8.0

html - 表单提交后如何关闭模式框?

spring - 带有违反单一职责原则的 CRUD 方法的类?

java - 使用 Java 泛型的 Hibernate 映射异常

javascript - 在实现聊天服务时我应该遵循哪些最佳实践和标准?

forms - TYPO3 8.7 - 核心扩展形式正在设置 fe_typo_user

javascript - 使用 jQuery 阻止表单提交