2010-06-07 4 views
1

아무도 다음 작동하지 않는 이유를 말해 줄 수 있습니까?selectOneMenu의 EJB 업데이트 모델

<h:selectOneMenu value="#{modelosController.selected.idMarca}"> 
    <br/> 
    <f:selectItems value="#{marcasController.itemsAvailableSelectOne}" /> 
    <br/> 
</h:selectOneMenu><br/> 
<h:commandButton action="#{modelosController.createByMarcas}" value="Buscar" /> 

그리고 코드 :

public String createByMarcas() { 
      current = new Modelos(selectedItemIndex, current.getIdMarca()); 
      items =(DataModel)ejbFacade.findByMarcas(); 
      getPagination().getItemsCount(); 
      recreateModel(); 
      return "List"; 
} 

public List<Modelos> findByMarcas(){ 
    CriteriaQuery cq = (CriteriaQuery) em.createNamedQuery(
      "SELECT m FROM Modelos WHERE m.id_marca :id_marca"); 
    cq.select(cq.from(Modelos.class)); 
    return em.createQuery(cq).getResultList(); 
} 

대단히 감사합니다!

+0

작동하지 않는 기능은 무엇입니까? JSF의 EJB와 실제로 관련이 있습니까? – ewernli

답변

1

현재 선택된 항목과 관련이있을 것 같지 않습니다 h:selectOneMenu의이, 즉, 그것은 당신이 selectedItemIndexcurrent.getMarcaId()을 잡는 것 #{modelosController.selected.idMarca}에 그 작업 방법에 설정됩니다 값으로 설정됩니다 서로.

여기 h:selectOneMenu가 사용되어야한다 방법을 기본 킥오프 예입니다 :

<h:selectOneMenu value="#{bean.selectedItem}"> 
    <f:selectItems value="#{bean.selectItems}" /> 
</h:selectOneMenu> 
<h:commandButton value="submit" action="#{bean.submit}" /> 

private String selectedItem; // +getter +setter 
private List<SelectItem> selectItems; // +getter 

public Bean() { 
    selectItems = new ArrayList<SelectItem>(); 
    selectItems.add(new SelectItem("value1", "label1")); 
    selectItems.add(new SelectItem("value2", "label2")); 
    selectItems.add(new SelectItem("value3", "label3")); 
    // You can also use SelectItem[] or Map<Object, String> instead. 
} 

public String submit() { 
    // Selected item is already set by JSF. The below line just shows it. 
    System.out.println(selectedItem); // value1, value2 or value3 
    return null; 
} 

으로 selectedItemNumber 또는 Object 될 수 있습니다. 그러나 마지막으로 또는 String 또는 Number과 같은 표준 유형을 멋지게 변환하려면 Converter이 필요합니다.

+0

건배 메이트가 작동했습니다! muchas gracias –

+0

당신은 환영합니다 :) – BalusC