티스토리 뷰

 

 

리뷰를 등록할때 오류가 발생했다.

분명히 리뷰를 저장하는 db에는 이미지가 없는데 img 가 null이라는 오류가 발생했다.

 

이것의 문제는 컨트롤러에 있었다.

hospital와 hospitalReview를 합치면서 같은 페이지 안에서 여러 컨트롤러를 사용했다.

하지만 이럴경우 같은 맵핑일 경우 혼돈하여 다른 매핑메서드를 실행할 수 있다.

그렇기 때문에 매핑명에 대해 신경을 써 같은 이름으로 사용하지 않도록 변경해야했다.

 

 

 

 

 

 

그리고 기존 코드에서는 폼에 action 설정을 하지 않았다.

하지만 폼에 action 설정을 해야 현재 URL 의 기준이 아닌 원하는 페이지를 보여줄 수 있도록 작동한다.

 

 

 

<form:form action="/waguwagu/hospital/review/add" method="post" class="form-contact form-review mt-3" modelAttribute="addReview" >
  <div class="form-group">
    <input path="name" class="form-control" name="name" type="text" placeholder="이름을 입력하세요." required>
  </div>
  <div class="form-group">
    <input type="text" path="hospitalId" class="form-control" name="hospitalId" value="${hospitalId}" >
  </div>
  <div class="form-group">
    <input type="date" path="reviewDate" class="form-control" name="reviewDate" >
  </div>
  <div class="form-group">
    <input type="text" path="reviewRating" class="form-control" name="reviewRating" >
  </div>
  <div class="form-group">
    <input path="userId" class="form-control" name="userId" type="email" placeholder="이메일을 입력하세요." required>
  </div>
  <div class="form-group">
    <input path="title" class="form-control" name="title" type="text" placeholder="제목을 입력하세요.">
  </div>
  <div class="form-group">
    <textarea path="reviewContent" class="form-control different-control w-100" name="reviewContent" id="textarea" cols="30" rows="5" placeholder="글을 작성하세요."></textarea>
  </div>
  <div class="form-group text-center text-md-right mt-3">
    <button type="submit" class="button button--active button-review">등록</button>
  </div>
</form:form>

 

 




만약 /waguwagu/hospital/review/add 엔드포인트를 사용하고 싶지만, 자동으로 /waguwagu/hospitalinfo/hospital/add로 리다이렉트 되고 있다면, 다음과 같은 몇 가지 점을 확인할 수 있다.

 


컨트롤러 메서드 경로:
@PostMapping("/add")가 HospitalReviewController와 HospitalInfoController 양쪽에 있는지 확인하세요. 두 컨트롤러에서 동일한 경로로 매핑되어 있다면, 스프링은 어떤 컨트롤러를 선택해야 할지 혼란스러워질 수 있다.

 


폼의 action 속성 확인:
폼에서 action 속성을 명시적으로 설정하고 있는지 확인하세요. 만약 설정하지 않았다면, 스프링은 현재 페이지 URL을 기본값으로 사용할 수 있다.

 

 

 

 

 

 

 

 

 

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday