<?xml version='1.0' encoding='UTF-8' ?>
Facelet Title
<f:facet name="header">Books And Authors....</f:facet>
<h:panelGrid columns="2" rules="cols">
<h:panelGrid id="pan1" columns="2">
<h:outputText value="Select Author"/>
<p:selectOneMenu value="#{bean.selectedAuthor}" converter="authorConverter">
<f:selectItems value="#{bean.authors}" var="author"
itemLabel="#{author.name}" itemValue="#{author}"/>
</p:selectOneMenu>
<h:outputText value="Select Books"/>
<p:selectManyMenu value="#{bean.selectedBook}" converter="bookConverter">
<f:selectItems value="#{bean.books}" var="books"
itemLabel="#{books.name}" itemValue="#{books}"/>
</p:selectManyMenu>
<p:commandButton value="Add" process="@form:pan1" update="@form:pan1" action="#{bean.add}" />
</h:panelGrid>
<h:panelGrid id="pan2" columns="2">
<h:outputText value="Enter Book name:"/>
<p:inputText value="#{bean.name}"/>
<p:commandButton value="Search" process="@form:pan2" update="@form:pan2" action="#{bean.search}"/>
<p:commandButton value="Inner Join" process="@form:pan2" update="@form:pan2" action="#{bean.innerJoin}"/>
<p:commandButton value="Outer Join" process="@form:pan2" update="@form:pan2" action="#{bean.outerJoin}"/>
<p:commandButton value="Fetch Join" process="@form:pan2" update="@form:pan2" action="#{bean.fetchJoin}"/>
<p:dataTable value="#{bean.results}" var="authors">
<p:column>
<f:facet name="header">Author Name</f:facet>
#{authors.name}
</p:column>
<p:column>
<f:facet name="header">Book Name</f:facet>
<p:dataTable value="#{authors.books}" var="book">
<p:column>
#{book.name}
</p:column>
</p:dataTable>
</p:column>
</p:dataTable>
</h:panelGrid>
</h:panelGrid>
</p:panel>
</h:form>
</h:body>
WARNING: JSF1087: Unable to generate Facelets error page as the response has already been committed. SEVERE: javax.faces.FacesException: PWC3999: Cannot create a session after the response has been committed
how can i solve this?