小编Art*_*t79的帖子

从jsp访问Spring MVC DI bean

在某些MVC框架中,如果您希望执行某些代码并呈现某些部分视图,则可以从视图中调用控制器操作.我不确定在Spring MVC中执行它的正确方法是什么

我想要一组JSP模板.其中一些将是页面布局,其中一些将是小组件,如分页器,登录框,菜单,标签云等等.这些组件中的每一个都需要一些bean或控制器操作来将一些数据设置到ViewAndModel中,以便视图可以使用它.

问题是我不想在每次调用中设置所有这些对象.我的注册管理员只关心注册处理.所以现在我该怎么做呢?如何从视图中调用DI bean或控制器以准备部分视图?或者我应该创建一些映射?或者我是从完全错误的角度来解决问题的?

templates jsp controller view spring-mvc

14
推荐指数
2
解决办法
2万
查看次数

Spring 3中的默认对象mvc SessionAttributes当会话到期时

我想我对spring mvc中的会话注释有点困惑.

我有这样的代码(2个步骤构成示例,第1步用户数据,第2步地址)

@SessionAttributes({"user", "address"})
public class UserFormController {

    @RequestMapping(method = RequestMethod.GET)
    public ModelAndView show( ModelAndView mv ){
        mv.addObject( new User() );
        mv.addObject( new Address() );
        mv.setViewName("user_add_page");
        return mv;
    }

    @RequestMapping(method = RequestMethod.POST)
    public String processForm( User user, BindingResult result ){
        new UserValidator().validate(user, result);
        if( result.hasErrors() ){
            return "user_add_page";
        }else{
            return "redirect:/user_form/user_add_address";
        }

// .........
}
Run Code Online (Sandbox Code Playgroud)

现在如果我在会话结束后提交页面,我会收到错误

org.springframework.web.HttpSessionRequiredException:会话属性'user'required - 在session中找不到

我该如何处理?我想有2个选择

  1. 我在会话中缺少并创建空对象并接受提交
  2. 我带回一些消息转发回用户表单

我仍然处于学习Spring的早期阶段,很抱歉,如果它非常明显,我就是无法看到它.

PS.即使是在春季mvc解决这种形式的好方法,还是你会推荐不同的方法?

java session spring spring-mvc

7
推荐指数
1
解决办法
1万
查看次数

标签 统计

spring-mvc ×2

controller ×1

java ×1

jsp ×1

session ×1

spring ×1

templates ×1

view ×1