Jakarta ee FacadeBean在MySQL视图上使用时找不到正确的行

Jakarta ee FacadeBean在MySQL视图上使用时找不到正确的行,jakarta-ee,primefaces,netbeans-7,Jakarta Ee,Primefaces,Netbeans 7,我有以下困扰我的问题: 1) 我有一个MySQL视图,它从不同的相关表中获取信息。如果我对此运行一个简单的select查询,我将获得所需的所有行 userID functionID functionName parentFunction functionType branchCode jg1 234561 Another Test XXXXXX T 001

我有以下困扰我的问题:

1) 我有一个MySQL视图,它从不同的相关表中获取信息。如果我对此运行一个简单的select查询,我将获得所需的所有行

userID          functionID      functionName    parentFunction  functionType    branchCode  
jg1             234561          Another Test    XXXXXX          T               001 
jg1             123456          Test Function   XXXXXX          T               001 
jg1             123457          Tendai          234561          T               001 
jg1             123458          Rutendo         234561          T               001 
jg1             XXXXXX          Root                                            001 
2) 我基于此视图创建了一个实体,如下所示:

private static final long serialVersionUID = 1L;
@Basic(optional = false)
@NotNull
@Size(min = 1, max = 35)
@Column(name = "userID")
@Id
private String userID;
@Basic(optional = false)
@NotNull
@Size(min = 1, max = 8)
@Column(name = "functionID")
private String functionID;
@Size(max = 35)
@Column(name = "functionName")
private String functionName;
@Size(max = 8)
@Column(name = "parentFunction")
private String parentFunction;
@Column(name = "functionType")
private Character functionType;
@Size(max = 3)
@Column(name = "branchCode")
private String branchCode;

....
....
public String getUserID() {
    return userID;
}

public void setUserID(String userID) {
    this.userID = userID;
}

public String getFunctionID() {
    return functionID;
}

public void setFunctionID(String functionID) {
    this.functionID = functionID;
}

public String getFunctionName() {
    return functionName;
}

public void setFunctionName(String functionName) {
    this.functionName = functionName;
}

public String getParentFunction() {
    return parentFunction;
}

public void setParentFunction(String parentFunction) {
    this.parentFunction = parentFunction;
}

public Character getFunctionType() {
    return functionType;
}

public void setFunctionType(Character functionType) {
    this.functionType = functionType;
}

public String getBranchCode() {
    return branchCode;
}

public void setBranchCode(String branchCode) {
    this.branchCode = branchCode;
}
。。。。

3) 我还创建了一个FacadeBean,它使用一个方法查找表中的所有行。我的问题是find方法返回的行只包含一条记录的详细信息,在视图中重复记录的数量

List browserDetails = new ArrayList(40);
Query query = em.createNamedQuery("...findAll");
List rs = query.getResultList();
4) 这些是在jsf页面中使用这个FacadeBean后的结果……直接的Netbeans向导工作

UserID  FunctionID  FunctionName    ParentFunction  FunctionType    BranchCode   
jg1     234561       Another Test   XXXXXX  T   001     View Edit Destroy
jg1     234561       Another Test   XXXXXX  T   001     View Edit Destroy
jg1     234561       Another Test   XXXXXX  T   001     View Edit Destroy
jg1     234561       Another Test   XXXXXX  T   001     View Edit Destroy
jg1     234561       Another Test   XXXXXX  T   001     View Edit Destroy`
我不知道为什么只有在使用视图时才会发生这种情况,但是当我使用表时,我能够得到正确的结果