GXT maxlength 설정
사용해 보면 알겠지만 GXT 2.2.5 버전에서 TextField 에 setMaxLength()를 사용하여 입력의 길이를 제한하려고 하면
입력제한은 되지 않고 Validation만 정한 숫자로 된다는 것을 알 수 있다. 즉 실제로 입력값 길이 제한이 아니라
validation 길이에만 적용이 되는 것이다.
역시 구글링의 결과 마침내 해결책을 찾아 내었다. 기존 TextField 클래스 중 몇몇 메소드를 overrride 하여 처리해준다.
searchKeywordTextField = new TextField<String>() {
@Override
public void setMaxLength(int m) {
super.setMaxLength(m);
if (rendered) {
getInputEl().setElementAttribute("maxLength", m);
}
}
@Override
protected void onRender(Element parent, int index) {
super.onRender(parent, index);
getInputEl().setElementAttribute("maxLength", getMaxLength());
}
};
p.s ) 여기서 Element 클래스는
import com.google.gwt.user.client.Element; 를 넣어준다.