Bonjour à tous,
J'essaye de modifier des attributs Boolean (mais aussi des boolean) en utilisant les api de réflections.
Lorsque que j'essaye par la méthode ci-dessous j'ai cette exception :
java.lang.IllegalArgumentException: Can not set java.lang.Boolean field com.client.keytus.models.domain.SubZone.defaultSizing to java.lang.Boolean
at sun.reflect.UnsafeFieldAccessorImpl.throwSetIllegalArgumentException(Unknown Source)
at sun.reflect.UnsafeFieldAccessorImpl.throwSetIllegalArgumentException(Unknown Source)
at sun.reflect.UnsafeFieldAccessorImpl.ensureObj(Unknown Source)
at sun.reflect.UnsafeObjectFieldAccessorImpl.set(Unknown Source)
at java.lang.reflect.Field.set(Unknown Source)
at com.genui.keytus.editor.ui.CheckBoxUI.setAttribut(CheckBoxUI.java:121)
....J'ai essayé tout un tas de truc mais impossible cette exception est systématiquement levé quoi que je fasse. si quelqu'un pouvait m'aider ou me donner une piste.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 private void setAttribut(Boolean value){ try { f.set(editedAttrib , value); refresh(); } catch (IllegalArgumentException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IllegalAccessException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (InvocationTargetException e) { // TODO Auto-generated catch block e.printStackTrace(); } }
J'ai essayé la fonction set comme cela également mais en vain : f.set(editedAttrib , new Boolean(value));
Partager