Just change the app pool in IIS to use the Integrated Pipeline instead of
the classic pipeline. This also may necessitate some changes to your
web.config file as well (adding a webserver section and moving the modules
under there IIRC).

http://www.west-wind.com/Weblog/posts/168221.aspx

- Robert

On Sun, Mar 28, 2010 at 5:09 PM, Ashwin <[email protected]> wrote:

> I started using NHibernateSessionPerConversationModule.cs HttpModule
> (http://www.summerofnhibernate.com/ ) which creates a session per
> conversation ( and everytime there is a page request for some reason
> the Application_BeginRequest gets fired twice. And it ends up throwing
> the follwoing messages.
>
> 1) Object reference not set to an instance of an object.
>
> When I dig deeper here is what i see in the follwoing error messages
>
>   base {System.NotSupportedException} = {"This operation requires IIS
> integrated pipeline mode."}
>
>   CurrentNotification = 'HttpContext.Current.CurrentNotification'
> threw an exception of type 'System.PlatformNotSupportedException'
>
> Iam using Visual studio 2008 on my windows 7 laptop and IIS server
> ( Version 7.5.7600.16358 ) . Am not sure if I have to change any
> settings in the integrated webserver of VS 2008.
>
> Here is the code.
>
>    private void Application_BeginRequest(object sender, EventArgs e)
>        {
>            ISession currentSession =
> (ISession)HttpContext.Current.Session[NHIBERNATE_CURRENT_SESSION_KEY];
>            if (currentSession == null)
>            {
>                currentSession = StaticSessionManager.OpenSession();
>                currentSession.FlushMode = FlushMode.Never;
>            }
>            CurrentSessionContext.Bind(currentSession);
>            currentSession.BeginTransaction();
>        }
>
>        private void Application_EndRequest(object sender, EventArgs
> e)
>        {
>            ISession session =
> CurrentSessionContext.Unbind(StaticSessionManager.SessionFactory);
>
>            if
> (HttpContext.Current.Items[NHIBERNATE_CONVERSATION_END_FLAG_KEY] !=
> null)
>            {
>                session.Flush();
>                session.Transaction.Commit();
>                session.Close();
>
> HttpContext.Current.Session[NHIBERNATE_CURRENT_SESSION_KEY] = null;
>            }
>            else
>            {
>                session.Transaction.Commit();
>
> HttpContext.Current.Session[NHIBERNATE_CURRENT_SESSION_KEY] = session;
>            }
>
>        }
>
> --
> You received this message because you are subscribed to the Google Groups
> "nhusers" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected]<nhusers%[email protected]>
> .
> For more options, visit this group at
> http://groups.google.com/group/nhusers?hl=en.
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"nhusers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/nhusers?hl=en.

Reply via email to