Я пытаюсь удалить объекты, нажав кнопку «Удалить» в этой форме:
<form action="/applications/delete" method="get">
<input type="hidden" name="_csrf" value="${_csrf.token}"/>
<input type="hidden" name="applicationId" value="${application.id}"/>
<button type="submit" class="btn btn-primary btn-block">
<p class="Btn">Delete</p>
</button>
</form>
И я получаю applicationId
в моем
@GetMapping("/delete")
public String deleteApplication(@AuthenticationPrincipal User user, @RequestParam("applicationId") Application application, Model model)
Но у меня есть некоторые странные исключения:
2019-04-25 22:08:07.248 WARN 7492 --- [nio-8080-exec-9] o.h.e.l.internal.CollectionLoadContext : HHH000160: On CollectionLoadContext#cleanup, localLoadingCollectionKeys contained [1] entries
2019-04-25 22:08:07.249 WARN 7492 --- [nio-8080-exec-9] o.h.e.loading.internal.LoadContexts : HHH000100: Fail-safe cleanup (collections) : org.hibernate.engine.loading.internal.CollectionLoadContext@29b119a7<rs=HikariProxyResultSet@1925344473 wrapping Result set representing update count of -1>
2019-04-25 22:08:07.250 WARN 7492 --- [nio-8080-exec-9] .w.s.m.s.DefaultHandlerExceptionResolver : Resolved [org.springframework.web.method.annotation.MethodArgumentTypeMismatchException: Failed to convert value of type 'java.lang.String' to required type 'JobHunter.domain.Application'; nested exception is org.springframework.core.convert.ConversionFailedException: Failed to convert from type [java.lang.String] to type [@org.springframework.web.bind.annotation.RequestParam JobHunter.domain.Application] for value '1'; nested exception is java.lang.NullPointerException]
Таким образом, он не может преобразовать String = '1' в объект Application.
Я использую то же самое в другом шаблоне
<form action="/vacancy/add" method="post" class="form-inline">
<input type="hidden" name="_csrf" value="${_csrf.token}"/>
<select name="departmentId" class="custom-select mb-2 mr-sm-2">
<option value="" disabled selected hidden>Select department</option>
<option value="${department.id}">${department.departmentName}</option>
</select>
<button class="btn btn-primary mb-2"= type="submit">Add</button>
</form>
И еще один контроллер:
public String add(@RequestParam("departmentId") Department department
И это отлично работает. Так что я понятия не имею, что не так.