Tengo un proyecto que hasta hace unos dias funcionaba todo bien... pero desde hace como 3 dias tengo problemas.
el problema esta al hacer una consulta la cual desde hace unos 3 dias aumento a unos 1300 registros.
En la capa de presentacion utilizo JSF, la logica de negocio con EJB3, la db es Firebird y mi servidor web y de aplicaciones es glassfish 2.
Mi entidad a la que estoy consultando tiene las siguientes relaciones:
Código:
La consulta que hago en la logica de negocio (EJB) es la siguiente: OneToMany(mappedBy = "requisicion")
private Collection<Ets> etsCollection;
OneToMany(mappedBy = "requisicion")
private Collection<RequisicionDetalle> requisicionDetalleCollection;
JoinColumn(name = "COMPANIA", referencedColumnName = "RFC")
ManyToOne
private Compania compania;
JoinColumn(name = "ESTATUS", referencedColumnName = "ID")
ManyToOne
private Estatus estatus;
JoinColumn(name = "GERENCIA", referencedColumnName = "ID")
ManyToOne
private Gerencia gerencia;
JoinColumn(name = "PRIORIDAD", referencedColumnName = "ID")
ManyToOne
private Prioridad prioridad;
JoinColumn(name = "PROYECTO_OT", referencedColumnName = "ID")
ManyToOne
private ProyectoOt proyectoOt;
JoinColumn(name = "TIPO_OBRA", referencedColumnName = "ID")
ManyToOne
private TipoObra tipoObra;
JoinColumn(name = "CANCELO", referencedColumnName = "ID")
ManyToOne
private Usuario cancelo;
JoinColumn(name = "ASIGNA", referencedColumnName = "ID")
ManyToOne
private Usuario asigna;
JoinColumn(name = "SOLICITA", referencedColumnName = "ID")
ManyToOne
private Usuario solicita;
JoinColumn(name = "REVISA", referencedColumnName = "ID")
ManyToOne
private Usuario revisa;
JoinColumn(name = "AUTORIZA", referencedColumnName = "ID")
ManyToOne
private Usuario autoriza;
JoinColumn(name = "COMPRA", referencedColumnName = "ID")
ManyToOne
private Usuario compra;
JoinColumn(name = "VISTO_BUENO", referencedColumnName = "ID")
ManyToOne
private Usuario vistoBueno;
JoinColumn(name = "APRUEBA", referencedColumnName = "ID")
ManyToOne
private Usuario aprueba;
Código:
En la capa de presentación tengo el siguiente metodo para tomar el resultado de la consulta: public List<Requisicion> getRequisicionesAsignadas() {
return em.createQuery(
"SELECT r FROM Requisicion r WHERE r.estatus.id = 40 ORDER BY r.fechaAsigno DESC").getResultList();
}
Código:
public Requisicion[] listaRequisicionesAsignadas() {
try {
List<Requisicion> tempList = requisicionServicioRemoto.getRequisicionesAsignadas(this.usuarioBean.getUsuarioConectado().getId());
return tempList.toArray(new Requisicion[tempList.size()]);
} catch (RuntimeException ex) {
FacesUtilsBean.addInfoMessage(ex.getMessage());
}
return new Requisicion[0];
}
al hacer la consulta no muestra ningun dato, ejecutando el sistema con un debug me lanza el siguiente error: (Bueno esta es una parte del error).
Código:
"nested exception is: java.rmi.RemoteException: CORBA UNKNOWN 1398079690 Maybe; nested exception is: org.omg.CORBA.UNKNOWN: ----------BEGIN server-side stack trace---------- org.omg.CORBA.UNKNOWN: vmcid: SUN minor code: 202 completed: Maybe at com.sun.corba.ee.impl.logging.ORBUtilSystemException.runtimeexception(ORBUtilSystemException.java:10522) at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.convertThrowableToSystemException(CorbaMessageMediatorImpl.java:2084) at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleThrowableDuringServerDispatch(CorbaMessageMediatorImpl.java:2034) at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleThrowableDuringServerDispatch(CorbaMessageMediatorImpl.java:1987) at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:300) at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846) at com.sun.corba.ee.impl.protocol.SharedCDRClientRequestDispatcherImpl.marshalingComplete(SharedCDRClientRequestDispatcherImpl.java:183) at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.invoke(CorbaClientDelegateImpl.java:219) at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:192) at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:152) at com.sun.corba.ee.impl.presentation.rmi.bcel.BCELStubBase.invoke(BCELStubBase.java:225) at Modelo.Servicios.__RequisicionServicioRemoto_Remote_DynamicStub.getRequisicionesAsignadas(Modelo/Servicios/__RequisicionServicioRemoto_Remote_DynamicStub.java) at Modelo.Servicios._RequisicionServicioRemoto_Wrapper.getRequisicionesAsignadas(Modelo/Servicios/_RequisicionServicioRemoto_Wrapper.java) at Beans.RequisicionBean.listaRequisicionesAsignadas(RequisicionBean.java:977) at Beans.RequisicionBean.getRequisicionesAsignadas(RequisicionBean.java:1250) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at javax.el.BeanELResolver.getValue(BeanELResolver.java:293) at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:175) at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:64) at com.sun.el.parser.AstValue.getValue(AstValue.java:138) at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:206) at com.sun.faces.application.ValueBindingValueExpressionAdapter.getValue(ValueBindingValueExpressionAdapter.java:102) at javax.faces.component.ValueExpressionValueBindingAdapter.getValue(ValueExpressionValueBindingAdapter.java:73) at javax.faces.component.UIData.getValue(UIData.java:582) at com.icesoft.faces.component.panelseries.UISeries.getValue(UISeries.java:565) at com.icesoft.faces.component.panelseries.UISeries.getDataModel(UISeries.java:347) at com.icesoft.faces.component.panelseries.UISeries.processCurrentRowData(UISeries.java:144) at com.icesoft.faces.component.panelseries.UISeries.setRowIndex(UISeries.java:136) at com.icesoft.faces.component.ext.renderkit.TableRenderer.renderFacet(TableRenderer.java:146) at com.icesoft.faces.renderkit.dom_html_basic.TableRenderer.encodeBegin(TableRenderer.java:122) at javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:788) at javax.faces.component.UIData.encodeBegin(UIData.java:879) at com.icesoft.faces.component.panelseries.UISeries.encodeBegin(UISeries.java:288) at com.icesoft.faces.component.ext.HtmlDataTable.encodeBegin(HtmlDataTable.java:110) at com.icesoft.faces.renderkit.dom_html_basic.DomBasicRenderer.encodeParentAndChildren(DomBasicRenderer.java:356) at com.icesoft.faces.renderkit.dom_html_basic.GridRenderer.encodeChildren(GridRenderer.java:208) at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:812) at com.icesoft.faces.component.util.CustomComponentUtils.renderChild(CustomComponentUtils.java:339) at com.icesoft.faces.component.util.CustomComponentUtils.renderChildren(CustomComponentUtils.java:325) at com.icesoft.faces.component.panellayout.PanelLayoutRenderer.encodeChildren(PanelLayoutRenderer.java:75) at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:812) at com.icesoft.faces.renderkit.dom_html_basic.DomBasicRenderer.encodeParentAndChildren(DomBasicRenderer.java:358) at com.icesoft.faces.renderkit.dom_html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:96) at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:812) at com.icesoft.faces.component.util.CustomComponentUtils.renderChild(CustomComponentUtils.java:339) at com.icesoft.faces.component.paneltabset.PanelTabSetRenderer.writeTabCell(PanelTabSetRenderer.java:924) at com.icesoft.faces.component.paneltabset.PanelTabSetRenderer.encodeEnd(PanelTabSetRenderer.java:421) at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:836) at com.icesoft.faces.renderkit.dom_html_basic.DomBasicRenderer.encodeParentAndChildren(DomBasicRenderer.java:370) at com.icesoft.faces.renderkit.dom_html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:96) at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:812) at com.icesoft.faces.application.D2DViewHandler.renderResponse(D2DViewHandler.java:517) at com.icesoft.faces.application.D2DViewHandler.renderResponse(D2DViewHandler.java:522) at com.icesoft.faces.application.D2DViewHandler.renderResponse(D2DViewHandler.java:522) at com.icesoft.faces.application.D2DViewHandler.renderResponse(D2DViewHandler.java:522) at com.icesoft.faces.application.D2DViewHandler.renderResponse(D2DViewHandler.java:522) at com.icesoft.faces.application.D2DViewHandler.renderResponse(D2DViewHandler.java:522) at com.icesoft.faces.application.D2DViewHandler.renderResponse(D2DViewHandler.java:522) at com.icesoft.faces.application.D2DViewHandler.renderResponse(D2DViewHandler.java:522) at com.icesoft.faces.application.D2DViewHandler.renderResponse(D2DViewHandler.java:522) at com.icesoft.faces.application.D2DViewHandler.renderResponse(D2DViewHandler.java:492)

Me gustaria hacer eso de solicitarlos de 200 en 200 pero no tengo idea de como hacer eso
no sabes donde podria encontrar información sobre como traer por parte los registros de la db...?
