В классе нет метода "get" com.company.project.controller.Diccionario $ Proxy $ _ $$ _ Weld $ EnterpriseProxy $ " - PullRequest
0 голосов
/ 25 сентября 2018

У меня проблемы с инъекцией зависимости, она работает хорошо, когда все идет хорошо.Когда возникает исключение, я перехватываю его и проверяю метод объекта, когда я делаю так, чтобы инспектор по переменным отображал сообщение, описанное в заголовке:

There is no method "get" in class "com.company.project.controller.Diccionario$Proxy$_$$_Weld$EnterpriseProxy$"

, если я продолжаю программу, оно выдает и исключение наconsole:

javax.ejb.TransactionRolledbackLocalException: Client's transaction aborted

Заранее спасибо за все ответы!

Это мой соответствующий код:

Универсальный контроллер

<!-- language: lang-java -->
public abstract class Controller<C> {

    @Inject
    protected Diccionario texto;

    public List<String> save(C entidad) {
    List<String> res = new ArrayList();
        try {
            getDao().save(entidad); // <-- here I can inspect texto.get("test");
        } catch (UniqueException ex) {
            String key = "test";
            String value = texto.get(key); // <-- here it shows the "There is no method..."
            res.add(value);
        }
        return res;
    }
}

Aконтроллер, который использует универсальный контроллер

<!-- language: lang-java -->
@Stateless
public class ControllerProducto extends Controller<Producto> {

}

Класс Diccionario:

<!-- language: lang-java -->
@Stateless
public class Diccionario {

    private HashMap<String, String> etiquetas;

    private void init() {
        etiquetas = new HashMap();
        etiquetas.put("test", "This is a sample test");
    }

    public String get(String clave) {
        if (etiquetas == null) {
            init();
        }
        String res = "";
        if (etiquetas.containsKey(clave.toUpperCase())) {
            res = etiquetas.get(clave);
        }
        return res;
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...