pessoal, possuo um serviço ewb REST onde na função findAll eu gostaria de trazer alguns atributos do bean e não todos como está fazendo. Como eu poderia definir isso?
Vou postar aqui meu bean:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package entities;
import com.sun.xml.bind.CycleRecoverable;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Collection;
import java.util.Date;
import javax.persistence.*;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlTransient;
/**
*
* @author gregori
*/
@Entity
@Table(name = "PRODUCTS")
@XmlRootElement
@NamedQueries({
@NamedQuery(name = "Products.findAll", query = "SELECT p FROM Products p"),
@NamedQuery(name = "Products.findByProductId", query = "SELECT p FROM Products p WHERE p.productId = :productId"),
@NamedQuery(name = "Products.findByProductNumber", query = "SELECT p FROM Products p WHERE p.productNumber = :productNumber"),
@NamedQuery(name = "Products.findByDescription", query = "SELECT p FROM Products p WHERE p.description = :description"),
@NamedQuery(name = "Products.findByRecordType", query = "SELECT p FROM Products p WHERE p.recordType = :recordType"),
@NamedQuery(name = "Products.findByBusiness", query = "SELECT p FROM Products p WHERE p.business = :business"),
@NamedQuery(name = "Products.findByTimeStamp", query = "SELECT p FROM Products p WHERE p.timeStamp = :timeStamp")})
public class Products implements Serializable,CycleRecoverable {
private static final long serialVersionUID = 1L;
// @Max(value=?) @Min(value=?)//if you know range of your decimal fields consider using these annotations to enforce field validation
@Id
@Basic(optional = false)
@NotNull
@Column(name = "PRODUCT_ID")
private BigDecimal productId;
@Basic(optional = false)
@NotNull
@Size(min = 1, max = 100)
@Column(name = "PRODUCT_NUMBER")
private String productNumber;
@Size(max = 1000)
@Column(name = "DESCRIPTION")
private String description;
@Basic(optional = false)
@NotNull
@Size(min = 1, max = 20)
@Column(name = "RECORD_TYPE")
private String recordType;
@Basic(optional = false)
@NotNull
@Size(min = 1, max = 10)
@Column(name = "BUSINESS")
private String business;
@Column(name = "TIME_STAMP")
@Temporal(TemporalType.TIMESTAMP)
private Date timeStamp;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "productId")
private Collection<RelatedItems> relatedItemsCollection;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "relatedProductId")
private Collection<RelatedItems> relatedItemsCollection1;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "groupId")
private Collection<ProductGroups> productGroupsCollection;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "productId")
private Collection<ProductGroups> productGroupsCollection1;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "productId")
private Collection<Copy> copyCollection;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "productId")
private Collection<Items> itemsCollection;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "productId")
private Collection<ProductAttributes> productAttributesCollection;
public Products() {
}
public Products(BigDecimal productId) {
this.productId = productId;
}
public Products(BigDecimal productId, String productNumber, String recordType, String business) {
this.productId = productId;
this.productNumber = productNumber;
this.recordType = recordType;
this.business = business;
}
public BigDecimal getProductId() {
return productId;
}
public void setProductId(BigDecimal productId) {
this.productId = productId;
}
public String getProductNumber() {
return productNumber;
}
public void setProductNumber(String productNumber) {
this.productNumber = productNumber;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public String getRecordType() {
return recordType;
}
public void setRecordType(String recordType) {
this.recordType = recordType;
}
public String getBusiness() {
return business;
}
public void setBusiness(String business) {
this.business = business;
}
public Date getTimeStamp() {
return timeStamp;
}
public void setTimeStamp(Date timeStamp) {
this.timeStamp = timeStamp;
}
@XmlTransient
public Collection<RelatedItems> getRelatedItemsCollection() {
return relatedItemsCollection;
}
public void setRelatedItemsCollection(Collection<RelatedItems> relatedItemsCollection) {
this.relatedItemsCollection = relatedItemsCollection;
}
@XmlTransient
public Collection<RelatedItems> getRelatedItemsCollection1() {
return relatedItemsCollection1;
}
public void setRelatedItemsCollection1(Collection<RelatedItems> relatedItemsCollection1) {
this.relatedItemsCollection1 = relatedItemsCollection1;
}
@XmlTransient
public Collection<ProductGroups> getProductGroupsCollection() {
return productGroupsCollection;
}
public void setProductGroupsCollection(Collection<ProductGroups> productGroupsCollection) {
this.productGroupsCollection = productGroupsCollection;
}
@XmlTransient
public Collection<ProductGroups> getProductGroupsCollection1() {
return productGroupsCollection1;
}
public void setProductGroupsCollection1(Collection<ProductGroups> productGroupsCollection1) {
this.productGroupsCollection1 = productGroupsCollection1;
}
//@XmlTransient
public Collection<Copy> getCopyCollection() {
return copyCollection;
}
public void setCopyCollection(Collection<Copy> copyCollection) {
this.copyCollection = copyCollection;
}
@XmlTransient
public Collection<Items> getItemsCollection() {
return itemsCollection;
}
public void setItemsCollection(Collection<Items> itemsCollection) {
this.itemsCollection = itemsCollection;
}
//@XmlTransient
public Collection<ProductAttributes> getProductAttributesCollection() {
return productAttributesCollection;
}
public void setProductAttributesCollection(Collection<ProductAttributes> productAttributesCollection) {
this.productAttributesCollection = productAttributesCollection;
}
@Override
public int hashCode() {
int hash = 0;
hash += (productId != null ? productId.hashCode() : 0);
return hash;
}
@Override
public boolean equals(Object object) {
// TODO: Warning - this method won't work in the case the id fields are not set
if (!(object instanceof Products)) {
return false;
}
Products other = (Products) object;
if ((this.productId == null && other.productId != null) || (this.productId != null && !this.productId.equals(other.productId))) {
return false;
}
return true;
}
@Override
public String toString() {
return "entities.Products[ productId=" + productId + " ]";
}
@Override
public Object onCycleDetected(Context cntxt) {
Products prod = new Products(this.productId);
return prod;
}
}
Valeu!