Foros del Web » Programación para mayores de 30 ;) » Java »

Como mostrar en un <h:datatable> (myfaces) resultados de 2 o mas tablas

Estas en el tema de Como mostrar en un <h:datatable> (myfaces) resultados de 2 o mas tablas en el foro de Java en Foros del Web. Hola haber si me ayudan con esto, tengo una datatable de myfaces el cual quiero que muestre los resultados de un consulta (trabajo con hibernate) ...
  #1 (permalink)  
Antiguo 28/09/2006, 14:47
 
Fecha de Ingreso: noviembre-2005
Mensajes: 19
Antigüedad: 18 años, 5 meses
Puntos: 0
Exclamación Como mostrar en un <h:datatable> (myfaces) resultados de 2 o mas tablas

Hola haber si me ayudan con esto, tengo una datatable de myfaces el cual quiero que muestre los resultados de un consulta (trabajo con hibernate) de por ejemplo 2 tablas, la consulta es algo asi:

String sql= "Select Soli,Parametro from Solicitud Soli inner join " +
"Soli.prioridad Parametro inner join order by Soli.id"

esto esta en una funcione que me retorna un List producto de ejecutar esta consulta, los resultados son obtenidos satisfactoriamente ya que los puede ver en la consola,hay un detalle que es cuando consulto solo un objeto si los puedo mostrar en el datatable...

String sql= "Select Soli from Solicitud Soli order by Soli.id"

pero al momento de mostrar en el datatable la primera consulta donde consulto 2 tablas genera un error.

Al datatable le asigno el contenido de mi "List" por medio de la propiedad "solicitudes" que es tipo "List" de la siguiente forma:

<t:dataTable id="solicitudes"
value="#{beanSolicitud.solicitudes}"
var="solicitud">

<h:column>
<f:facet name="header">
<h:outputText value="Nro" />
</f:facet>
<h:outputText value="#{solicitud.descripcion}" />
</h:column>
.
.
.
</t:dataTable>

....

le agradeceria sus muy respetadas sugerencias u opiniones.
gracias
  #2 (permalink)  
Antiguo 29/09/2006, 14:17
Avatar de hugo777  
Fecha de Ingreso: enero-2002
Ubicación: Lima, Perú
Mensajes: 757
Antigüedad: 22 años, 3 meses
Puntos: 1
Hola, que estas utilizando... el framework JSF ?? , strtus ? o algún otro?
__________________
Saludos,

H@C..
  #3 (permalink)  
Antiguo 02/10/2006, 07:30
 
Fecha de Ingreso: noviembre-2005
Mensajes: 19
Antigüedad: 18 años, 5 meses
Puntos: 0
Cita:
Iniciado por hugo777 Ver Mensaje
Hola, que estas utilizando... el framework JSF ?? , strtus ? o algún otro?
Hola, si, estoy utilizando el framework JSF en lugar de struts, y la persistencia de datos con Hibernate.... aun no le doy solucion al problema que mencione al principio pero creo que estoy cerca.... tengo mi sentencia que consulta 2 o mas tablas relacionadas esto lo almaceno en un objecto "list" hasta aqui todo bien incluso puedo recorrer el list y visualizar los datos que trae consigo mediante un iterator....

"Select obj1, obj2 from Objecto1 obj1 inner join obj1.id obj2 ";

Iterator pairs = list().iterator();

while (pairs.hasNext()) {
Object[] pair = (Object[]) pairs.next();
ObtejtoA a = (ObtejtoA) pair[0];
ObtejtoB b = (ObtejtoB) pair[1];
log.info(a.getDescripcion() + b.getId());
}

... esto es el contenido de la funcion qe me retorna un list ... pero al asignar este list al datatable da error, como que no lo admite....
  #4 (permalink)  
Antiguo 02/10/2006, 08:35
 
Fecha de Ingreso: noviembre-2005
Mensajes: 19
Antigüedad: 18 años, 5 meses
Puntos: 0
bueno antes que nada sorry por la ingenuidad, a veces la solucion es tan obvia y esta en nuestras narices a pesar de ello no logramos verla... bueno para cargar el datatable con un list que me retorna mas de dos objetos solo bastaba con asignar el indice correspondiente a cada columna en el datatable ... algo tan sencillo como esto....

<t:dataTable id="dtEx"
value="#{beanSolicitud.lista}"
var="data"
border="0" ....>

<h:column>
<f:facet name="header">
<h:outputText value="Descripción" />
</f:facet>
<h:outputText value="#{data[0].id}" />
</h:column>

<h:column>
<f:facet name="header">
<h:outputText value="Descripción" />
</f:facet>
<h:outputText value="#{data[1].descripcion}" />
</h:column>

<h:column>
<f:facet name="header">
<h:outputText value="Descripción" />
</f:facet>
<h:outputText value="#{data[2].estado}" />
</h:column>

</t:dataTable>


.... bueno gracias d todas formas... saludos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 13:02.