заполнить простыми числами, датируемыми из nativeQuery - PullRequest
0 голосов
/ 13 января 2012

я изучаю окружение JSF, простите, если это для вас довольно просто,

Я пытаюсь заполнить дататы простых данных из нативного запроса, это то, что я получил в данный момент

       //My native query is defined in my entity
       @NamedNativeQueries({@NamedNativeQuery(name="Tallt089.bandejaCitas",
       query ="select bandeja.ep_id_tallt089 idBandeja ...)})
       ...
       ...

Я так называю этот nativeQuery

        public List**<TablaBandejaCitas>** bandejaCitas(String cia, String agencia, String division) {
        Query query = em.createNamedQuery("Tallt089.bandejaCitas");
        query.setParameter(1,cia);
        query.setParameter(2,agencia);
        query.setParameter(3,division);
        return query.getResultList();
     //this works fine retrieves correctly my query
}

И используйте его на моем управляемом Bean

        public List**<TablaBandejaCitas>** bandejaCitas(String compania,
        String agencia,String division){
         return agendamientoSession.bandejaCitas(compania,agencia,division);  
        }

затем ссылался на это на моей странице JSF, как это

     <p:dataTable id="bandeja_citas" 
     value="#{AgendamientoMBean.bandejaCitas(UsuarioMBean.compania,UsuarioMBean.agencia,
     UsuarioMBean.divisionPK.diDivision)}"  
                             var="bandeja" 
                             paginator="true" rows="15"  >
                    <f:facet name="header">
                        Bandeja Citas por confirmar/Llamadas por realizar
                    </f:facet>
                    <p:column headerText="Id Bandeja" >
                        <h:outputText value ="#{bandeja.idBandeja}"/>
                    </p:column>

                    <p:column headerText="Cliente" sortBy="#{bandeja.cliente}" 
                        filterBy="#{bandeja.cliente}">
                       <h:outputText value ="#{bandeja.cliente}"/>
                    </p:column>
                ...
                ...
                ...
                 </p:dataTable>

Я понял, что свойству var нужно что-то вроде отображения полей запроса, потому что предупреждения на странице jsf говорят мне, что это свойство unkwon

     <h:outputText value ="#{bandeja.**cliente**}"/>

Я не знаю, как сохранить запрос в этой переменной, чтобы данные могли отображаться

сейчас я получил исключение для входной строки, например компонент, который читает необработанные данные, а не сформированный список с правильной переменной, заполненной полями запроса.

надеюсь, вы понимаете меня

заранее оцените ваши комментарии: D

1 Ответ

0 голосов
/ 17 января 2012

Хорошо, я решил эту маленькую проблему.Я сделал это, создав класс сущности (даже не являющийся таблицей в БД) со столбцами, которые я выбрал в nativeQuery, и затем использовал этот класс в качестве параметра resultClass в нативном:

resultClass=com.talleresZeusWeb.entidades.BandejaCitas.class

Iпытался сделать эту аннотацию sqlresultsetmapping, но не знаю, использовать ли ее в этом случае.

Надеюсь, кто-то найдет это полезным в какой-то момент, спасибо за ваши ответы @ Rich

...