We help IT Professionals succeed at work.

Check out our new AWS podcast with Certified Expert, Phil Phillips! Listen to "How to Execute a Seamless AWS Migration" on EE or on your favorite podcast platform. Listen Now

x

How to get address bar's text?

thungrac01
thungrac01 asked
on
Medium Priority
353 Views
Last Modified: 2008-02-01
I use WebSphere 5.0 and I want to get address bar's text.
For example my addressbar is "http://locahost:9080/TestProject/welcome.do?par=2", how to get this text?

Thanks in advance.
Comment
Watch Question

Java Developer
CERTIFIED EXPERT
Top Expert 2010
Commented:
Unlock this solution with a free trial preview.
(No credit card required)
Get Preview
rrzstudent
CERTIFIED EXPERT
Commented:
Unlock this solution with a free trial preview.
(No credit card required)
Get Preview
Mick BarryJava Developer
CERTIFIED EXPERT
Top Expert 2010

Commented:
> does your line really work ?

Basically the same as what you posted, I just forgot the ?

Commented:
I think there are cases where you really have to use JavaScript for this.  Sometimes
the app server redirects internally, changing the result of request.getRequestURI(), but
the browser will still display the original address it requested.
rrzstudent
CERTIFIED EXPERT

Commented:
searlas, I am confused by your comment.
>Sometimes the app server redirects internally  
Are you referring to a <jsp:forward   ?    
In that case the request object remains the same.  

Commented:
Actually... let's just forget that for a minute.  If you want the address bar text the only way to do this IS with javascript.
I give you... frames.

Commented:
rrz,  took me a while to remember what causes the getRequestURI/L to change without the browser knowing about it:

one.jsp:
<% request.getRequestDispatcher("two.jsp").forward(request, response); %>

two.jsp:
URI: <%= request.getRequestURI() %><br/>
URL: <%= request.getRequestURL() %>






rrzstudent
CERTIFIED EXPERT

Commented:
thungrac01 did not specify whether he was using a forward or not.
So, I hope we are not getting too far off topic here.  

searlas, I ran the code from your last post. Here are the results(in Tomcat 5).
Browser address bar: http://localhost:8080/one.jsp
URI: /two.jsp  
URL: http://localhost.8080/one.jsp   

I tried also with
<jsp:forward  page="two.jsp"/>  and with  
<% application.getRequestDispatcher("/two.jsp").forward(request, response); %>  
Using either of the three methods, results are the same.  

Of course without the forward we have  
Browser address bar: http://localhost:8080/one.jsp
URI: /one.jsp
URL: http://localhost:8080/one.jsp   

Now, if two.jsp forwards to three.jsp we have the result
Browser address bar: http://localhost:8080/one.jsp
URI: /three.jsp
URL: http://localhost:8080/one.jsp 

On page 95 of Jason Hunter's book "Java Servlet Programming" first edition 1998  
"For servlets in a chain, the request URI is always that of the first servlet in the chain."
But that is not the results I received.  
Please comment.    rrz

Commented:
As you say, not wanting to get too offtopic...
thungrac01 does not specify any limitations on frames/forwards/includes etc, hence my comments wrt JavaScript to get the url as it appears in the browsers address bar.

I ran with WebLogic 6.1:
Browser address bar: http://localhost:8080/one.jsp
URI: /two.jsp  
URL: http://localhost.8080/two.jsp 

I get these results consisently for all methods of forwarding.  And, if two forwards to three I have:
URI: /three.jsp  
URL: http://localhost.8080/three.jsp 

Now, thungrac01 uses WebSphere 5.0, so... who knows?
Unlock the solution to this question.
Thanks for using Experts Exchange.

Please provide your email to receive a free trial preview!

*This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

OR

Please enter a first name

Please enter a last name

8+ characters (letters, numbers, and a symbol)

By clicking, you agree to the Terms of Use and Privacy Policy.