मुझे <p:inputText>
की सत्यापन और इसकी सामग्री को अपडेट करने में कोई समस्या है।प्रमाणीकरण के बाद प्राइमफ़ेस जेएसएफ अपडेट विफल नहीं हुआ
मूल रूप से जब इनपुट टेक्स्ट सत्यापन विफल रहता है, तो यह कभी भी अपडेट नहीं होता है।
Facelet:
यहाँ स्पष्ट करने के लिए एक सरल उदाहरण है
!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:p="http://primefaces.org/ui">
<h:head>
</h:head>
<body>
<h1>Test</h1>
<h:form id="list" prependId="false">
<ul>
<li>Element 1 
<p:commandLink action="#{Test.assignElement}" update="detail_value">
<f:setPropertyActionListener target="#{Test.currentElement}" value="1" />
Assign
</p:commandLink>
</li>
<li>Element 2 
<p:commandLink action="#{Test.assignElement}" update="detail_value">
<f:setPropertyActionListener target="#{Test.currentElement}" value="2" />
Assign
</p:commandLink>
</li>
</ul>
</h:form>
<h:form id="detail" prependId="false">
<p:inputText value="#{Test.element}" id="detail_value" required="true" styleClass="#{Faces.messagesFor['detail_value'] ? 'border:1px solid red' : ''}">
<p:ajax event="blur" update="detail_value"></p:ajax>
</p:inputText>
</h:form>
</body>
</html>
टेस्ट सेम:
package com.easydevel.test;
public class Test {
private String currentElement;
private String element;
public String getCurrentElement() {
return currentElement;
}
public void setCurrentElement(String currentElement) {
this.currentElement = currentElement;
}
public String getElement() {
return element;
}
public void setElement(String element) {
this.element = element;
}
public String assignElement(){
setElement(getCurrentElement());
return "";
}
}
आप "तत्व" नीचे commandLinks पर क्लिक करते हैं रों इनपुट फ़ील्ड अपडेट हो जाता है, लेकिन जब कोई सत्यापन विफल रहता है (बस इनपुट टेक्स्ट को खाली छोड़ दें, और पृष्ठ के किसी भी अन्य भाग पर क्लिक करें), इनपुट की सीमा लाल हो जाती है। उसके बाद उपर्युक्त कमांड लिंक्स पर क्लिक करते समय इसे फिर से अपडेट नहीं किया जाता है।
कोई विचार?