티스토리 뷰

자바스크립트 파일에서 적절한 에러메세지를 보여주기 위해서는 위와 같이 label.properties라는 파일을 만들어 줘야한다


만들고 나서 label.properties파일에 오른쪽버튼을 누르고 properties 들어가 오른쪽 그림처럼 UTF-8 설정해주어야지 한글이 적절하게 출력된다.

 

그다음은 이것을 사용하는 방법에 대해서 얘기하겠다.  우선은 스프링 설정파일에서 설정을 해주어야 한다


그래야 스프링이 label.properties 위치를 있고, 그에따라 적절하게 에러메세지를 출력할수 있게 된다. 아래 내용은 servlet-context.xml 있는 내용이다.  


메시지 프로퍼티 파일은 여러 개를 설정할수 있다. 또한 한글을 출력하기 위해 utf-8 설정해야한다.

 

<beans:bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">

<beans:property name="basenames">

<beans:list>

<beans:value>classpath:/message/label</beans:value>

</beans:list>

</beans:property>

<beans:property name="defaultEncoding" value="UTF-8"/>

</beans:bean>


내용은 login.jsp 내용이다. 보면 <form:errors/>라는 태그를 볼수 있는데, 이것의 의미는 commandName으로 들어와있는 userDto 자체에 에러코드를 넣겠다는 뜻이다


<form:errors path="필드명"/> 이런식으로 써있으면 커맨드 객체에 있는 필드에 설정돼있는 에러코드별 에러메시지를 출력하게 되는데

Path 없으면 커맨드 객체 자체에 설정돼있는 에러메시지를 출력하겠다는 뜻이다.

 

로그인 실패시 서비스 객체에서 컨트롤러로 예외를 던지고 컨트롤러는 예외를 받아서 IDPASSNOTMATCH라는 에러코드를 설정


다시 로그인을 받기 위해서 return "login" 하게 된다


그렇게 되면 다시 제어가 login.jsp 넘어가고 처음에는 에러코드가 설정돼있지 않았지만 


이제는 컨트롤러 에서 에러코드가 설정되어서 그에따라 폼태그에 있는 errors부분에 에러메세지가 한글로 출력이 되게 된다.

 

 

댓글
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함