java - Call function of a Bean with ajax -
well guys need call correocontroller bean, im working jsf, ajax because need make email, , need make inbox.
public message[] refrescar(string correo, string password, int tipomail) { properties prop = new properties(); prop.setproperty("mail.pop3.starttls.enable", "false"); prop.setproperty( "mail.pop3.socketfactory.class", "javax.net.ssl.sslsocketfactory"); prop.setproperty("mail.pop3.socketfactory.fallback", "false"); prop.setproperty("mail.pop3.port", "995"); prop.setproperty("mail.pop3.socketfactory.port", "995"); session sesion = session.getinstance(prop); switch(tipomail) { case 1:try { // se obtiene el store y el folder, para poder leer el // correo. store store = sesion.getstore("pop3"); store.connect( "pop.gmail.com", correo, password); folder folder = store.getfolder("inbox"); folder.open(folder.read_only); // se obtienen los mensajes. message[] mensajes = folder.getmessages(); folder.close(false); store.close(); return mensajes; } catch (exception e) { e.printstacktrace(); } break; case 2:try { // se obtiene el store y el folder, para poder leer el // correo. store store = sesion.getstore("pop3"); store.connect( "pop3.live.com", correo, password); folder folder = store.getfolder("inbox"); folder.open(folder.read_only); // se obtienen los mensajes. message[] mensajes = folder.getmessages(); // se escribe y subject de cada mensaje /*for (int = 0; < mensajes.length; i++) { system.out.println( "from:" + mensajes[i].getfrom()[0].tostring()); system.out.println("subject:" + mensajes[i].getsubject()); // se visualiza, si se sabe como, el contenido de cada mensaje analizapartedemensaje(mensajes[i]); }*/ folder.close(false); store.close(); return mensajes; } catch (exception e) { e.printstacktrace(); } break; default:break; } return null; }
can me how extract elements mensajes, , how make in javascript dinamyc way make table add info collected
to make ajax call in jsf, don't need use javascript. can try following.
. bean:
@managedbean @viewscope public class correocontroller { private list<message> mensajes; public void refrescar(string correo, string password, int tipomail) { // logic // update mensajes list @ end of method this.mensajes = ...; } // getters , setters }
. xhtml
page:
<h:datatable id="mensajetable" value="#{correocontroller.mensajes}" > ... </h:datatable> <h:commandbutton value="get mensajes" actionlistener="#{correocontroller.refrescar}" > <f:ajax render="mensajetable" /> </h:commandbutton>
Comments
Post a Comment