Devido a arquitetura e requisitos do sistema precisar desabilitar um JButton a partir de regras de anotações e permissões
[quote]@PermissaoAnnotationField(Acao=“incluir”,Objeto=“telaCadastroProfissional”,Visivel=true)
private javax.swing.JButton btnCadastrar; [/quote]
fiz o seguinte método:
private void checkPermission() {
Field[] fields = this.getClass().getDeclaredFields();
for (Field f : fields) {
PermissaoAnnotationField per = f.getAnnotation(PermissaoAnnotationField.class);
if(per!=null){
if(!verificarPermissaoUsuario(per.Objeto(), per.Acao())){
try {
f.setAccessible(false);
} catch (IllegalArgumentException ex) {
Logger.getLogger(CadastrarProfissional.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
}
}
No construtor do JInternalframe estou fazendo assiim:
public CadastrarProfissional() {
super("Cadastro de profissionais", false, true);
initComponents();
checkPermission();
}
que quando iniciar um JInternalFrame ele por reflexão desabilitar o botão, estou usando setAcessible(false) porém não esta resolveldo, o que estou fazendo de errado?
O que estou tentando fazer é possivel mesmo?