Jsf 当我执行ajax命令按钮时,将删除字段

Jsf 当我执行ajax命令按钮时,将删除字段,jsf,primefaces,Jsf,Primefaces,我正在为我的开发者准备我的primefaces脚手架,我有一个问题。当我通过AJAX进行表单提交验证时,它会正确显示消息,但返回将删除表单中除第一个字段以外的所有字段。它几乎像是在返回ajax调用时出现了一些错误,导致第一个文本字段之后的所有内容都无法呈现。如果我使用一个标准的表单提交按钮,它工作得很好,但是仅仅使用ajax提交(这当然是我想要使用的)它的行为就很奇怪。有什么想法吗 我的index.xhtml页面。只需查找header=“New Person”,将其粘贴到展示区外即可 <?

我正在为我的开发者准备我的primefaces脚手架,我有一个问题。当我通过AJAX进行表单提交验证时,它会正确显示消息,但返回将删除表单中除第一个字段以外的所有字段。它几乎像是在返回ajax调用时出现了一些错误,导致第一个文本字段之后的所有内容都无法呈现。如果我使用一个标准的表单提交按钮,它工作得很好,但是仅仅使用ajax提交(这当然是我想要使用的)它的行为就很奇怪。有什么想法吗

我的index.xhtml页面。只需查找
header=“New Person”
,将其粘贴到展示区外即可

<?xml version="1.0" encoding="UTF-8"?>
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:p="http://primefaces.org/ui"
    xmlns:core="http://highmark.com/dtmcore"
    xmlns:inq="http://highmark.com/dtminq"
    template="templates/default.xhtml">

    <ui:define name="navDisplay">
        <ui:include src="navBar/mainNavBar.xhtml" />
    </ui:define>


    <ui:define name="content">

        <script type="text/javascript">
            $(document).ready(
                    function() {
                        jvers = $.fn.jquery;
                        $("#testJQueryLoaded").text(
                                "jQuery Loaded Correctly version " + jvers);
                    });
        </script>
        <div class="row clearfix">
            <div class="col-md-12 column">
                <div class="row clearfix">
                    <div class="col-md-12">
                        <div class="jumbotron">
                            <h2>Inquiry App System</h2>
                            <p>This page right now is used primarily for testing controls
                                and layout</p>
                            <p></p>
                            <span id="testJQueryLoaded"></span> <br />
                            <h3>Your application can run on:</h3>
                            <h:graphicImage library="gfx" name="dualbrand_as7eap.png" />

                        </div>
                    </div>
                </div>

                <div class="row clearfix">
                    <div class="col-md-12">
                        <div class="well">
                            <h:form id="form">  

    <p:panel id="panel" header="New Person" style="margin-bottom:10px;">  
        <p:messages id="messages" />  
        <h:panelGrid columns="3">  
            <h:outputLabel for="firstname" value="Firstname: *" />  
            <p:inputText id="firstname"   
                value="#{pprBean.firstname}" required="true" label="Firstname">  
                <f:validateLength minimum="2" />  
            </p:inputText>  
            <p:message for="firstname" />  

            <h:outputLabel for="surname" value="Surname: *" />  
            <p:inputText id="surname"   
                value="#{pprBean.surname}" required="true" label="Surname"/>  
            <p:message for="surname" />  
        </h:panelGrid>  
    </p:panel>  

    <p:commandButton value="Ajax Submit" update="panel,display" id="ajax"  
             actionListener="#{pprBean.savePerson}" styleClass="ui-priority-primary"/>  

    <p:commandButton value="Non-Ajax Submit" actionListener="#{pprBean.savePerson}"   
            ajax="false" />  

    <p:commandButton value="With Icon" actionListener="#{pprBean.savePerson}" id="withIcon"   
            update="panel,display" icon="ui-icon-disk" />  

    <p:commandButton actionListener="#{pprBean.savePerson}" update="panel,display" id="iconOnly"  
            icon="ui-icon-disk" title="Icon Only"/>  

    <p:commandButton value="Disabled" disabled="true" id="disabled" />  

    <p:panel id="display" header="Information" style="margin-top:10px;">  
        <h:panelGrid columns="2">  
            <h:outputText value="Firstname: " />  
            <h:outputText value="#{pprBean.firstname}" />  

            <h:outputText value="Surname: " />  
            <h:outputText value="#{pprBean.surname}" />  
        </h:panelGrid>  
    </p:panel>  

