Не удалось преобразовать значение свойства типа «java.lang.String» в требуемый тип «java.util.List».JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Не удалось преобразовать значение свойства типа «java.lang.String» в требуемый тип «java.util.List».

Сообщение Anonymous »

Я создал проект, в котором разделены бэкэнд и интерфейс, и это интерфейс, с бэкэндом все в порядке, проблема в том, что когда я отправляю данные с использованием формы, всегда возникает эта проблема, это мой необработанный код
< ul>
[*]Guest.java

@Data
@AllArgsConstructor
@NoArgsConstructor
public class Guest {
private Integer id;
private String nama;
private String alamat;
private String noTelepon;
private String keterangan;
private LocalDateTime waktuKunjungan;
private List events;
}
  • Запрос гостя
@Data
@AllArgsConstructor
@NoArgsConstructor
public class GuestRequest {
private String nama;
private String alamat;
private String noTelepon;
private String keterangan;
private String waktuKunjungan;
private List eventsId;
}
  • GuestCreateRequest.java
@Data
@AllArgsConstructor
@NoArgsConstructor
public class GuestCreateRequest {
private Integer id;
private String nama;
private String alamat;
private String noTelepon;
private String keterangan;
private String waktuKunjungan;
private List events;
}
  • Это услуга
public GuestRequest createDTO(GuestRequest guestRequest){
HttpEntity httpEntity = new HttpEntity(guestRequest);
return restTemplate
.exchange(
url,
HttpMethod.POST,
httpEntity,
GuestRequest.class
).getBody();
}
  • а это контроллер
@Controller
@RequestMapping("/pendaftaran")
public class registGuest {

@Autowired
private EventService eventService;

@Autowired
private GuestSerivce guestSerivce;

@GetMapping
public String getPendaftaran(Model model){
model.addAttribute("title", "pendaftaran user");
model.addAttribute("guestCreateRequest", new GuestCreateRequest());
model.addAttribute("events", eventService.getAll());
return "user/formGuest";
}

@PostMapping
public String create(Model model, @ModelAttribute("guestCreateRequest") GuestCreateRequest guestCreateRequest,
@RequestParam(name = "eventList") Set eventList, BindingResult bindingResult,
RedirectAttributes redirectAttributes ){
try {
if (bindingResult.hasErrors()) {
model.addAttribute("title", "pendaftaran user");
model.addAttribute("guestCreateRequest", new GuestCreateRequest());
model.addAttribute("events", eventService.getAll());
return "user/formGuest";
}

GuestRequest guestRequest = convertToGuestRequest(guestCreateRequest, eventList);
guestSerivce.createDTO(guestRequest);
return "redirect:/user/daftarTamu";
} catch (Exception e) {
model.addAttribute("errors", "Something wrong");

}
return "redirect:/user/formGuest";
}

private GuestRequest convertToGuestRequest(GuestCreateRequest guestCreateRequest, Set eventList ){
GuestRequest guestRequest = new GuestRequest();
guestRequest.setNama(guestCreateRequest.getNama());
guestRequest.setAlamat(guestCreateRequest.getAlamat());
guestRequest.setKeterangan(guestCreateRequest.getKeterangan());
guestRequest.setNoTelepon(guestCreateRequest.getNoTelepon());
guestRequest.setWaktuKunjungan(guestCreateRequest.getWaktuKunjungan());
guestRequest.setEventsId(new ArrayList(eventList));
return guestRequest;
}

}

Страница ошибки Whitelabel
Это приложение не имеет явного сопоставления для /error, поэтому вы видите это как запасной вариант.
There was an unexpected error (type=Bad Request, status=400).
Validation failed for object='guestCreateRequest'. Error count: 1
org.springframework.validation.BindException: org.springframework.validation.BeanPropertyBindingResult: 1 errors
Field error in object 'guestCreateRequest' on field 'events': rejected value [3]; codes [typeMismatch.guestCreateRequest.events,typeMismatch.events,typeMismatch.java.util.List,typeMismatch]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [guestCreateRequest.events,events]; arguments []; default message [events]]; default message [Failed to convert property value of type 'java.lang.String' to required type 'java.util.List' for property 'events'; nested exception is java.lang.IllegalStateException: Cannot convert value of type 'java.lang.String' to required type 'com.guestbook.clientApp.model.entity.Event' for property 'events[0]': n o m a t c h i n g e d i t o r s o r c o n v e r s i o n s t r a t e g y f o u n d ] < b r / > a t o r g . s p r i n g f r a m e w o r k . w e b . m e t h o d . a n n o t a t i o n . M o d e l A t t r i b u t e M e t h o d P r o c e s s o r . r e s o l v e A r g u m e n t ( M o d e l A t t r i b u t e M e t h o d P r o c e s s o r . j a v a : 1 7 5 ) < b r / > a t o r g . s p r i n g f r a m e w o r k . w e b . m e t h o d . s u p p o r t . H a n d l e r M e t h o d A r g u m e n t R e s o l v e r C o m p o s i t e . r e s o l v e A r g u m e n t ( H a n d l e r M e t h o d A r g u m e n t R e s o l v e r C o m p o s i t e . j a v a : 1 2 2 ) < b r / > a t o r g . s p r i n g f r a m e w o r k . w e b . m e t h o d . s u p p o r t . I n v o c a b l e H a n d l e r M e t h o d . g e t M e t h o d A r g u m e n t V a l u e s ( I n v o c a b l e H a n d l e r M e t h o d . j a v a : 1 7 9 ) < b r / > a t o r g . s p r i n g f r a m e w o r k . w e b . m e t h o d . s u p p o r t .InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:146)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1072)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:555)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:623)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:209)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:94)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:168)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:481)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:390)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:928)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1794)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:748)


Подробнее здесь: https://stackoverflow.com/questions/787 ... ed-type-ja
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»