Java -Bohnen, Beanutils und die Boolesche Wrapper -KlasseJava

Java-Forum
Anonymous
 Java -Bohnen, Beanutils und die Boolesche Wrapper -Klasse

Post by Anonymous »

Ich verwende Beanutils, um Java -Objekte zu manipulieren, die über JAXB erstellt wurden, und ich bin in ein interessantes Problem gestoßen. Manchmal erstellt Jaxb ein Java -Objekt wie folgt: < /p>

Code: Select all

public class Bean {
protected Boolean happy;

public Boolean isHappy() {
return happy;
}

public void setHappy(Boolean happy) {
this.happy = happy;
}
}
< /code>

Der folgende Code funktioniert gut: < /p>

Bean bean = new Bean();
BeanUtils.setProperty(bean, "happy", true);
< /code>

Versucht jedoch, die Happy < /code> Eigenschaft wie SO zu erhalten: < /p>

Bean bean = new Bean();
BeanUtils.getProperty(bean, "happy");
< /code>

Ergebnisse in dieser Ausnahme: < /p>

Exception in thread "main" java.lang.NoSuchMethodException: Property 'happy' has no getter method in class 'class Bean'
< /code>

Ändern alles in einen primitiven booleschen < /code> Ermöglicht sowohl den Set als auch den Aufruf zum Laufen.  Ich habe diese Option jedoch nicht, da es sich um Klassen handelt.  Ich gehe davon aus, dass dies geschieht, weil die Java -Bean -Bibliotheken nur eine IS  
-Methode zur Darstellung einer Eigenschaft betrachten, wenn der Rückgabetyp ein primitiver boolescher ist, und nicht der Wrapper -Typ boolean . Hat jemand einen Vorschlag, wie er über Beanutils wie diese zugreifen kann? Gibt es eine Art Problemumgehung, die ich verwenden kann?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post