Можно ли привести List <> в DataModel? - PullRequest
0 голосов
/ 12 июня 2010

Я пытаюсь сделать следующее:

public String createByMarcas() {
    items = (DataModel) ejbFacade.findByMarcas(current.getIdMarca().getId());
    updateCurrentItem();
    return "List";
}

public List<Modelos> findByMarcas(int idMarca){
    return em.createQuery("SELECT id, descripcion FROM Modelos WHERE id_marca ="+idMarca+"").getResultList();
}

Но я продолжаю получать это ожидание:

Caused by: javax.ejb.EJBException
 at com.sun.ejb.containers.BaseContainer.processSystemException(BaseContainer.java:5070)
 at com.sun.ejb.containers.BaseContainer.completeNewTx(BaseContainer.java:4968)
 at com.sun.ejb.containers.BaseContainer.postInvokeTx(BaseContainer.java:4756)
 at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1955)
 at com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:1906)
 at com.sun.ejb.containers.EJBLocalObjectInvocationHandler.invoke(EJBLocalObjectInvocationHandler.java:198)
 at com.sun.ejb.containers.EJBLocalObjectInvocationHandlerDelegate.invoke(EJBLocalObjectInvocationHandlerDelegate.java:84)
 at $Proxy347.findByMarcas(Unknown Source)
 at controladores.__EJB31_Generated__ModelosFacade__Intf____Bean__.findByMarcas(Unknown Source)

Может кто-нибудь помочь, пожалуйста?Большое спасибо

Ответы [ 2 ]

2 голосов
/ 16 апреля 2013

Вы ищете функцию setWrapperData() JSF DataModel.

Пример:

DataModel dataModel;
List list;

list = em.createQuery("Select b from Book b").getResultList();
dataModel.setWrapperData(list);
1 голос
/ 12 июня 2010

Полагаю, самый очевидный ответ на ваш вопрос - нет.Вы запрашиваете повторный запрос java.util.List, который не связан с JSF DataModel, предполагая, что это то, к чему вы применяете.Я ничего не знаю о JSF, но, похоже, существует ListDataModel , который можно использовать для переноса списка, что может помочь в вашем случае.

...