Java Refection: NoSuchMethodException при высокой нагрузке - PullRequest
2 голосов
/ 03 октября 2019

Я получаю ниже исключения ТОЛЬКО когда высокая нагрузка выполняется как 25 вызовов (тот же сценарий) в секунду, и это происходит не для каждого вызова, это происходит только для нескольких раз. Однако, когда я выполняю несколько вызовов одновременноя не получаю это исключение. Я проверил, что метод public execute метод существует в классе com.abc.block.Rules, и по этой причине исключение не происходит, когда я запускаю несколько вызовов.

02 окт. 2019 г. 02: 00: 01,021 [Worker [23]] ERROR [SNode] 80] NoSuchMethodException во время рефлексивного вызова класса com.abc.block.Rules java.lang.NoSuchMethodException: com. abc.block.Rules.execute (com.abc.common.cdata) в java.lang.Class.getMethod (Class.java:1786)

Во время работы отображение нагрузки работает неправильно. Любые входные данные, пожалуйста?

Код:

    Object port = service.getClass()
            .getMethod(xmlSNode.getPortMethodName()).invoke(service);

    outResult  = port
                 .getClass()
                 .getMethod(xmlSNode.getOperation().getName(),
                         inputs.getInputTypes())
                 .invoke(port, data);

Правило вызова:

public Object[] execute(cdata c) throws Exception{
...
}

Любые входные данные, пожалуйста

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...