2009-06-29 9 views
1

Je veux placer un tableau sur ma page. J'ai deux tables dans ma base de données pour les utilisateurs et les emplacements par exemple. Chaque emplacement a plus d'un utilisateur. Je veux répertorier ces emplacements et montrer aux utilisateurs qui vivent dans ces endroits.montrant 1-n relations dans JSF


Los Angeles

  1. John Locke
  2. Dr Jack
  3. M. Eco

Comme l'image ci-dessous, quelqu'un pourrait le faire dans JSF?

Merci.

+0

Ne pas voir l'image. Peut-être juste un lien vers celui-ci? – Drew

Répondre

1

Vous pouvez utiliser RichFaces faire une telle chose:

<h:form> 
<rich:dataList var="city" value="#{myBean.allCity}"> 
    <h:outputText value="#{city.name}" ></h:outputText> 
    <rich:dataList var="user" value="#{city.users}"> 
     <h:outputText value="#{user.name}" ></h:outputText> 
    </rich:dataList> 
</rich:dataList> 
</h:form> 

Où Allcity - Liste de la ville, et chaque ville a la liste de l'utilisateur à l'intérieur.

Voir http://livedemo.exadel.com/richfaces-demo/richfaces/dataLists.jsf?c=dataList&tab=usage par exemple.

haricots Sauvegarde:

monBean:

public class MyBean(){ 
    private ArrayList<City> allCity= new ArrayList<City>(); 

    @PostConstruct 
    public void init(){ 
    //fill Array list 
    } 

    public ArrayList<City> getAllCity() { 
    return allCity; 
    }  

} 

Ville:

public class City{ 
    private ArrayList<User> users= new ArrayList<User>(); 

    public City(ArrayList<User> users){ 
    this.users = users; 
    // you can get data from database in myBean, and pass it hear with cinstructor; 
    } 

    public ArrayList<User> getUsers() { 
    return allCity; 
    }  
} 

utilisateur

public class User{ 
    private String name; 

    //constructor and others fields; 

    public String getName(){ 
    return name; 
    } 
} 

MyBean Seulement vous vous inscrivez en tant que support de haricots. Je vous montre seulement la structure de base de la classe, comment vous le remplir avec des données est votre choix.

+0

pourriez-vous s'il vous plaît écrire le code dans le haricot backing/haricots? –

+0

Regardez les changements au sommet. – aindl

+0

Merci beaucoup. Je l'ai fait comme tu l'as dit et tout va bien. –