Je consomme une chaîne JSON qui contient un objet image parmi d'autres objets. A partir de ce que je crée un PropertyBusinessObject qui a les éléments suivantsClassCastException - java.lang.String ne peut pas être converti en com.codename1.ui.Image
public final Property<EncodedImage, Profile> profilePic = new Property<>("profilePic", EncodedImage.class);
J'ai créé une méthode dans la PropertyBusinessObject
public EncodedImage getProfilePic() {
return profilePic.get();
}
Je remplir mes données dans l'objet métier de la propriété comme suit:
profile.getPropertyIndex().populateFromMap((Map) profileObject);
Lorsque j'essaie d'afficher l'image sur le formulaire en utilisant le code suivant,
ScaleImageLabel profilePic = new ScaleImageLabel(profile.getProfilePic()) {
@Override
protected Dimension calcPreferredSize() {
Dimension dimension = super.calcPreferredSize();
dimension.setHeight(Math.min(dimension.getHeight(), Display.getInstance().convertToPixels(40)));
return dimension;
}
};
profilePic.setBackgroundType(Style.BACKGROUND_IMAGE_SCALED_FILL);
container.add(BorderLayout.NORTH, profilePic);
Je reçois un ClassCastException
Exception: java.lang.ClassCastException - java.lang.String ne peut pas être jeté à com.codename1.ui.Image
Quelqu'un peut me aider à résoudre, ou suggérer une autre façon de consommer la chaîne JSON?
Quel est le format de l'image? base64? – Diamond
L'image est Base64 – Rootsman