Нет, это была изначальная проблема в вопросе.
еюсь, что кто-то может предложить простое решение моей проблемы.
У меня есть POJO, скажи:
public class Person
{
private String name;
public String getName(){ return name; }
public void setName(String name){ this.name = name; }
}
Я хотел бы использовать функциональность GWT AutoBean для сериализации / десериализации этого компонента в JSON, но AutoBean ожидает интерфейс:
public interface Person
{
public String getName();
public void setName(String name);
}
У меня есть настройка AutoBeanFactory:
public interface PersonFactory extends AutoBeanFactory
{
AutoBean<Person> person();
}
Используя фабрику и интерфейс Person, я могу десериализовать JSON Person:
PersonFactory personFactory = GWT.create(PersonFactory.class);
AutoBean<Person> autoBeanPerson = AutoBeanCodex.decode(personFactory, Person.class, jsonObject.toString());
Person person = autoBeanPerson.as();
Однако, если я заменяю интерфейс Person на класс Person, я получаю исключение AutoBeanFactoryGenerator, в котором говорится: «com.xxx.xxx.Person не является интерфейсом».
Как я могу использовать сериализацию / десериализацию AutoBean с моим простым POJO?