Madhav,
You may need to use redirect.
See the following discussions:
[1] http://wiki.apache.org/myfaces/Custom_Navigation_Handler
[2] http://wiki.apache.org/myfaces/InvokingJsfPagesWithStandardUrls
[3]
http://www.nabble.com/t%3AcommandLink-for-navigation-but-browser-url-not-changed-tf2376716.html#a6621946
[4] http://www.nabble.com/one-step-delayed-url-tf1977294.html#a5424536
[5] http://www.nabble.com/JSF-navigation-url-problem-tf1211899.html#a3206460
[6] http://issues.apache.org/jira/browse/TOBAGO-2
Regards,
Jeff Bischoff
Kenneth L Kurz & Associates, Inc.
Madhav Bhargava wrote:
Hi All,
Following is the layout of my web page:
1. Left navigational menu which contains collapsible menu items.
2. Top header which I static.
3. Content section.
The content section in many pages is composed of several tabs.
*Consider a scenario:*
1. User clicks on the left nav and goes to a particular page
containing many tabs.
2. The user selects a tab, enters search criteria to fetch data and
fires a search.
3. The business layer in turn uses an EAI engine to gather relevant
data from a federated database. This might take a bit of time.
4. When the results come then they are displayed to the user.
To implement the same the following approach has been taken:
1. When a request is fired then in the business layer an API call is
made to the EAI to fetch data.
2. The EAI engine writes the data to a local repository and sends a
notification message over a socket.
3. A servlet acting as a socket listener listens to any notification
and puts it on to a JMS queue.
4. MDB’s are invoked to handle any notification. Upon receiving any
notification then make a database call to fetch relevant data.
5. Response is then put on to a response Queue.
6. The refresh page request fired from the client will call a
particular method in the managed bean. Upon receiving the refresh
request the action method will look into the response Q for any
response for the request. It a response message has arrived then
it will get the message and show the results to the user.
*The problem*
How do you auto-refresh a page and call a particular method which is
handling the opened tab inside a page? Unfortunately the URL that is
shown never seems to change after the user has made a selection on the
left navigation menu. The action method which was called when the user
selected the left nav menu item is still getting called on every refresh
if META refresh tag is used.
I do not want to involve javascript because if I use javascript to show
a progress bar using AJAX then it will not work if javascript is
disabled in a browser.
Why the URL does not change even after different action methods are called?
How can I refresh the page with the selected tab opened without javascript?
**Thanks & Regards,**
**Madhav Bhargava**
**Ext: 74371**
**************** CAUTION - Disclaimer *****************
This e-mail contains PRIVILEGED AND CONFIDENTIAL INFORMATION intended
solely for the use of the addressee(s). If you are not the intended
recipient, please notify the sender by e-mail and delete the original
message. Further, you are not to copy, disclose, or distribute this
e-mail or its contents to any other person and any such actions are
unlawful. This e-mail may contain viruses. Infosys has taken every
reasonable precaution to minimize this risk, but is not liable for any
damage you may sustain as a result of any virus in this e-mail. You
should carry out your own virus checks before opening the e-mail or
attachment. Infosys reserves the right to monitor and review the content
of all messages sent to or from this e-mail address. Messages sent to or
from this e-mail address may be stored on the Infosys e-mail system.
***INFOSYS******** End of Disclaimer ********INFOSYS***