Spring bean scopes: session and globalSession

globalSession is something that is connected to Portlet applications. When your application works in a Portlet container it is built of some amount of portlets. Each portlet has its own session, but if you want to store variables global for all portlets in your application then you should store them in globalSession. This scope doesn't have any special effect different from the session scope in Servlet based applications.


As per Spring documentation ::

session - Scopes a single bean definition to the lifecycle of an HTTP Session. Only valid in the context of a web-aware Spring ApplicationContext.

global session - Scopes a single bean definition to the lifecycle of a global HTTP Session. Typically only valid when used in a portlet context. Only valid in the context of a web-aware Spring ApplicationContext.


Session scope adds bean definiton of a http session, valid only in application context. a new bean will be created for each http session by the conntainer. Global session scope adds bean definiton of a global http session used in portlet application context.