Метод получения классов JAXB возвращает что-то вроде JAXBElement, JAXBElement и т. д. Я хотел бы сгенерировать метод в классах JAXB, который возвращает OutputRoot, String и т. д.
Я не могу понять, как получить внутренний тип (OutputRoot и т. д.), чтобы указать его в новом методе.
На данный момент у меня есть
Код: Выделить всё
@Override
public boolean run(Outline model, Options opt, ErrorHandler errorHandler) {
JCodeModel m = new JCodeModel();
for (ClassOutline o : model.getClasses()) {
for (Entry e : o.implClass.fields().entrySet()) {
JClass classOptional = model
.getCodeModel()
.ref(Optional.class)
.narrow( e.getValue()
.type().boxify() );
String methodName = "get" + e.getKey().substring(0, 1).toUpperCase() + e.getKey().substring(1);
JMethod method = o.implClass.method(PUBLIC, classOptional, methodName);
JBlock body = method.body();
}
}
}
Подробнее здесь: https://stackoverflow.com/questions/797 ... -refers-to
Мобильная версия