p:pickList 검증 실패 후 데이터를 채울 수 없음
1524 단어 validationFetchingp:pickList
문제 설명:
다이어로그에 input과pickList가 있습니다.input에 불법 데이터를 기입한 후 폼을 제출하여 검증에 실패합니다.다이어로그를 즉시 닫고 다시 열면pickList가 데이터를 채울 수 없습니다.
같은 질문은 이미 Stackoverflow에 등장했고 현재 공식 포럼에서 질문 해결 방법은 아직 유효한 대답을 얻지 못했다.
URL:here 다음은 제가 해결한 방법입니다. 좀 추하지만:
This is an old question, but I also encountered this issue recently, and now being helpless. Let's see the p:pickList:
<td>
<p:pickList id="customersList" iconOnly="true"
value="#{addEditUserController.customersList}" var="customer"
itemValue="#{customer.value}" itemLabel="#{customer.label}"/>
</td>
We know the [var="customer"] is an iterator, but when validation error happens, this var is assigned to String type, it's odd. When you close this popup then re-populate it again, you will get an error, messages like this: no property label(value) on type of String... the customer var now is a String, so it has no value nor label property.
For now, I use a tricky way, it won't work out always, it depends on your code: Assume that the value and label are unique, set customersList type of List String, customersList binds the label, find the value of the label when submit at the backend; Why this way can avoid re-populate exception, that's because the iterator is always type of String, no matter validation error occurs or not.
Hope this can help the need.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
NestJS 및 '클래스 유효성 검사기' 치트 시트NestJs와 class-validator는 API 응답을 검증하는 데 좋은 조합입니다. 둘 다 잘 문서화되어 있지만 일부 필요한 사용 사례는 개발자가 알아내야 한다고 가정하지 않습니다. 다음은 이러한 사례를 정의하...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.