Return-Path: Delivered-To: apmail-jakarta-tomcat-user-archive@apache.org Received: (qmail 61132 invoked from network); 17 Dec 2002 15:44:28 -0000 Received: from exchange.sun.com (HELO nagoya.betaversion.org) (192.18.33.10) by daedalus.apache.org with SMTP; 17 Dec 2002 15:44:28 -0000 Received: (qmail 20052 invoked by uid 97); 17 Dec 2002 15:45:18 -0000 Delivered-To: qmlist-jakarta-archive-tomcat-user@jakarta.apache.org Received: (qmail 20015 invoked by uid 97); 17 Dec 2002 15:45:17 -0000 Mailing-List: contact tomcat-user-help@jakarta.apache.org; run by ezmlm Precedence: bulk List-Unsubscribe: List-Subscribe: List-Help: List-Post: List-Id: "Tomcat Users List" Reply-To: "Tomcat Users List" Delivered-To: mailing list tomcat-user@jakarta.apache.org Received: (qmail 20003 invoked by uid 98); 17 Dec 2002 15:45:17 -0000 X-Antivirus: nagoya (v4218 created Aug 14 2002) Message-ID: <0afc01c2a5e3$1d4dc370$6f00000a@dbgroup.co.uk> From: "Mike W-M" To: "Tomcat Users List" References: Subject: Re: JSP to Servlet to JSP pathing issue. Relative PathingPlease help. Date: Tue, 17 Dec 2002 15:43:56 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4807.1700 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4807.1700 X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N True (and I missed that that was the whole point of your exercise) but redirecting is the (only) way to get the browser's URL to change. If you think about it, you're basically saying that you want two different URLs (one to the servlet and one to the jsp), when displayed in the browser, to mean the same thing - which just isn't going to work. Two possible solutions: a) The ugly but quicker one: code the absolute URL in the jsp's form's action attribute. b) The elegant one: Don't link to the jsp page at all. Always link to the servlet, then make the servlet check for the existence of parameters. If your parameters exist then it was a form submission, so do what ever you do now and then forward() to the jsp. (This leaves the URL the same in the browser and doesn't lose the request-info.) If parameters don't exist, then just forward() to the jsp page (without doing any processing). It'll presumably behave like it does now when you request it directly. However, the browser's URL will still have the servlet's URL - and you can code all the paths relative to that. Mike. ----- Original Message ----- From: "Jason Johnston" To: Sent: Tuesday, December 17, 2002 3:25 PM Subject: Re: JSP to Servlet to JSP pathing issue. Relative PathingPlease help. The redirecting doesn't seem to work. That tells the browser client to initiate a new request and all the information that I placed in the request object is gone, which undermines the purpose of the form. The forums have a lot on my problem, just no answers that have worked for me. Has anyone else ran into the issue of using a form in a JSP to submit data to a Servlet, have that servlet return data to the very same JSP? Thanks in advance. >>> Jason.Johnston@epa.state.il.us 12/16/02 12:53PM >>> Thanks for the advice, I didn't know you could redirect. The javadoc on the RequestDispatcher only lists the forward and include methods. I'll try that. The initial call to the servlet is actually being made by the client browser via a form response. >>> mike@ward-murphy.co.uk 12/16/02 12:00PM >>> If you want the path in the browser's address bar to change, I think you have to use a "redirect" rather than a "forward". (I've read that even then it's not guaranteed to work (since it's browser-dependent), but it's working fine for me. There's the disadvantage of an additional network round-trip that's not ideal, but I don't know of any other way.) [Actually, I guess you're already redirecting from the original jsp request to the servlet. If you changed that to "forward" then that'd probably solve you're problem without the additional round-trip....] Mike. ----- Original Message ----- From: "Jason Johnston" To: "<"Tomcat Users List"" Sent: Monday, December 16, 2002 5:46 PM Subject: JSP to Servlet to JSP pathing issue. Relative Pathing Please help. I have a JSP that has a form that I want processed by a servlet. The servlet then places the results in the page context and redirects back to the JSP. Everything works fine on the first go, but the second time through the path in the client's browser is no longer valid. Initially, the path is: http://localhost:8080/testgroup/lookup.jsp This then sends the form data to the /testgroup/servlet/dolookup? The servlet executes and uses the request dispatcher to load the original JSP. RequestDispatcher rd=getServletContext().getRequestDispatcher("//lookup.jsp"); rd.forward(request,response); The original JSP comes up fine and has the results, but the path in the browser URL is still the servlet address. Since the form sends to a relative path, the second time you try to run, it doesn't work. http://localhost:8080/testgroup/servlet/test.dolookup?epaid=J2466&search=id& firstname=&lastname= This seems to be a very simple relative pathing problem, but I've tried various solutions with no luck. I'm sure someone else has run into this and found a solution. If anyone has any insight, please help. Thanks. -- To unsubscribe, e-mail: For additional commands, e-mail: -- To unsubscribe, e-mail: For additional commands, e-mail: