On Sep 15, 2010, at 2:17 PM, Mark Wardle wrote: > Hi Chuck - Thank you for these questions - they were enough for me to start > properly debugging this myself. > > Interestingly, to aid debugging, I removed four of the five application > instances and bizarrely found that it seemed to be working perfectly. (It > also works perfectly if I go to cvx-neuro01:2001/ for example) > > As soon as I add an additional instance I start to get login problems. The > redirect to the login page is handled perfectly, but the redirect to the > original URL fails. Here is an example with two application instances. > > http://cvx-neuro01/ > > is redirected by apache to > > http://cvx-neuro01/cgi-bin/WebObjects/RSNews.woa/wa/login?destinationUrl=%252Fcgi-bin%252FWebObjects%252FRSNews.woa%252F2
Redirected may not be what you want. Last, Pass Through may work better? Not sure, but maybe worth a try. > RewriteEngine on > RewriteRule ^/$ /cgi-bin/WebObjects/RSNews.woa/ [L,PT] > [note the extra /2 at the end there] You need that at some point. The instance where the login is processed has to be the same instance redirected to after login. > I get the login page... try to login in... get this > > http://cvx-neuro01/cgi-bin/WebObjects/RSNews.woa/2/wa/login?destinationUrl=%252Fcgi-bin%252FWebObjects%252FRSNews.woa%252F2 > > login works... I am not sure I understand. After the login, it shows the login again and logging in a second time works? > It seems to be an issue crossing over between application instances. Yes, it is. > See below for additional comments. And again. > On 15 September 2010 04:03, Chuck Hill <[email protected]> wrote: > On Sep 14, 2010, at 1:45 PM, Mark Wardle wrote: <snip> > > The loginAction() eventually calls this method to redirect back to the > > original requesting page: > > /** > > * Creates a redirect that will redirect to the requested landing > > page (destination url). > > * TODO: Do we really need to add wosid here? > > * @param session > > * @param destinationUrl > > * @return > > * @throws UnsupportedEncodingException > > */ > > private WOComponent redirectToDestinationUrl(Session session, String > > destinationUrl) throws UnsupportedEncodingException { > > String decodedUrl = > > java.net.URLDecoder.decode(destinationUrl, "UTF-8"); > > if (session.storesIDsInURLs()==true) { > > decodedUrl = > > ERXWOContext.stripSessionIDFromURL(decodedUrl); // remove > > existing wosid, if it exists > > decodedUrl = > > ERXExtensions.addWosidFormValue(decodedUrl, session); > > } > > else { > > log.debug("Note: we are storing session id in > > cookies: therefore not using wosid..."); > > } > > ERXRedirect redirect = (ERXRedirect) > > pageWithName("ERXRedirect"); > > // decodedUrl = "http://" + > > session().context().request()._serverName() + decodedUrl; > > log.debug("Finally: redirecting to page: " + decodedUrl); > > What does that log out? > > > either > /cgi-bin/WebObjects/RSNews.woa/2 > or > /cgi-bin/WebObjects/RSNews.woa/2/wa/default Are you storing the session ID in cookies? I am guessing so as it works with one instance. If not, you will need to append it to the URL. Otherwise, those URLs look correct. > > redirect.setUrl(decodedUrl); > > return redirect; > > } > > > > I think the problem is something to do with default actions and may also be > > complicated by apache rewrite rules but I'm confused and as the title > > suggests, dimmer than a very dim thing. > > Rewrite rules are also a definite possibility. You can use the same ones in > development to avoid this becoming an issue when you deploy. > > RewriteEngine on > RewriteRule ^/$ /cgi-bin/WebObjects/RSNews.woa/ [R] > > > Is there a good trick to remove the application identifier from the original > url before using it as a destination Url. All of this is to support being > able to email out a cleverly created URL to view secure clinical messages so > having the JIT login is quite useful really. I don't think you want to remove it. I can't quite see what is wrong yet. Chuck -- 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
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list ([email protected]) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com This email sent to [email protected]
