사용자 삽입 이미지매우 쉬운 벨리데이션 js 파일을 사용해서 AJAX를 사용한 벨리데이션을 거의 날로 먹었습니다.

하지만 거의 날로 먹었다는 말을 괜히 한 것이 아니였습니다. JSP 코드가 다음과 같이 정신없어졌거든요.
사용자 삽입 이미지
그래서 태그파일을 만들기로 작심 했습니다. 그리고 만들었었습니다.
사용자 삽입 이미지
저런 저런...input의 type마다 태그를 하나씩 만들고야 말았습니다. spring form 태그들 중에 input엘리먼트에 type 속성이 없었기 때문에 저런 일이 발생했습니다.

하지만 다른 방법이 떠올랐습니다. type을 받아 오고 안에서 jstl로 그때 그때 적당한 spring form태그를 사용하도록 코딩하면 될 것 같았습니다. 그리고는 코딩에 들어갔습니다.
사용자 삽입 이미지
결과는 성공적이였습니다.
[#M_ more.. | less.. |

<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core_rt"%>

<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"
%>

<%@ attribute name="label" required="true"%>

<%@ attribute name="name" required="true"%>

<%@ attribute name="id" required="true"%>

<%@ attribute name="clazz" required="false"%>

<%@ attribute name="title" required="true"%>

<%@ attribute name="type" required="false"%>

 

<!-- default
type : input -->

<c:set var="typeValue" value="input"
/>

<c:if test="${type != null}"><c:set var="typeValue" value="${type}" /></c:if>

 

<div class="form-row">

       <div class="field-label"><label for="${id}">${label}</label>:</div>

       <div class="field-widget">

       <c:choose>

             <c:when test="${typeValue
== 'input'}
">

                    <form:input
path="${name}" id="${id}" cssClass="${clazz}" title="${title}" />

             </c:when>

             <c:when test="${typeValue
== 'password'}
">

                    <form:password
path="${name}" id="${id}" cssClass="${clazz}" title="${title}" />

             </c:when>

             <c:when test="${typeValue
== 'textarea'}
">

                    <form:textarea
path="${name}" id="${id}" cssClass="${clazz}" title="${title}" />

             </c:when>

       </c:choose>

       </div>

</div>

_M#]
태그파일을 적용한 JSP 코드는 이전보다 훨~씬 간단해 졌습니다.
사용자 삽입 이미지
태그파일 귿!!! 멋쟁이!! 태그파일 갈쳐주신 물개 선생님도 멋쟁이!!