本帖最后由 ajc111 于 2010-11-20 22:05:48 编辑

解决方案 »

  1.   

    不能设置hbm.xml中的lazy选项,老师要求的,说那么做效率太低..那就没办法了,要么就将lazy设置了false,让关联对象一并加载过来,否则就会报session不存在与关闭的错误。除非你重新开一个接口,用来查询关联对象。但是你还是得先获取该关联对象的主键值的啊!不对请拍砖,一起学习
      

  2.   

    已经解决了.首先,把web.xml中osiv的位置提到所有filter之前,其次使用
    org.springframework.web.filter.DelegatingFilterProxy
    动态给filter注入service.
    格式如下
    <filter>
            <filter-name>sessionFilter</filter-name>
            <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
            <init-param>
                <param-name>targetBeanName</param-name>
                <param-value>sessionFilter</param-value>
            </init-param>
            <init-param>
                <param-name>targetFilterLifecycle</param-name>
                <param-value>true</param-value>
            </init-param>
        </filter>
    sessionFilter就是你的sessionFilter,同时也是sprint_beans.xml中bean的id,url-pattern不变,该怎么配还怎么配,就是通过代理来从spring中动态生成过滤器并且注入相关bean,spring配置就不用赘述了吧.