我的数据类中有一个枚举如下
public enum ProcStat {
NOT_READY ((byte)-1, "Not Ready For Processing"),
READY_FOR_PROCESSING ((byte)0, "Ready For Processing"),
BEING_PROCESSED ((byte)1, "Being Processed"),
PROCESSED_SUCCESSFULLY ((byte)2, "Processed Successfully"),
MSG_SUPPRESSED ((byte)98, "Msg suppressed before processing"),
PROCESSED_ERROR ((byte)99, "Processed With Error");
private final Byte statByte;
private final String statusDesc;
ProcStat(Byte statByte, String statusDesc)
{
this.statByte = statByte;
this.statusDesc = statusDesc;
}
@Override
public String toString()
{
return statusDesc;
}
protected static ProcStat getProcStat(Byte procStat)
{
if (READY_FOR_PROCESSING.statByte.equals(procStat))
{
return READY_FOR_PROCESSING;
}
else if (BEING_PROCESSED.statByte.equals(procStat))
{
return BEING_PROCESSED;
}
else if (PROCESSED_SUCCESSFULLY.statByte.equals(procStat))
{
return PROCESSED_SUCCESSFULLY;
}
else if (MSG_SUPPRESSED.statByte.equals(procStat))
{
return MSG_SUPPRESSED;
}
else if (PROCESSED_ERROR.statByte.equals(procStat))
{
return PROCESSED_ERROR;
}
else
{
return NOT_READY;
}
}
public Byte getStatByte()
{
return this.statByte;
}
};
Proc_Stat引用DataBase表中的Number字段,我需要在页面上显示一列,它显示每行的数字proc_stat的相应String。 这就是我在xhtml页面上呈现相同数据类的任何其他字段的方式:
id =“dataTable”name =“dataTable”var =“data”
如何为枚举类型提供输出值? 我这样给出:value =“#{data.procstat.toString()}”??
答案 0 :(得分:0)
我认为你需要在你的一个托管bean中创建与getProcStat
方法相同的方法。类似的东西:
public String getProcStat(Byte byte) {
return ProcState.getProcState(byte).toString();
}
在xhtml中:
value="#{yourBean.getProcState(data)}"