aspose file tools*
The moose likes JSF and the fly likes JSF Server Side Validations with close window? Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » JSF
Bookmark "JSF Server Side Validations with close window?" Watch "JSF Server Side Validations with close window?" New topic
Author

JSF Server Side Validations with close window?

sundaresan ganapathy
Greenhorn

Joined: Oct 08, 2008
Posts: 23
Hi all,
I have an issue in Java server faces validation part.
The thing is i am doing server side validation for a pop up page,
i have to close the pop up page once the validation is succeeded,
the issue is if i use window.close() at on click of save button,script will be executed at the client
side to close the pop up page and then only the action controller method gets triggered,so there
will be no page available to show the Faces Message which is added at the server side.

How to achieve this ?

Thanks In Advance,

Cheers,

Sundar
Thomas Walters
Greenhorn

Joined: Jul 15, 2009
Posts: 2
I found the below text at another site (http://www.java-samples.com/showtutorial.php?tutorialid=476):

Closing the popup window

If the close button has a "cancel" semantic, we can use a simple OutputLink:
<h:outputLink onclick="window.close(); return false;" value="#">
<h:outputText value="cancel" />
</h:outputLink>

The window will simply close. The server will not notice anything.
Submit form and close the popup window

For a proper action handling which goes through the whole request lifecycle we need to use an action listener:
<h:commandLink actionListener="#{popupBean.closeWindowClicked}" value="submit and close" />
public void closeWindowClicked(ActionEvent event) {
FacesContext facesContext = FacesContext.getCurrentInstance();

String javaScriptText = "window.close();";

// Add the Javascript to the rendered page's header for immediate execution
AddResource addResource = AddResourceFactory.getInstance(facesContext);
addResource.addInlineScriptAtPosition(facesContext, AddResource.HEADER_BEGIN, javaScriptText);
}

Note: If there is a validation error the window will not close unless the "immediate" attribute of the commandLink is set to "true".

hope that helps,
Tom
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: JSF Server Side Validations with close window?