Когда я использую modelAttribute = "student", как исправить «HTTP Status 500 - Internal Server Error» - PullRequest
0 голосов
/ 03 мая 2019

.java код и .jsp код на картинке

Абсолютный uri: [http://www.springframework.org/tags/form] не может быть разрешен ни в файле web.xml, ни в файлах jar, развернутых с помощью этого приложения

.java-код и .jsp-код можно увидеть на рисунке. Возможно, есть некоторые ошибки: form: form action = "processForm" modelAttribute = "student" в форме student. jsp и theModel.addAttribute («студент», theStudent); в StudentController.java

журнал ошибок

at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:55)
at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:294)
at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:81)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:678)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:836)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1747)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.base/java.lang.Thread.run(Thread.java:835)

03-May-2019 18: 20: 32.089 SEVERE [http-nio-8080-exec-6] org.apache.catalina.core.StandardWrapperValve.invoke Servlet.service () для servlet [dispatcher] в контексте с путем [/ ModelAttribute_demo_war_exploded] вызвала исключение [Абсолютный uri: [http://www.springframework.org/tags/form] не может быть разрешен ни в файле web.xml, ни в файлах jar, развернутых с помощью этого приложения] с первопричиной org.apache.jasper.JasperException: абсолютное значение uri: [http://www.springframework.org/tags/form] не может быть разрешено ни в файле web.xml, ни в файлах jar, развернутых с помощью этого приложения в org.apache.jasper.compiler.DefaultErrorHandler.jspError (DefaultErrorHandler.java:55) в org.apache.jasper.compiler.ErrorDispatcher.dispatch (ErrorDispatcher.java:294) в org.apache.jasper.compiler.ErrorDispatcher.jspError (ErrorDispatcher.java:81) в org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:92) в org.apache.catalina.valves.AbstractAccessLogValve.invoke (AbstractAccessLogValve.java:678) в org.apache.catalina.core.StandardEngineValve.invoke (StandardEngineValve.java:74) в org.apache.catalina.connector.CoyoteAdapter.service (CoyoteAdapter.java:343) в org.apache.coyote.http11.Http11Processor.service (Http11Processor.java:408) в org.apache.coyote.AbstractProcessorLight.process (AbstractProcessorLight.java:66) в org.apache.coyote.AbstractProtocol $ ConnectionHandler.process (AbstractProtocol.java:836) в org.apache.tomcat.util.net.NioEndpoint $ SocketProcessor.doRun (NioEndpoint.java:1747) в org.apache.tomcat.util.net.SocketProcessorBase.run (SocketProcessorBase.java:49) в java.base / java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1128) в java.base / java.util.concurrent.ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.java:628) в org.apache.tomcat.util.threads.TaskThread $ WrappingRunnable.run (TaskThread.java:61) в java.base / java.lang.Thread.run (Thread.java:835)

1 Ответ

0 голосов
/ 03 мая 2019

Замените ваш

@RequestMapping ("/processForm")

этим:

@RequestMapping ("/processForm", method=RequestMethod.POST)

и поделитесь выводом / результатом.

Метод по умолчанию, выбранный вашей processForm, это GET, вместо этогоPOST.

Обновление

Попробуйте добавить своего ученика в модель, если ссылка не работает для вас.

public String processForm(@ModelAttribute ("student") Student theStudent, Model model)

model.addAttribute("student", theStudent);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...