</h:form>  
                        </div>
                    </div>
                </div>

                <div class="row clearfix">
                    <div class="col-md-6">
                        <ui:include src="modules/buttonExample.xhtml" />
                    </div>
                    <div class="col-md-6">
                        <p:outputPanel id="displayHotkey">
                            <p:outputLabel value="Hotkey Result" />
                            <br />
                            <h:outputText value="#{hotkeyController.keyText}"
                                rendered="#{not empty hotkeyController.keyText}" />
                        </p:outputPanel>
                    </div>
                </div>

                <div class="row clearfix">
                    <div class="col-md-6">
                        <ui:include src="modules/datePickerExample.xhtml" />
                    </div>
                    <div class="col-md-6"></div>
                </div>

                <div class="row clearfix">
                    <div class="col-md-12">
                        <div class="well">
                            <h2>Members</h2>
                            <br />
                            <h:panelGroup rendered="#{empty members}">
                                <em>No registered members.</em>
                            </h:panelGroup>
                            <p:dataTable id="dataTable" var="_member" value="#{members}"
                                rendered="#{not empty members}"
                                styleClass="table table-striped table-bordered">
                                <p:column>
                                    <f:facet name="header">Id</f:facet>
                #{_member.id}
                </p:column>
                                <p:column>
                                    <f:facet name="header">Name</f:facet>
                #{_member.name}
                </p:column>
                                <p:column>
                                    <f:facet name="header">Email</f:facet>
                #{_member.email}
                </p:column>
                                <p:column>
                                    <f:facet name="header">Phone #</f:facet>
                #{_member.phoneNumber}
                </p:column>
                                <p:column>
                                    <f:facet name="header">REST URL</f:facet>
                                    <a href="#{request.contextPath}/rest/members/#{_member.id}">/rest/members/#{_member.id}</a>
                                </p:column>
                                <f:facet name="footer">
            REST URL for all members: <a
                                        href="#{request.contextPath}/rest/members">/rest/members</a>
                                </f:facet>
                            </p:dataTable>
                        </div>
                    </div>
                </div>
            </div>

        </div>

    </ui:define>

    <ui:define name="hotkeyMenu">
        <ui:include src="hotkeyBar/hotkeyExample.xhtml" />
    </ui:define>
</ui:composition>

$(文件)。准备好了吗(
函数(){
jvers=$.fn.jquery;
$(“#testJQueryLoaded”).text(
“jQuery已正确加载版本”+jvers);
});
查询应用系统
此页面现在主要用于测试控件
和布局


您的应用程序可以运行在:
成员
没有注册会员。 身份证件 #{{u member.id} 名称 #{{u member.name} 电子邮件 #{{u member.email} 电话# #{{u成员.电话号码} RESTURL 所有成员的REST URL:
和我的模板文件(到目前为止,工作正在进行中)


#{app.applicationName}
#{app.applicationName}
身体{
填充顶部:60px;
填充底部:40px;
}
.侧边栏导航{
填充:9px0;
}
[此处插入导航显示]
[模板内容将插入此处]
[此处显示热键垂直条。]
康科迪亚岩石联合会

我的背豆

import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;

import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.context.FacesContext;
import javax.faces.event.ActionEvent;

import org.primefaces.context.RequestContext;

@ManagedBean(name = "pprBean")
@SessionScoped
public class PPRBean implements Serializable {

    private String firstname;

    private String surname;

    private String city;

    private String suburb;

    private Map<String, String> cities = new HashMap<String, String>();

    private Map<String, Map<String, String>> suburbsData = new HashMap<String, Map<String, String>>();

    private Map<String, String> suburbs = new HashMap<String, String>();

    private Map<String, String> rooms = new HashMap<String, String>();

    private Map<String, Map<String, String>> itemsData = new HashMap<String, Map<String, String>>();

    private Map<String, String> items = new HashMap<String, String>();

    private String room;

    private String item;

    private String[] selectedCities;

