2013-09-24 56 views
1

我的下一个绿豆:会话范围鉴于豆与Spring 3

@Component 
@ComponentScan("es.pys.model") 
@Scope(value = WebApplicationContext.SCOPE_SESSION, proxyMode = ScopedProxyMode.TARGET_CLASS) 
public class Sesion { 

    private Long id; 
    private String name; 
} 

,我使用几个控制器。

@Autowired 
private Sesion sesion; 

我希望在我看来太(例如)使用它:

<spring:message code="welcome" arguments="${fn:escapeXml(sesion.name)}" htmlEscape="false"/> 

的问题是,前行不起作用,因为sesion不存在。

在我所有的观点中,我如何访问我的豆,,只有这个豆? 我一直在阅读解决方案,如:

<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 
    <property name="exposedContextBeanNames"> 
     <list> 
      <value>sesion</value> 
     </list> 
    </property> 
</bean> 

的事情是,我需要在applicationContext.xml来定义,而不是使用说明我的豆腐,还是我错了?

想法?

谢谢!

+0

不要紧,你的bean是如何定义的(XML,注释,Java的配置或属性),只要添加到您的servlet-context.xml的作为名称匹配它将被暴露。 –

+1

@ Component组件上的'@ ComponentScan'没有任何意义,在这个位置也没有任何意义。 –

回答

1

需要

<mvc:annotation-driven /> 

+0

嘿Philipp Sander。我已经在我的servlet上下文中有这一行。 – maqjav