Entradas etiquetadas ‘Dialogs’
Dialogs-PopUps en ADF
Hace unos días hemos subido un articulo sobre las distintas validaciones en JSF en el portal de JDeveloperLA.
Aqui tienen el enlace, Dialogs-PopUps en ADF
Espero que les sea de utilidad.
Diálogos en ADF Faces II.
En este post explicaremos como desde una página en forma de PopUp o dialog, que es llamada desde una ventana “padre”, podemos enviar parámetros y recogerlos en la pagina “padre” o llamadora.
Desde la pagina Popup , cualquier action de su bean, hacemos un returnFromDialog. De esta forma le enviamos a la pagina llamadora los valores.:
AdfFacesContext.getCurrentInstance().returnFromDialog("parametro", null);
Luego en la página que llamó al popup debemos tener un oyente, returnListener, que lo registraremos de la siguiente manera:
<af:commandLink id=”cLink3″ action=”#{bean.action}” launchListener=”#{ bean.addParametros}”
returnListener=”#{ bean. handleReturnPopup }” useWindow=”true” partialSubmit=”true immediate=”true” windowHeight=”300″ windowWidth=”600″>
</af:commandLink>
De esa manera cuando el popup se cierre pasaremos por este método que recogerá el parámetro enviado por la pagina.
public void handleReturnPopup(ReturnEvent returnEvent) {
if (returnEvent.getReturnValue() != null){
logger.info("lo recogo"+returnEvent.getReturnValue());
}
}
Diálogos en ADF Faces
Este método muestra como lanzar diálogos o ventanas en forma de popup mediante código en jsf.
Para ello haremos uso del método AdfFacesContext.launchDialog(); que nos permite lanzar una página jspx, hecha previamente, en forma de ventana emergente.
private void launchDialogPopUp(){
FacesContext context = FacesContext.getCurrentInstance();
ViewHandler vh = context.getApplication().getViewHandler();
// el jspx que se mostrara en forma de ventana emergente
UIViewRoot dialog = vh.createView(context, "/Ventana.jspx");
AdfFacesContext a = AdfFacesContext.getCurrentInstance();
// fijamos el ancho y el alto de la ventana emergente
Map windowProperties = new HashMap();
windowProperties.put("width", new Integer(300));
windowProperties.put("height", new Integer(200));
//añadimos mas paremetros que seran recogidos en la jspx ventana
Map dialogParameters = new HashMap();
dialogParameters.put("param", "holita");
a.launchDialog(dialog,dialogParameters,null,true,windowProperties);
}
Para recoger el parámetro enviado en la pagina emeregente haremos uso del processScope.
<outputText value="El mensaje recibido de la hash del dialog es:
#{processScope.param}" id="outputText3"/>
Mas Info: dialogs
