I have a p:inputTextarea and I need the value of it while processing the form. It turned out that every time I submit the form I get all the values except the one from the textarea. #{xyzUI.description} is a String object with regular getters and setters. 
<ui:composition>
    <h:form id="form1">
        <p:panel rendered="...">
            <p:panel id="formPanel">
                <p:panelGrid columns="2" cellpadding="5">
                    <!-- other form elements -->
                    <p:outputLabel>Description:</p:outputLabel>
                    <p:inputTextarea value="#{xyzUI.description}" style="width: 350px;" counter="display" counterTemplate="{0} characters remaining" maxlength="2000" autoResize="true" rows="4" />
                    <h:panelGroup />
                    <h:outputText id="display" />
                </p:panelGrid>
                <p:commandButton rendered="#{not xyzUI.noChange}" action="#{xyzUI.submitForm}" update="formPanel" ajax="true" value="Apply" >
                    <p:ajax update="formPanel"></p:ajax>
                </p:commandButton>
            </p:panel>
        </p:panel>
    </h:form>
<ui:composition>
In my backing bean the value is always "". I don't know what's wrong.
public void submitForm()
{
    ...
    tmp.setDescription(description); // String is always "" while debugging
    myList.add(tmp);
    RequestContext.getCurrentInstance().update("content");
}
 
    