    public PPRBean() {
        cities.put("Istanbul", "Istanbul");
        cities.put("Ankara", "Ankara");
        cities.put("Izmir", "Izmir");

        Map<String, String> suburbsIstanbul = new HashMap<String, String>();
        suburbsIstanbul.put("Kadikoy", "Kadikoy");
        suburbsIstanbul.put("Levent", "Levent");
        suburbsIstanbul.put("Cengelkoy", "Cengelkoy");

        Map<String, String> suburbsAnkara = new HashMap<String, String>();
        suburbsAnkara.put("Kecioren", "Kecioren");
        suburbsAnkara.put("Cankaya", "Cankaya");
        suburbsAnkara.put("Yenimahalle", "Yenimahalle");

        Map<String, String> suburbsIzmir = new HashMap<String, String>();
        suburbsIzmir.put("Cesme", "Cesme");
        suburbsIzmir.put("Gumuldur", "Gumuldur");
        suburbsIzmir.put("Foca", "Foca");

        suburbsData.put("Istanbul", suburbsIstanbul);
        suburbsData.put("Ankara", suburbsAnkara);
        suburbsData.put("Izmir", suburbsIzmir);

        rooms.put("Living Room", "Living Room");
        rooms.put("Kitchen", "Kitchen");
        rooms.put("Bedroom", "Bedroom");

        Map<String, String> livingRoomItems = new HashMap<String, String>();
        livingRoomItems.put("Sofa", "Sofa");
        livingRoomItems.put("Armchair", "Armchair");
        livingRoomItems.put("Coffee Table", "Coffee Table");

        Map<String, String> kitchenItems = new HashMap<String, String>();
        kitchenItems.put("Refrigirator", "Refrigirator");
        kitchenItems.put("Dishwasher", "Dishwasher");
        kitchenItems.put("Oven", "Oven");

        Map<String, String> bedroomItems = new HashMap<String, String>();
        bedroomItems.put("Bed", "Bed");
        bedroomItems.put("Wardrobe", "Wardrobe");
        bedroomItems.put("Drawer Chest", "Drawer Chest");

        itemsData.put("Living Room", livingRoomItems);
        itemsData.put("Kitchen", kitchenItems);
        itemsData.put("Bedroom", bedroomItems);
    }

    public String getFirstname() {
        return firstname;
    }

    public void setFirstname(String firstname) {
        this.firstname = firstname;
    }

    public String getSurname() {
        return surname;
    }

    public void setSurname(String surname) {
        this.surname = surname;
    }

    public void savePerson(ActionEvent actionEvent) {
        FacesContext.getCurrentInstance().addMessage(null, new FacesMessage("You've registered"));
    }

    public String getCity() {
        return city;
    }

    public void setCity(String city) {
        this.city = city;
    }

    public String getSuburb() {
        return suburb;
    }

    public void setSuburb(String suburb) {
        this.suburb = suburb;
    }

    public Map<String, String> getCities() {
        return cities;
    }

    public void setCities(Map<String, String> cities) {
        this.cities = cities;
    }

    public Map<String, Map<String, String>> getSuburbsData() {
        return suburbsData;
    }

    public void setSuburbsData(Map<String, Map<String, String>> suburbsData) {
        this.suburbsData = suburbsData;
    }

    public Map<String, String> getSuburbs() {
        return suburbs;
    }

    public void setSuburbs(Map<String, String> suburbs) {
        this.suburbs = suburbs;
    }

    public void handleCityChange() {
        if (city != null && !city.equals(""))
            suburbs = suburbsData.get(city);
        else
            suburbs = new HashMap<String, String>();
    }

    public void handleRoomChange(ActionEvent actionEvent) {
        if (room != null && !room.equals(""))
            items = itemsData.get(room);
        else
            items = new HashMap<String, String>();
    }

    private boolean checked;

    public boolean isChecked() {
        return checked;
    }

    public void setChecked(boolean checked) {
        this.checked = checked;
    }

    public String[] getSelectedCities() {
        return selectedCities;
    }

    public void setSelectedCities(String[] selectedCities) {
        this.selectedCities = selectedCities;
    }

    public String getSelectedCitiesAsString() {
        if (selectedCities == null)
            return "";

        StringBuffer buffer = new StringBuffer();

        for (String city : selectedCities) {
            buffer.append("(");
            buffer.append(city);
            buffer.append(")");
        }

        return buffer.toString();
    }

    public Map<String, String> getRooms() {
        return rooms;
    }

    public void setRooms(Map<String, String> rooms) {
        this.rooms = rooms;
    }

    public Map<String, Map<String, String>> getItemsData() {
        return itemsData;
    }

    public void setItemsData(Map<String, Map<String, String>> itemsData) {
        this.itemsData = itemsData;
    }

