The code was crashing but it has been resolved. Thanks. vcm
-----Original Message----- From: Chuck Hill [mailto:ch...@global-village.net] Sent: Thursday, July 02, 2009 3:52 PM To: vcmil...@cssg.com Cc: webobjects-deploy@lists.apple.com Subject: Re: dispatchRequest method problem / Project Wonder integration On Jul 1, 2009, at 6:51 AM, Vicky C. Miller wrote: > We have updated our existing WebObjects application from WO 5.2.4 to > WO > 5.4.3 and integrated in Project Wonder. We have hit a problem with > WebObjects 5.4.3 in our application and the dispatchRequest method in > Application class that is a part of the WebObjects request response > loop. > > The purpose of this section of our code is to check whether the same > user > who started accessing the application or somebody else is trying to > access > the application in the middle. This check will happen for every page > request. If the logged in user is not the person who is accessing > the page, > then page will be redirected to homepage of solar application. > > Does any one have suggestions on resolving this? Below is more > information. > The interesting this is that this problem only occur when we attempt > to log > on using IE 7 or 8 but works fine in Safari and Firefox. I don't think I understand what the problem is. What exactly is the problem and what part of the code below is causing it? Chuck > > Problem Location : > > In Class Application.java and in method public WOResponse > dispatchRequest(WORequest aRequest) > > Problem Code : > > public WOResponse dispatchRequest(WORequest aRequest) > { > //here we basically want to capture one recently served perfect > request, so to get to this, we'll check the request as follows. > if(recentlyServedPerfectReq == null || > canResetRecentlyServedPerfectReq || > (recentlyServedPerfectReq.sessionID() != > null && aRequest.sessionID() != null > && > recentlyServedPerfectReq.sessionID().equals(aRequest.sessionID()) > == false)) > { > recentlyServedPerfectReq = aRequest; > canResetRecentlyServedPerfectReq = > (recentlyServedPerfectReq.sessionID() == null); > } > //added for bug# 313(07/11/2007, MSK) -- end > > // first check if the session is created for this Request > // Session not created means, first time user > if(aRequest.sessionID() == null || (aRequest.sessionID() != > null && > aRequest.formValueForKey(".loginPage") != null) || > (aRequest.sessionID() != > null && aRequest.formValueForKey(".homePage") != null) || > (aRequest.sessionID() != null && > aRequest.formValueForKey(".exitPage") != > null)){ > //This is the case where the session is not created Yet > or the > first page is not LoginPage > return super.dispatchRequest(aRequest); > }else if(aRequest.sessionID() != null && > aRequest.cookieValueForKey(aRequest.sessionID()) != null){ > // This is the case where the session is created and > there is a > cookie created in this request > // check to see if the cookie matches the one that's set > String userNameInSes = ""; > String hostNameInReq = ""; > String cookieValue = > aRequest.cookieValueForKey(aRequest.sessionID()); > if(this.sessionStore() != null && > this > .sessionStore().restoreSessionWithID(aRequest.sessionID(),aRequest) != > null){ > userNameInSes = > ((Session > )this.sessionStore().restoreSessionWithID(aRequest.sessionID(),aReq > uest)).loginUser().fullName(); > hostNameInReq = getHostNameFromRequest(aRequest); > > > //System.out.println(" Cookie Value Constructed from > session > and request values= " + userNameInSes+hostNameInReq); > > // check to see if the value of cookie is same as that > obtained now > if((userNameInSes+hostNameInReq).equals(cookieValue)){ > // success. Send the user to the respective Page > return super.dispatchRequest(aRequest); > > } > } > > } > // Any of the case doesn'e match, send the user to the login > Page. > WOResponse res = new WOResponse(); > WOComponent redirectPage = > pageWithName("Main",createContextForRequest(aRequest)); > WOResponse resp = redirectPage.generateResponse(); > res.setContent(resp.contentString()); > //res.setContent("<html><body><h1>Error</h1></body></html>"); > return res; > } > > > > _______________________________________________ > Do not post admin requests to the list. They will be ignored. > Webobjects-deploy mailing list (Webobjects- > dep...@lists.apple.com) > Help/Unsubscribe/Update your Subscription: > http://lists.apple.com/mailman/options/webobjects-deploy/chill%40global-vill age.net > > This email sent to ch...@global-village.net > -- Chuck Hill Senior Consultant / VP Development Practical WebObjects - for developers who want to increase their overall knowledge of WebObjects or who are trying to solve specific problems. http://www.global-village.net/products/practical_webobjects _______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-deploy mailing list (Webobjects-deploy@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/webobjects-deploy/archive%40mail-archive.com This email sent to arch...@mail-archive.com