HttpHandlers / Modules :: Session Null In Module Event (PreRequestHandlerExecute) For .asmx Web Service ?
Jun 18, 2010
I have a module that subscribes to PreRequestHandlerExecute event, which uses the Session object. When i set the webconfig compilationdebug flag to false, the Session object is null when making requests to the web service. It works fine for .aspx requests, but only have problems for .asmx. When i set the debug flag to true everything works fine. I need to set this flag to false for production, but can't seem to get it work.I'm using II7 and the integrated pipeline, so this event will fire for all requests.
I have IReadOnlySessionState and IRequiresSessionState on my module but still httpApplication.Context.Session == null is this because these session state hasn't been created yet? is there a way around this?
I hope I am posting into the right area... I want to know if you can access a session variable from a HTTP Module in IIS 7. Here is the scenario, I want to access the session values (i.e. User Object) from a HTTP Module. I have read oodles and tried many things but to no avail. I guess the application uses Forms authentication to authorize a logon to the site. I want to monitor the url that is submitted... RAWUrl property and if they are going to a certain page I want to grab their user object from THEIR session and validate them for access to that page. I want to use a httpmodule for this. The long and short of this is "Can I get access to session variables from the request from the httpmodule code behind? If I can, could you beso kind as to show me a working sample... I have tried many permutations on this using httpapplication, context and so forth and I can't seem to get access to session variables that would belong to the users request. it this possible?
So I've read quite a few posts about how to do this, and it's still getting me. I'm trying to control access to a directory, but I continue to get a null session error. I'm doing my check in PostAcquireRequestState
[Code]....no matter where I put this, my session always comes back null. I am using IRequireSessionState on the class as well. Am I pulling the context wrong?
I have developed a quick module that adds some text to the bottom of every page. This text will basically inform the user they are using my application in a test environment and save me editing the Master/Content pages for all my files.Sadly, my code adds the string AFTER the </html> tag, which isn't very good. Can anyone advise how to make this module add the stringprevious to the </body> tag, so that it gets rendered correctly according the HTML standards?
Can anyone tell me if there is a way to convert all URL's to lowercase using an Http Module for URL rewriting? For example www.homeforhire.com/Home.aspx should be converted to lowercase.
I cannot use the IIS7 URL Rewriter because I need to perform database lookups as part of my URL rewriting.
I have researched this extensively but have not had any luck finding a solution.
The only alternative I can think of is to use a dynamically created canonical link in my page headers.
Our site uses urlRewriter http module that does the url rewriting for us. I want to create another http module that will handle our customize URL redirects. Now I want this new customize http module to be call before the UrlRewriter module (to avoid page not found messages the UrlRewriter generates). Is there a way we can contol the calling order ?
I am writing a custom HTTP module to implement user authentication and appropriate access rights. And for identifying access rights for the user also depends on identifying the client's machine details like IP address, machine name, etc. The access rights will depend based on from which location or machine the user is trying to login.
Can we get these details from the HttpApplication or HttpContext object?
The iPhone sends an HTTP GET request to my web application to recieve an update for an internet calendar. The iPhone does not conform to the RFC 822 Date Format for this request. It sends the If-Modified-Since as follows:
RFC 822 format - Sun, 06 Nov 1994 08:49:37 GMT iPhone Format - Sun, 6 Nov 1994 08:49:37 GMT
I dont know much about handlers or modules. Is it possible to write a handler or module that could intercept this request and reformat the If-Modified-Since date format to the standard. Currently when IIS recieves this request it immediately sends back a 400 Error because of this invalid format.
I am wanting to create a url rewriting module and have investigated numerous examples on the web. However, most do not address the issues of handling postbacks and querystrings. I cam across a few examples, but don't fully understand how they work and thus customizing them to my needs becomes a problem. I understand the basic concepts of rewriting, but can someone explain, or point me to a resource on how postbacks and querystrings are handled?
i redirect a page from http to https using http module begin request handler .i am calling webservice using ajax but it is saying webserice not defined .which otherwise works fineits work fine when rediect page in page_load instead .but i need to add function for https to http in every page. i still not know why ajax is not working when i use http module for redirect
I have a compression module built based on several examples on the web. Initially, I hooked into the BeginRequest event of the application context to conditionally compress certain file types. This seems to have worked fine for JS and HTML, but CSS was giving me trouble. Here are the specific steps I could take to reproduce the problem consistently.
I have read in many places that referencing IRequiresSessionState or IReadOnlySessionState will allow me access to the Session scoped variables from within the ProcessRequest method in an ASHX file.
I have implemented these changes, as follows, and I am unable to retrieve this data still, as the server returns a null object reference error:
using System; using System.Web; using System.Web.SessionState;[code]....
The error is most certainly specific to pulling data from the session, yet I am 100% certain that the session contains data in this key.
It shouldnt matter where I am storing the data (cookies, vs db, etc), right?
regarding one issue I am facing. I created a httpmodule for hadling the unhandled errors and I need to log those errors using log 4 net in database.Everting working fine but I am not getting any error information once the error was hadled and I need that info too. I want to make it as a centralize module which can trap all errors and log those errors.How call application_error event of httpmodule from catch block...so that I can log that info there and I no need log in every catch block..
I have an Asp.net web service that I created using Visual Studio 2005. I can acess the web service in my test environment, call methods and return data as expected. If this web service is published to the outside world (Outside of the company firewall), it will return a null why this might be happening? The same code is being used,against the same database. The only difference is that the published website is giving back the null reference exception. If I type in the URL for the web service "https://secure.theSiteGeist.com/wsIndigo.asmx" a list of methods for the web service is displayed in my browser. Yet if I try and call any methods on the web service I get back the null reference exception. Note that the URL I posted above is not the real name of my web service, but is just used for reference sake.
I have a simple WCF service that returns the time from the server. I've confirmed that data is being sent by checking with Fiddler. Here's the result object xml that my service sends according to fiddler.
[Code]....
Literally the only difference is the namespaces within the application. But still the values being returned are null, empty or a .NET default.
I have an ASMX webservice hosted alongside my ASP.NET web app. Now, I need to get the users session into the Webservice. To test this I made this simple method:
[WebMethod(EnableSession = true)] public string checkSession() { return HttpContext.Current.Session["userid"].ToString(); }
So, first I login to my web app, then in the browser goto my webservice and click "checkSession" on that auto generated test page. I have tested this on 3 computers. All 3 of those work fine with the webapp(so the sessions are being created etc), and 2 of those return the value of Session["userid"] on invoking the webmethod, however the last computer returns "Object reference not set to an instance of an object" because Session is null.
So, whats the difference between these computers and why can my ASP.NET app get the sessions on all computers but the webservice cant?