GALERA ESTOU COM UM PROBLEMINHA AQUI
if(StatusSolicitacao.PENDENTESUPERIOR.equals(status)){
return getResourceString(ConstantesFerias.MSGSTATUSPENDENTESUPERIOR, null);
}
Onde StatusSolicitacao é um Enum.
o meu status está vindo de acordo… “PENDENTESUPERIOR”. Alguém poderia me explicar pq ele nunca entra nesse if???
Tente:
if(status == StatusSolicitacao.PENDENTESUPERIOR){
return getResourceString(ConstantesFerias.MSGSTATUSPENDENTESUPERIOR, null);
}
Essa sua varíavel status é um Enum também?
Caso seja string não vai funcionar mesmo. Tente fazer:
StatusSolicitacao.PENDENTESUPERIOR.name
[quote=davidtiagoconceicao]Tente:
if(status == StatusSolicitacao.PENDENTESUPERIOR){
return getResourceString(ConstantesFerias.MSGSTATUSPENDENTESUPERIOR, null);
}
[/quote]
Nao… status é uma string.
public static String formataStatus(String status) {
if(StatusSolicitacao.PENDENTESUPERIOR.equals(status)){
return getResourceString(ConstantesFerias.MSGSTATUSPENDENTESUPERIOR, null);
}
else if(StatusSolicitacao.REPROVADOSUPERIOR.equals(status)){
return getResourceString(ConstantesFerias.MSGSTATUSREPROVADOSUPERIOR, null);
}
else if(StatusSolicitacao.PENDENTERH.equals(status)){
return getResourceString(ConstantesFerias.MSGSTATUSPENDENTERH, null);
}
else if(StatusSolicitacao.REPROVADORH.equals(status)){
return getResourceString(ConstantesFerias.MSGSTATUSREPROVADORH, null);
}
else if(StatusSolicitacao.APROVADO.equals(status)){
return getResourceString(ConstantesFerias.MSGSTATUSAPROVADO, null);
}
else if(StatusSolicitacao.CANCELADA.equals(status) ){
return getResourceString(ConstantesFerias.MSGSTATUSCANCELADO, null);
}
else{
return "";
}
}
Veja meu método todo… StatusSolicitacao é um enum
[quote=ignacio83]Essa sua varíavel status é um Enum também?
Caso seja string não vai funcionar mesmo. Tente fazer:
StatusSolicitacao.PENDENTESUPERIOR.name
[/quote]
Mas eu tenho que receber uma string como parametro e comparar com o Enum… nao tem jeito??
[quote=ignacio83]Essa sua varíavel status é um Enum também?
Caso seja string não vai funcionar mesmo. Tente fazer:
StatusSolicitacao.PENDENTESUPERIOR.name
[/quote]
Valeu cara! É isso mesmo!
Tem outras maneiras mais malucas…
Dá pra declarar um atributo no Enum que represente esse seu String e dps declarar um Construtor do Enum:
Algo parecido com isso:
http://www.java2s.com/Code/Java/Language-Basics/Useanenumconstructorinstancevariableandmethod.htm
[quote=ignacio83]Tem outras maneiras mais malucas…
Dá pra declarar um atributo no Enum que represente esse seu String e dps declarar um Construtor do Enum:
Algo parecido com isso:
http://www.java2s.com/Code/Java/Language-Basics/Useanenumconstructorinstancevariableandmethod.htm
[/quote]
Agora eu to com outro problema aqui…
solicitacaoFeriasAux.setStatus(SisrhBeanUtils.formataStatus(solicitacao.getStatus().toString()));
setStatus (StatusSolicitacao){}…
esse método formataStatus retorna uma string… ai eu dei um toString mas ai ele converte tudo para string e da pala no set.
A questao é a seguinte… eu tenho q converter o status para string somente no método e depois converter p/ StatusSolicitacao.
Puts… q confusao…
espero q vc tenha me entendido rsrs
Pois é eu acho q entendi mais ou menos…
Me explica porque vc precisa fazer tudo isso… Quem sabe eu ou alguem tenha alguma idéia melhor…
[quote=ignacio83]Pois é eu acho q entendi mais ou menos…
Me explica porque vc precisa fazer tudo isso… Quem sabe eu ou alguem tenha alguma idéia melhor…[/quote]
Tem como eu converter um Set em um List?
[quote=ignacio83]Pois é eu acho q entendi mais ou menos…
Me explica porque vc precisa fazer tudo isso… Quem sabe eu ou alguem tenha alguma idéia melhor…[/quote]
Pensei no seguinte método
public List converteListaSolicitacaoFerias(SetsetSolicitacao){
Como eu faço para fazer isso?
Tem jeito?
É só percorrer esse Set, montar um List a partir dele e retornar esse novo List. Como o List é menos restritivo que Set não precisa nem se preocupar com a integridade. Se fosse pra transformar um List em um Set por exemplo você teria que tomar cuidado com elementos repetidos, já que List aceita e Set não.
dá pra fazer assim tb:
List x = new ArrayList(setSolicitacao);
[quote=ignacio83]dá pra fazer assim tb:
List x = new ArrayList(setSolicitacao);
[/quote]
Boa! Nada como conhecer a API :!:
[quote]ArrayList(Collection<? extends E> c)
Constructs a list containing the elements of the specified collection, in the order they are returned by the collection’s iterator.[/quote]