search
Una búsqueda en jmoordb sigue el siguiente patrón.
Crear un entity para search con metodos set/get
Rol rolSearch = new Rol();
Crear métodos set/get
Se pueden crear las variables necesarias en el contoller con sus metodos set/get
En el componente asociarlo al atributo correspondiente.
E invocar el método serchBy(nombre_atributo, valor), este pertenece al IController
IController
asigna JmoordbContext.put("search"+nombre_entity, atributo pasado desde el compoente)
internamente asigna JmoordbContext.put("_fieldsearch"+entity, valor del atributo)
Controller
Metodo move
Rol rolSearch = new Rol();
//set/get
@Override
public void move(Integer page) {
try {
this.page = page;
rolDataModel = new RolDataModel(rolList);
Document doc;
switch ((String) JmoordbContext.get("searchrol")) {
case "activo":
if (JmoordbContext.get("_fieldsearchrol") != null) {
rolSearch.setActivo(JmoordbContext.get("_fieldsearchrol").toString());
doc = new Document("activo", rolSearch.getActivo());
rolList = rolRepository.findPagination(doc, page, rowPage, new Document("idrol", -1));
} else {
rolList = rolRepository.findPagination(page, rowPage);
}
break;
}
list.xhtml
<jmoordbjsf:search label="#{msg['field.activo']}"
value="#{rolController.rolSearch.activo}"
renderedList="#{applicationMenu.rol.list}"
search="#{rolController.searchBy('activo',rolController.rolSearch.activo)}"
/>

Last updated
Was this helpful?