2013-06-19 4 views
0

클라이언트가 메서드를 "대상 지정"하지 못했습니다. 서버 로그에 피드백이 없습니다. 어느 것이 나에게 아주 이상합니다. 내 방법으로 정의된다클라이언트가 스프링 메서드를 타겟팅 할 수 없습니다.

은 다음과 같습니다 크롬에서

@RequestMapping(value = "/uploadFile/{companiesId}/{day}/{month}/{year}/{userId}", 
    method = RequestMethod.POST, headers = "Accept=*") 
    public void uploadFile(@PathVariable("companiesId") long companiesId, 
      @PathVariable("day") int day, @PathVariable("month") int month, 
      @PathVariable("year") int year, @PathVariable("userId") int userId, 
      @RequestParam(value = "file") MultipartFile multipartFile, 
      Model model, HttpServletRequest request, HttpServletResponse response) { 
    ...content 
    } 

내 네트워크 관리자는 다음과 같습니다 :

@RequestMapping(value = "/reUploadFile/{userId}/{fileId}", method = RequestMethod.POST, headers = "Accept=*") 
    public @ResponseBody() 
    void reUploadFile(@PathVariable("userId") int userId, @PathVariable("fileId") int fileId, 
      @RequestParam(value = "file") MultipartFile multipartFile, 
      Model model, HttpServletRequest request, HttpServletResponse response) { 

    ...Stuff happends doesn't get called 
    } 

그것은 작동 folow 방법과 거의 같은 글의의 실패한 :

Request URL:http://localhost:8080/MyProject.spring/spring/reUploadFile/3821211/154329 
Request Method:POST 
Status Code:500 Internal Server Error 

성공한 사람 :

Request URL:http://localhost:8080/MyProject.spring/spring/uploadFile/25974093/01/06/2013/3821211 
Request Method:POST 
Status Code:200 OK 

여기에서 오류 500이 발생하는 이유를 알아낼 수 있습니까? 추가 정보가 필요하면 바로 연락하겠습니다. :) 읽어 주셔서 감사합니다.

+0

유일한 차이점 인 것처럼 보이는'reUploadFile'에서'@ResponseBody()'를 제거해보십시오. 계속 유지하고자하는 경우 예외 양식을 서버에 게시하십시오. –

+0

오류 로그를 게시 할 수 있습니까 –

+0

@SanjayaLiyanage 서버 로그에 의견이 없습니다. 그래서 종류의 오류 로그도 의미하지 않습니다. 그 외 감사합니다 :) –

답변

0

상태 코드 : 500 내부 서버 오류는 reUploadFile 메소드 내부의 논리에 문제가 있음을 의미합니다. 그것은 문제없이 끝점 (url)을 찾을 수 있습니다. 로직 내부에 예외가 던져 졌는지 확인하십시오. multipartFile 제대로 설정하지 않은 것 같아요.

+0

아니요. aparently하지 않습니다. 디버깅을했고, 매우 멈추려고했습니다. 첫 번째 줄. 그리고 그 지점에 도달하지 마십시오 –

+0

다음 문제는 여기에 있어야합니다 "@RequestParam (값 ="파일 ") MultipartFile multipartFile".이 매개 변수를 설정하여 그냥 테스트 거짓 또는 임시이 부분을 제거하고 테스트. –

+0

파일에 문제가있었습니다. –

0

응답 유형이 void 인 경우 @ResponseBody()를 제공 할 필요가 없습니다. 따라서 제거한 후 다시 시도하십시오.

+0

@ResponseBody는 당신이 무언가를 넣었음에도 불구하고 에러를 일으키지 않습니다 .Hense -1 from me –

+0

시도해 볼만한 가치가 있었고, 정보를 제공해 주셔서 감사합니다. –

관련 문제