Spring IllegalAccessError: попытался получить доступ к ValueFormatter из класса ValueFormatterWrapper - PullRequest
0 голосов
/ 17 марта 2019

У меня странная проблема со Spring.Я не думаю, что я делаю что-то не так, и я подозреваю, что это проблема самой Spring, но я никогда не могу быть так уверен.Я не могу найти ссылки на эту ошибку где-либо еще в Интернете, поэтому я обратился за помощью в StackOverflow.

Я использую Spring Boot и анализирую шаблон тимилиста.При анализе шаблона я обнаружил, что, как только мой шаблон пытается проанализировать значение th: field, я получаю исключение: Caused by: java.lang.IllegalAccessError: tried to access class org.springframework.web.servlet.tags.form.ValueFormatter from class org.springframework.web.servlet.tags.form.ValueFormatterWrapper

Я не уверен, что происходит, и яобнаружил, что если я удаляю поле th: из моего шаблона, он обрабатывает шаблон очень хорошо.В трассировке стека нет ссылок на мой код, все дело в Spring, Thymeleaf и Tomcat.Что заставляет меня верить, что это настоящий баг Spring.

Ниже приведена часть трассировки стека:

Caused by: java.lang.IllegalAccessError: tried to access class org.springframework.web.servlet.tags.form.ValueFormatter from class org.springframework.web.servlet.tags.form.ValueFormatterWrapper
    at org.springframework.web.servlet.tags.form.ValueFormatterWrapper.getDisplayString(ValueFormatterWrapper.java:40)
    at org.thymeleaf.spring4.processor.SpringInputGeneralFieldTagProcessor.doProcess(SpringInputGeneralFieldTagProcessor.java:110)
    at org.thymeleaf.spring4.processor.AbstractSpringFieldTagProcessor.doProcess(AbstractSpringFieldTagProcessor.java:179)
    at org.thymeleaf.processor.element.AbstractAttributeTagProcessor.doProcess(AbstractAttributeTagProcessor.java:74)
    at org.thymeleaf.processor.element.AbstractElementTagProcessor.process(AbstractElementTagProcessor.java:95)
    at org.thymeleaf.util.ProcessorConfigurationUtils$ElementTagProcessorWrapper.process(ProcessorConfigurationUtils.java:633)
    at org.thymeleaf.engine.ProcessorTemplateHandler.handleStandaloneElement(ProcessorTemplateHandler.java:918)
    at org.thymeleaf.engine.StandaloneElementTag.beHandled(StandaloneElementTag.java:228)
    at org.thymeleaf.engine.Model.process(Model.java:282)
    at org.thymeleaf.engine.Model.process(Model.java:290)
    at org.thymeleaf.engine.IteratedGatheringModelProcessable.processIterationModel(IteratedGatheringModelProcessable.java:367)
    at org.thymeleaf.engine.IteratedGatheringModelProcessable.process(IteratedGatheringModelProcessable.java:221)
    at org.thymeleaf.engine.ProcessorTemplateHandler.handleCloseElement(ProcessorTemplateHandler.java:1640)
    at org.thymeleaf.engine.CloseElementTag.beHandled(CloseElementTag.java:139)
    at org.thymeleaf.engine.Model.process(Model.java:282)
    at org.thymeleaf.engine.Model.process(Model.java:290)
    at org.thymeleaf.engine.IteratedGatheringModelProcessable.processIterationModel(IteratedGatheringModelProcessable.java:367)
    at org.thymeleaf.engine.IteratedGatheringModelProcessable.process(IteratedGatheringModelProcessable.java:221)
    at org.thymeleaf.engine.ProcessorTemplateHandler.handleCloseElement(ProcessorTemplateHandler.java:1640)
    at org.thymeleaf.engine.CloseElementTag.beHandled(CloseElementTag.java:139)
    at org.thymeleaf.engine.Model.process(Model.java:282)
    at org.thymeleaf.engine.Model.process(Model.java:290)
    at org.thymeleaf.engine.IteratedGatheringModelProcessable.processIterationModel(IteratedGatheringModelProcessable.java:367)
    at org.thymeleaf.engine.IteratedGatheringModelProcessable.process(IteratedGatheringModelProcessable.java:221)
    at org.thymeleaf.engine.ProcessorTemplateHandler.handleCloseElement(ProcessorTemplateHandler.java:1640)
    at org.thymeleaf.engine.CloseElementTag.beHandled(CloseElementTag.java:139)
    at org.thymeleaf.engine.TemplateModel.process(TemplateModel.java:136)
    at org.thymeleaf.engine.TemplateManager.parseAndProcess(TemplateManager.java:661)
    at org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1098)
    at org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1072)
    at org.thymeleaf.spring4.view.ThymeleafView.renderFragment(ThymeleafView.java:352)
    at org.thymeleaf.spring4.view.ThymeleafView.render(ThymeleafView.java:190)
    at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1286)
    at org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:1041)
    at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:984)
    ... 49 more

Специальная строка в моем шаблоне:

<input type="text" th:field="${configForm.configs[__${configIter.index}__].siteId}" th:text="${progressItemAttribute.attribute.name != null} ? ${progressItemAttribute.attribute.name} : 'null value!'"/>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...