    public Map<String, String> getItems() {
        return items;
    }

    public void setItems(Map<String, String> items) {
        this.items = items;
    }

    public String getRoom() {
        return room;
    }

    public void setRoom(String room) {
        this.room = room;
    }

    public String getItem() {
        return item;
    }

    public void setItem(String item) {
        this.item = item;
    }

    public void displayLocation() {
        FacesMessage msg = new FacesMessage("Selected", "City:" + city + ", Suburb: " + suburb);

        FacesContext.getCurrentInstance().addMessage(null, msg);
    }

    public void reset() {
        RequestContext.getCurrentInstance().reset("form:panel");
    }

    public void resetFail() {
        this.firstname = null;
        this.surname = null;

        FacesMessage msg = new FacesMessage("Model reset, but it won't work.");
        FacesContext.getCurrentInstance().addMessage(null, msg);
    }
}
import java.io.Serializable;
导入java.util.HashMap;
导入java.util.Map;
导入javax.faces.application.FacesMessage;
导入javax.faces.bean.ManagedBean;
导入javax.faces.bean.SessionScoped;
导入javax.faces.context.FacesContext;
导入javax.faces.event.ActionEvent;
导入org.primefaces.context.RequestContext;
@ManagedBean(name=“pprBean”)
@会议范围
公共类PPRBean实现了可序列化{
私有字符串名;
私家姓;
私人城市;
私人住宅;
私有地图城市=新HashMap();
私有映射suburbsData=newhashmap();
私有映射=新HashMap();
private Map rooms=新建HashMap();
private-Map-itemsData=new-HashMap();
私有映射项=新HashMap();
私人弦乐室;
私有字符串项;
私有字符串[]所选城市;
公共bean(){
城市。put(“伊斯坦布尔”、“伊斯坦布尔”);
城市。put(“安卡拉”、“安卡拉”);
城市。put(“伊兹密尔”、“伊兹密尔”);
Map suburbsIstanbul=新HashMap();
郊区郊区put(“卡迪科伊”、“卡迪科伊”);
郊区住宅区(“Levent”、“Levent”);
城市郊区(Cengelkoy、Cengelkoy);
Map suburbsAnkara=新HashMap();
郊区Sankara.put(“Kecioren”、“Kecioren”);
郊区桑卡拉普特(“坎卡亚”、“坎卡亚”);
郊区Sankara.put(“Yenimahalle”、“Yenimahalle”);
Map suburbsIzmir=new HashMap();
郊区化(“塞斯梅”、“塞斯梅”);
郊区Sizmir.put(“Gumuldur”,
import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;

import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.context.FacesContext;
import javax.faces.event.ActionEvent;

import org.primefaces.context.RequestContext;

@ManagedBean(name = "pprBean")
@SessionScoped
public class PPRBean implements Serializable {

    private String firstname;

    private String surname;

    private String city;

    private String suburb;

    private Map<String, String> cities = new HashMap<String, String>();

    private Map<String, Map<String, String>> suburbsData = new HashMap<String, Map<String, String>>();

    private Map<String, String> suburbs = new HashMap<String, String>();

    private Map<String, String> rooms = new HashMap<String, String>();

    private Map<String, Map<String, String>> itemsData = new HashMap<String, Map<String, String>>();

    private Map<String, String> items = new HashMap<String, String>();

    private String room;

    private String item;

    private String[] selectedCities;

    public PPRBean() {
        cities.put("Istanbul", "Istanbul");
        cities.put("Ankara", "Ankara");
        cities.put("Izmir", "Izmir");

        Map<String, String> suburbsIstanbul = new HashMap<String, String>();
        suburbsIstanbul.put("Kadikoy", "Kadikoy");
        suburbsIstanbul.put("Levent", "Levent");
        suburbsIstanbul.put("Cengelkoy", "Cengelkoy");

        Map<String, String> suburbsAnkara = new HashMap<String, String>();
        suburbsAnkara.put("Kecioren", "Kecioren");
        suburbsAnkara.put("Cankaya", "Cankaya");
        suburbsAnkara.put("Yenimahalle", "Yenimahalle");

        Map<String, String> suburbsIzmir = new HashMap<String, String>();
        suburbsIzmir.put("Cesme", "Cesme");
        suburbsIzmir.put("Gumuldur", "Gumuldur");
        suburbsIzmir.put("Foca", "Foca");

        suburbsData.put("Istanbul", suburbsIstanbul);
        suburbsData.put("Ankara", suburbsAnkara);
        suburbsData.put("Izmir", suburbsIzmir);

        rooms.put("Living Room", "Living Room");
        rooms.put("Kitchen", "Kitchen");
        rooms.put("Bedroom", "Bedroom");

        Map<String, String> livingRoomItems = new HashMap<String, String>();
        livingRoomItems.put("Sofa", "Sofa");
        livingRoomItems.put("Armchair", "Armchair");
        livingRoomItems.put("Coffee Table", "Coffee Table");

        Map<String, String> kitchenItems = new HashMap<String, String>();
        kitchenItems.put("Refrigirator", "Refrigirator");
        kitchenItems.put("Dishwasher", "Dishwasher");
        kitchenItems.put("Oven", "Oven");

        Map<String, String> bedroomItems = new HashMap<String, String>();
        bedroomItems.put("Bed", "Bed");
        bedroomItems.put("Wardrobe", "Wardrobe");
        bedroomItems.put("Drawer Chest", "Drawer Chest");

        itemsData.put("Living Room", livingRoomItems);
        itemsData.put("Kitchen", kitchenItems);
        itemsData.put("Bedroom", bedroomItems);
    }

    public String getFirstname() {
        return firstname;
    }

    public void setFirstname(String firstname) {
        this.firstname = firstname;
    }

    public String getSurname() {
        return surname;
    }

    public void setSurname(String surname) {
        this.surname = surname;
    }

    public void savePerson(ActionEvent actionEvent) {
        FacesContext.getCurrentInstance().addMessage(null, new FacesMessage("You've registered"));
    }

    public String getCity() {
        return city;
    }

    public void setCity(String city) {
        this.city = city;
    }

    public String getSuburb() {
        return suburb;
    }

    public void setSuburb(String suburb) {
        this.suburb = suburb;
    }

    public Map<String, String> getCities() {
        return cities;
    }

    public void setCities(Map<String, String> cities) {
        this.cities = cities;
    }

    public Map<String, Map<String, String>> getSuburbsData() {
        return suburbsData;
    }

    public void setSuburbsData(Map<String, Map<String, String>> suburbsData) {
        this.suburbsData = suburbsData;
    }

    public Map<String, String> getSuburbs() {
        return suburbs;
    }

    public void setSuburbs(Map<String, String> suburbs) {
        this.suburbs = suburbs;
    }

    public void handleCityChange() {
        if (city != null && !city.equals(""))
            suburbs = suburbsData.get(city);
        else
            suburbs = new HashMap<String, String>();
    }

    public void handleRoomChange(ActionEvent actionEvent) {
        if (room != null && !room.equals(""))
            items = itemsData.get(room);
        else
            items = new HashMap<String, String>();
    }

    private boolean checked;

    public boolean isChecked() {
        return checked;
    }

    public void setChecked(boolean checked) {
        this.checked = checked;
    }

    public String[] getSelectedCities() {
        return selectedCities;
    }

    public void setSelectedCities(String[] selectedCities) {
        this.selectedCities = selectedCities;
    }

    public String getSelectedCitiesAsString() {
        if (selectedCities == null)
            return "";

        StringBuffer buffer = new StringBuffer();

        for (String city : selectedCities) {
            buffer.append("(");
            buffer.append(city);
            buffer.append(")");
        }

        return buffer.toString();
    }

    public Map<String, String> getRooms() {
        return rooms;
    }

    public void setRooms(Map<String, String> rooms) {
        this.rooms = rooms;
    }

    public Map<String, Map<String, String>> getItemsData() {
        return itemsData;
    }

    public void setItemsData(Map<String, Map<String, String>> itemsData) {
        this.itemsData = itemsData;
    }

    public Map<String, String> getItems() {
        return items;
    }

    public void setItems(Map<String, String> items) {
        this.items = items;
    }

    public String getRoom() {
        return room;
    }

    public void setRoom(String room) {
        this.room = room;
    }

    public String getItem() {
        return item;
    }

    public void setItem(String item) {
        this.item = item;
    }

    public void displayLocation() {
        FacesMessage msg = new FacesMessage("Selected", "City:" + city + ", Suburb: " + suburb);

        FacesContext.getCurrentInstance().addMessage(null, msg);
    }

    public void reset() {
        RequestContext.getCurrentInstance().reset("form:panel");
    }

    public void resetFail() {
        this.firstname = null;
        this.surname = null;

        FacesMessage msg = new FacesMessage("Model reset, but it won't work.");
        FacesContext.getCurrentInstance().addMessage(null, msg);
    }
}
<?xml version="1.0" encoding="utf-8"?><partial-response><changes><update id="form:panel"><![CDATA[<div id="form:panel" class="ui-panel ui-widget ui-widget-content ui-corner-all" style="margin-bottom:10px;" data-widget="widget_form_panel"><div id="form:panel_header" class="ui-panel-titlebar ui-widget-header ui-helper-clearfix ui-corner-all"><span class="ui-panel-title">New Person</span></div><div id="form:panel_content" class="ui-panel-content ui-widget-content"><div id="form:messages" class="ui-messages ui-widget" aria-live="polite"><div class="ui-messages-error ui-corner-all"><span class="ui-messages-error-icon"></span><ul><li><span class="ui-messages-error-summary">Firstname: Validation Error: Value is required.</span></li><li><span class="ui-messages-error-summary">Surname: Validation Error: Value is required.</span></li></ul></div></div><table><tbody>
<tr><td><label for="form:firstname">Firstname: *</label></td><td><input id="form:firstname" name="form:firstname" type="text" value="" class="ui-inputfield ui-inputtext ui-widget ui-state-default ui-corner-all ui-state-error" /><script id="form:firstname_s" type="text/javascript">//<![CDATA[ 
PrimeFaces.cw('InputText','widget_form_firstname',{id:'form:firstname'});
//]]><![CDATA[]]]]><![CDATA[></script></td><td><div id="form:j_id679843775_7ac2197c" aria-live="polite" class="ui-message ui-message-error ui-widget ui-corner-all"><span class="ui-message-error-icon"></span><span class="ui-message-error-detail">Firstname: Validation Error: Value is required.</span></div></td></tr>
<tr><td><label for="form:surname">Surname: *</label></td><td><input id="form:surname" name="form:surname" type="text" value="" class="ui-inputfield ui-inputtext ui-widget ui-state-default ui-corner-all ui-state-error" /><script id="form:surname_s" type="text/javascript">//<![CDATA[ 
PrimeFaces.cw('InputText','widget_form_surname',{id:'form:surname'});
//]]><![CDATA[]]]]><![CDATA[></script></td><td><div id="form:j_id679843775_7ac21953" aria-live="polite" class="ui-message ui-message-error ui-widget ui-corner-all"><span class="ui-message-error-icon"></span><span class="ui-message-error-detail">Surname: Validation Error: Value is required.</span></div></td></tr>
</tbody>
</table></div></div><script id="form:panel_s" type="text/javascript">//<![CDATA[ 
PrimeFaces.cw('Panel','widget_form_panel',{id:'form:panel'});
//]]><![CDATA[]]]]><![CDATA[></script>]]></update><update id="form:display"><![CDATA[<div id="form:display" class="ui-panel ui-widget ui-widget-content ui-corner-all" style="margin-top:10px;" data-widget="widget_form_display"><div id="form:display_header" class="ui-panel-titlebar ui-widget-header ui-helper-clearfix ui-corner-all"><span class="ui-panel-title">Information</span></div><div id="form:display_content" class="ui-panel-content ui-widget-content"><table><tbody>
<tr><td>Firstname: </td><td></td></tr>
<tr><td>Surname: </td><td></td></tr>
</tbody>
</table></div></div><script id="form:display_s" type="text/javascript">//<![CDATA[ 
PrimeFaces.cw('Panel','widget_form_display',{id:'form:display'});
//]]><![CDATA[]]]]><![CDATA[></script>]]></update><update id="javax.faces.ViewState"><![CDATA[zSrt/a8fGazYeKThaR1kLCIZ9H+Byig1+R3m5/RMMwuGDQUZXOPr/aj4D7YpgH6NUcb5jAudj1QUNy6WMLUaVXYQrGkvy6fxpzBhHuvzVejCEMDhFVUj8d7NHCI=]]></update><extension ln="primefaces" type="args">{"validationFailed":true}</extension></changes></partial-response>
<p:commandButton value="Ajax Submit" update="panel,display" id="ajax"  
         actionListener="#{pprBean.savePerson}" styleClass="ui-priority-primary"
 process="panel,display,@this"/>