freelec-springboot2-webservice icon indicating copy to clipboard operation
freelec-springboot2-webservice copied to clipboard

p144 게시글 등록 버튼 동작 안함

Open smkyoyo opened this issue 4 years ago • 7 comments

어떤 오류인가요?

오류설명: "글이 등록되었습니다" 라는 Alert이 노출되지 않고 DB에도 데이터가 저장되지 않음.

프로젝트 주소

Github에 오류가 난 프로젝트를 올려주세요.
Github 주소를 작성해주지 않으시면 답변해드릴수가 없어요!

  • Github URL: https://github.com/smkyoyo/MyFirstSpringProejct.git

오류 로그

별다른 오류는 없지만 등록 버튼이 동작하지 않음 image

smkyoyo avatar Nov 06 '20 11:11 smkyoyo

저도 동일한 증상을 겪었는데요. chrome의 개발자도구로 확인해보니 "uncaught syntaxerror unexpected token <"에러가 발생하더군요

IndexController의 GetMapping 애노테이션을 아래와 같이 바꾸시면 됩니다

@GetMapping("/")
public String index(){
  return "index";
}

저도 스프링MVC에 대한 깊은 이해가 부족해서 자세한 설명은 못드리겠습니다

myBabyGrand avatar Nov 24 '20 01:11 myBabyGrand

저도 동일한 증상을 겪었는데요. chrome의 개발자도구로 확인해보니 "uncaught syntaxerror unexpected token <"에러가 발생하더군요

IndexController의 GetMapping 애노테이션을 아래와 같이 바꾸시면 됩니다

@GetMapping("/")
public String index(){
  return "index";
}

저도 스프링MVC에 대한 깊은 이해가 부족해서 자세한 설명은 못드리겠습니다

아 답변 감사드립니다만, 저와 동일한 이슈가 아니신듯 하네요. 저는 본래 코드에 님이 쓰신대로 되어 있었습니다. ^^;

smkyoyo avatar Dec 03 '20 14:12 smkyoyo

저도 동일한 증상을 겪었는데요. chrome의 개발자도구로 확인해보니 "uncaught syntaxerror unexpected token <"에러가 발생하더군요

IndexController의 GetMapping 애노테이션을 아래와 같이 바꾸시면 됩니다

@GetMapping("/")
public String index(){
  return "index";
}

저도 스프링MVC에 대한 깊은 이해가 부족해서 자세한 설명은 못드리겠습니다

지나가다 답변드립니다. 말씀하신 에러는 js를 불러오지 못하여 발생한 에러로 보입니다.

책 본문 143페이지에 노티되어 있듯이 Host뒤에 오는 경로("/")가 호스트서버인 tomcat context와 연결되어, 소스상 src/main/resources/static 경로로 치환된다고 보시면 됩니다.

@GetMapping 과 @GetMapping("/")은 다르게 동작합니다. 얼핏 테스트해보면 접속시 index페이지가 노출되긴 하여 오동작인지 모르고 지나칠수 있는데 path값을 명시하지 않은 경우 any request가 전부 연결됩니다. 그래서 index페이지가 뜬거고, 그걸보고 잘 연결됬다고 착각하시게 된것으로 보입니다. 글로 적으니 잘 이해가 안되셨을수 있는데 아래 내용을 참고하시면 바로 이해되실겁니다.

https://www.logicbig.com/examples/spring-mvc/request-mapping/empty-handler-mapping.html

yoonsanghyuk avatar Apr 23 '21 02:04 yoonsanghyuk

저도 똑같은 증상으로 헛짓거리하다가 원인을 찾았습니다.

패키지 생성하실 때 static.js.app 으로 하지마시고 static\js\app 으로 만들어보세요

경로명이 잘못돼서 js파일을 인식하지 못하는 에러입니다.

minkyoungryul avatar Jun 28 '21 04:06 minkyoungryul

저도 같은 증상으로 한참을 헤메였네요. 파일도 지워보고 경로도 지워봐도 안되었는데, 왜인지는 잘 모르지만 현재 수정하고 있는 js파일이, 브라우저 캐시에 이미 올라간 파일을 대체하지 못하는 문제인거 같습니다. 크롬에서 F12 눌러서 Network -> index.js 파일이 보이는데 preview 에 소스를 보면 현재 수정된 내용이 반영이 안되어 있습니다. 그래서 브라우저 캐시 지우고 인텔리제이에서 File -> invalidate Cashes 하고나니 잘됩니다.

andrepasong avatar Sep 17 '21 07:09 andrepasong

저도 같은 증상으로 한참을 헤메였네요. 파일도 지워보고 경로도 지워봐도 안되었는데, 왜인지는 잘 모르지만 현재 수정하고 있는 js파일이, 브라우저 캐시에 이미 올라간 파일을 대체하지 못하는 문제인거 같습니다. 크롬에서 F12 눌러서 Network -> index.js 파일이 보이는데 preview 에 소스를 보면 현재 수정된 내용이 반영이 안되어 있습니다. 그래서 브라우저 캐시 지우고 인텔리제이에서 File -> invalidate Cashes 하고나니 잘됩니다.

와 감사합니다. 이게 저의 상황에서 해답이었어요. 실제로 저 또한 preview에 소스가 반영이 안되어 있네요. 등록은 잘 되는데 수정이랑 삭제는 왜 안될까 1시간 헤맸는데 님 덕분에 해결했습니다. 고맙습니다.

Griotold avatar Oct 22 '22 03:10 Griotold

저는 jquery 적용부분에서 오류가 나서 안되어서 최신버전 cdn 주소로 적용해서 해결했습니다.

cjrcjrdl1 avatar Feb 09 '23 11:02 cjrcjrdl1