Hi i’m very new java programer so please help me
i already have a Usuarios Bean
package com.marcos.model;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinTable;
import javax.persistence.ManyToMany;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.UniqueConstraint;
/**
* Usuarios entity. @author MyEclipse Persistence Tools
*/
@Entity
@Table(name = "usuarios", schema = "public", uniqueConstraints = @UniqueConstraint(columnNames = {
"usuario", "clave" }))
public class Usuarios implements java.io.Serializable {
// Fields
private Integer idusuario;
private String usuario;
private String clave;
private Set<UsuariosSucursales> usuariosSucursaleses = new HashSet<UsuariosSucursales>(
0);
private Set<Factura> facturas = new HashSet<Factura>(0);
private Set<Auditoria> auditorias = new HashSet<Auditoria>(0);
private Set<Moneda> monedas = new HashSet<Moneda>(0);
private Set<UsuariosAlmacenes> usuariosAlmaceneses = new HashSet<UsuariosAlmacenes>(
0);
private Set<Compras> comprases = new HashSet<Compras>(0);
private Set<Grupos> gruposes = new HashSet<Grupos>(0);
private Set<EntradasDiarios> entradasDiarioses = new HashSet<EntradasDiarios>(
0);
// Constructors
/** default constructor */
public Usuarios() {
}
/** minimal constructor */
public Usuarios(Integer idusuario, String usuario, String clave) {
this.idusuario = idusuario;
this.usuario = usuario;
this.clave = clave;
}
/** full constructor */
public Usuarios(Integer idusuario, String usuario, String clave,
Set<UsuariosSucursales> usuariosSucursaleses,
Set<Factura> facturas, Set<Auditoria> auditorias,
Set<Moneda> monedas, Set<UsuariosAlmacenes> usuariosAlmaceneses,
Set<Compras> comprases, Set<Grupos> gruposes,
Set<EntradasDiarios> entradasDiarioses) {
this.idusuario = idusuario;
this.usuario = usuario;
this.clave = clave;
this.usuariosSucursaleses = usuariosSucursaleses;
this.facturas = facturas;
this.auditorias = auditorias;
this.monedas = monedas;
this.usuariosAlmaceneses = usuariosAlmaceneses;
this.comprases = comprases;
this.gruposes = gruposes;
this.entradasDiarioses = entradasDiarioses;
}
// Property accessors
@Id
@Column(name = "idusuario", unique = true, nullable = false)
public Integer getIdusuario() {
return this.idusuario;
}
public void setIdusuario(Integer idusuario) {
this.idusuario = idusuario;
}
@Column(name = "usuario", nullable = false, length = 40)
public String getUsuario() {
return this.usuario;
}
public void setUsuario(String usuario) {
this.usuario = usuario;
}
@Column(name = "clave", nullable = false, length = 12)
public String getClave() {
return this.clave;
}
public void setClave(String clave) {
this.clave = clave;
}
@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "usuarios")
public Set<UsuariosSucursales> getUsuariosSucursaleses() {
return this.usuariosSucursaleses;
}
public void setUsuariosSucursaleses(
Set<UsuariosSucursales> usuariosSucursaleses) {
this.usuariosSucursaleses = usuariosSucursaleses;
}
@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "usuarios")
public Set<Factura> getFacturas() {
return this.facturas;
}
public void setFacturas(Set<Factura> facturas) {
this.facturas = facturas;
}
@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "usuarios")
public Set<Auditoria> getAuditorias() {
return this.auditorias;
}
public void setAuditorias(Set<Auditoria> auditorias) {
this.auditorias = auditorias;
}
@ManyToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY)
@JoinTable(name = "usuarios_moneda", schema = "public", joinColumns = { @JoinColumn(name = "idusuario", nullable = false, updatable = false) }, inverseJoinColumns = { @JoinColumn(name = "idmoneda", nullable = false, updatable = false) })
public Set<Moneda> getMonedas() {
return this.monedas;
}
public void setMonedas(Set<Moneda> monedas) {
this.monedas = monedas;
}
@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "usuarios")
public Set<UsuariosAlmacenes> getUsuariosAlmaceneses() {
return this.usuariosAlmaceneses;
}
public void setUsuariosAlmaceneses(
Set<UsuariosAlmacenes> usuariosAlmaceneses) {
this.usuariosAlmaceneses = usuariosAlmaceneses;
}
@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "usuarios")
public Set<Compras> getComprases() {
return this.comprases;
}
public void setComprases(Set<Compras> comprases) {
this.comprases = comprases;
}
@ManyToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY)
@JoinTable(name = "grupos_usuarios", schema = "public", joinColumns = { @JoinColumn(name = "idusuario", nullable = false, updatable = false) }, inverseJoinColumns = { @JoinColumn(name = "idgrupo", nullable = false, updatable = false) })
public Set<Grupos> getGruposes() {
return this.gruposes;
}
public void setGruposes(Set<Grupos> gruposes) {
this.gruposes = gruposes;
}
@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "usuarios")
public Set<EntradasDiarios> getEntradasDiarioses() {
return this.entradasDiarioses;
}
public void setEntradasDiarioses(Set<EntradasDiarios> entradasDiarioses) {
this.entradasDiarioses = entradasDiarioses;
}
}
then i create a UsuariosQuery
package com.marcos.test;
import java.util.ArrayList;
import java.util.List;
import javax.persistence.EntityManager;
import org.vaadin.addons.lazyquerycontainer.Query;
import org.vaadin.addons.lazyquerycontainer.QueryDefinition;
import com.marcos.model.EntityManagerHelper;
import com.marcos.model.Usuarios;
import com.vaadin.data.Item;
import com.vaadin.data.util.BeanItem;
public class UsuariosQuery implements Query {
private EntityManager entityManager;
private QueryDefinition definition;
private String criteria = " ORDER BY m.title ASC";
public UsuariosQuery(EntityManager entityManager,
QueryDefinition definition, Object[] sortPropertyIds,
boolean[] sortStates) {
super();
this.entityManager = entityManager;
this.definition = definition;
for (int i = 0; i < sortPropertyIds.length; i++) {
if (i == 0) {
criteria = " ORDER BY";
} else {
criteria += ",";
}
criteria += " m." + sortPropertyIds[i]
;
if (sortStates[i]
) {
criteria += " ASC";
} else {
criteria += " DESC";
}
}
}
@Override
public Item constructItem() {
Usuarios usuarios = new Usuarios();
usuarios.setIdusuario(null);
usuarios.setUsuario("");
usuarios.setClave("");
return new BeanItem<Usuarios>(usuarios);
}
@Override
public boolean deleteAllItems() {
throw new UnsupportedOperationException();
}
@Override
public List<Item> loadItems(int startIndex, int count) {
javax.persistence.Query query = entityManager
.createQuery("SELECT m from Usuarios as m" + criteria);
query.setFirstResult(startIndex);
query.setMaxResults(count);
List<Usuarios> usuarios = query.getResultList();
List<Item> items = new ArrayList<Item>();
for (Usuarios usuario : usuarios) {
items.add(new BeanItem<Usuarios>(usuario));
}
return items;
}
@Override
public void saveItems(List<Item> addedItems, List<Item> modifiedItems,
List<Item> removedItems) {
entityManager.getTransaction().begin();
for (Item item : addedItems) {
Usuarios movie = (Usuarios) ((BeanItem) item).getBean();
entityManager.persist(movie);
}
for (Item item : modifiedItems) {
Usuarios movie = (Usuarios) ((BeanItem) item).getBean();
entityManager.persist(movie);
}
for (Item item : removedItems) {
Usuarios movie = (Usuarios) ((BeanItem) item).getBean();
entityManager.remove(movie);
}
entityManager.getTransaction().commit();
}
@Override
public int size() {
javax.persistence.Query query = EntityManagerHelper.getEntityManager()
.createQuery("SELECT count(m) from Usuarios as m");
return (int) ((Long) query.getSingleResult()).longValue();
}
}
And UsuariosQueryFactory
package com.marcos.test;
import javax.persistence.EntityManager;
import org.vaadin.addons.lazyquerycontainer.Query;
import org.vaadin.addons.lazyquerycontainer.QueryDefinition;
import org.vaadin.addons.lazyquerycontainer.QueryFactory;
public class UsuariosQueryFactory implements QueryFactory {
private EntityManager entityManager;
private QueryDefinition definition;
public UsuariosQueryFactory(EntityManager entityManager) {
super();
this.entityManager = entityManager;
}
@Override
public Query constructQuery(Object[] sortPropertyIds,
boolean[] ascendingStates) {
return new UsuariosQuery(entityManager, definition, sortPropertyIds,
ascendingStates);
}
@Override
public void setQueryDefinition(QueryDefinition queryDefinition) {
this.definition = queryDefinition;
}
}
But now i don’t know how to fill the table with it on my UI
package com.marcos.form;
import com.marcos.model.EntityManagerHelper;
import com.marcos.test.UsuariosQueryFactory;
import com.vaadin.terminal.ThemeResource;
import com.vaadin.ui.TabSheet;
import com.vaadin.ui.VerticalLayout;
import com.vaadin.ui.Window;
import com.vaadin.ui.Button.ClickEvent;
import com.vaadin.ui.Button.ClickListener;
/**
*
* @author eneldo Create on 13 agosto 2010
* @version 0.0.1
*
*/
public class FormControlDeUsuarios extends Window implements ClickListener {
/**
*
*/
private static final long serialVersionUID = -7248288036475085904L;
private static final ThemeResource USERLIST_ICO = new ThemeResource(
"images/ico16/user.png");
private static final ThemeResource USERGROUP_ICO = new ThemeResource(
"images/ico16/users.png");
VerticalLayout usuariosLayout = new VerticalLayout();
VerticalLayout gruposLayout = new VerticalLayout();
TabSheet tabSheet;
public FormControlDeUsuarios() {
super.setCaption("Control de usuarios");
super.center();
super.setSizeUndefined();
tabSheet = new TabSheet();
tabSheet.addTab(createUserList(), "Control de usuarios", USERLIST_ICO);
tabSheet.addTab(gruposLayout, "Control de grupos", USERGROUP_ICO);
tabSheet.setSizeFull();
setContent(tabSheet);
}
private VerticalLayout createUserList() {
// /Here is where i what to create the table
UsuariosQueryFactory factory = new UsuariosQueryFactory(
EntityManagerHelper.getEntityManager());
return null;
}
@Override
public void buttonClick(ClickEvent event) {
// TODO Auto-generated method stub
}
}
Please help me