4 Replies Latest reply on Apr 22, 2009 6:35 PM by Karl Beowulph

    Problem with @In and @Out (value stays null)

    Karl Beowulph Newbie
      Hello.  I keep getting null-pointer exceptions on an @Out parameter.  I've tried putting create=true on the @In and creating it manually on the start() method when I initialize the SFSB, but I still have the same error.

      What I'm finding very odd is that, with the code below, the SFSB is being destroyed immediately on the page being loaded.

      Any suggestions?

      ** SFSB **
      @Stateful
      @Name("editOutage")
      @Scope(ScopeType.CONVERSATION)
      public class EditOutageBean implements EditOutage
      {
          @Logger private Log log;

          @In StatusMessages statusMessages;

          @PersistenceContext(type = PersistenceContextType.EXTENDED)
          protected EntityManager entityManager;
         
          @RequestParameter protected Long outageId;
         
          @In(required=false, create=true)
          @Out
          private Outage _outage;
         
          @DataModel
          private List<EquipmentConditionPlan> equipmentConditionPlans;

          @DataModelSelection
          private EquipmentConditionPlan ecp;
         
           public void addNewEcp() {
                if (equipmentConditionPlans == null){
                     log.info("Plans list is null, instantiating");
                     equipmentConditionPlans = new ArrayList<EquipmentConditionPlan>();
                }
                log.info("Adding to the ecpList");
                equipmentConditionPlans.add(new EquipmentConditionPlan());
                log.info("Finished adding to the ecpList");
           }
           
           @SuppressWarnings("unchecked")
           public void load() {
                log.info("Load called");
                if (outageId == null && _outage == null){ // New outage
                     start();
                     _outage = new Outage();

                } //Existing outage
                else if (outageId != null && (_outage == null || _outage.getId() != outageId)){
                     start();
                     
                     log.info("Attempting to load outage "+outageId);
                     _outage = entityManager.find(Outage.class, outageId);
                     
                     if (_outage == null){
                          log.info("Outage #0 is not currently being managed, fetching", outageId);
                          _outage = (Outage) entityManager.createQuery(
                                    "from Outage o join fetch o.EquipmentConditionPlan"
                                    + " where id = :id")
                                    .setParameter("id", outageId)
                                    .getSingleResult();
                     }
                     
                     if (_outage == null){
                          log.info("Still null?");
                     }
                     
                     equipmentConditionPlans = (List<EquipmentConditionPlan>) _outage.getEquipmentConditionPlans();
                }
           }

           @Begin
           public void start() {
                log.info("Starting the conversation");
                
                if (_outage == null){
                     log.info("Outage is null?");
                     _outage = new Outage();
                }
                _outage.setCode("Hello world");
                
                //Sometimes the entity manager starts up null.  No idea why.
                if (entityManager == null)
                     log.info("Null EM right away?!");
           }

           public void saveOutage() {
                log.info("Outage code "+_outage.getCode());
                //Saving the outage
                log.info("Trying to save outage #0 with #1 ecps",
                          _outage.getId(), _outage.getEquipmentConditionPlans().size());
                entityManager.persist(_outage);
                
                log.info("Adding ecp's to outage");
                for (EquipmentConditionPlan e:equipmentConditionPlans){
                     
                     log.info("Comparing outages...");
                     if (e.getOutage() == null || !e.getOutage().equals(_outage))
                          e.setOutage(_outage);
                     
                     if (!_outage.getEquipmentConditionPlans().contains(e)){
                          log.info("Adding ecp with equipment ", e.getEquipment().getName());
                          _outage.addEquipmentConditionPlan(e);
                     }
                     
                     entityManager.persist(e);
                }
                end();
           }
           
           @SuppressWarnings("unchecked")
           public void fetchEquipment() {
                log.info("Called fetch matching equipment");
                
                log.info("(Fetch) Outage code "+_outage.getCode());
                if (_outage.getCode() == null)
                     _outage.setCode("Forced");
                
                if (ecp == null)
                     return;
                
                if (ecp.getStation() == null || ecp.getStation().length() == 0
                          || ecp.getEqpType() == null || ecp.getEqpType().length() == 0){
                     return;
                }
                
                ecp.setMatchingEquipment((List<Equipment>) entityManager.createQuery(
                     "from Equipment e where station = :station and type = :type")
                     .setParameter("station", ecp.getStation())
                     .setParameter("type", ecp.getEqpType())
                     .getResultList())
                     ;
                
                log.info("There are #0 matching pieces of equipment", ecp.getMatchingEquipment().size());
           }
                
          @Destroy @Remove
          public void destroy() {
               log.info("Destroying the SFSB");
          }

          @End
           public void end() {
               log.info("Ending the conversation");
          }
      }

      ** XHTML **
      <!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
      <ui:composition xmlns="http://www.w3.org/1999/xhtml"
          xmlns:s="http://jboss.com/products/seam/taglib"
          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:rich="http://richfaces.org/rich"
          template="layout/template.xhtml"
          xmlns:a4j="http://richfaces.org/a4j">

      <ui:define name="body">

          <h:form id="outageForm">

              <rich:panel>
                  <f:facet name="header">Outage - 26</f:facet>
                     <s:decorate template="layout/edit.xhtml">
                      <ui:define name="label">Id</ui:define>
                      #{_outage.id}
                  </s:decorate>
                
                     <s:decorate template="layout/edit.xhtml">
                      <ui:define name="label">Code</ui:define>
                      #{_outage.code}
                  </s:decorate>
                
                     <s:decorate template="layout/edit.xhtml">
                      <ui:define name="label">Code</ui:define>
                      <h:selectOneMenu value="#{_outage.code}">
                               <f:selectItem itemValue="Planned"/>
                               <f:selectItem itemValue="Forced"/>
                          </h:selectOneMenu>
                  </s:decorate>
                
                  <div style="clear:both"/>
                  <rich:panel id="EcpList">
                        <f:facet name="header">ECP</f:facet>
                          <a4j:repeat value ="#{equipmentConditionPlans}" var="ecp">
                               <s:decorate template="layout/edit.xhtml">
                                    <ui:define name="label">Id</ui:define>
                                    #{ecp.id}
                            </s:decorate>
                               <s:decorate template="layout/edit.xhtml">
                                    <ui:define name="label">Derated</ui:define>
                                <h:inputText required="true" value="#{ecp.deratedToMw}" />
                            </s:decorate>
                            
                            <s:decorate template="layout/edit.xhtml">
                                <ui:define name="label">Station</ui:define>
                                <h:selectOneMenu value="#{ecp.station}">
                                     <f:selectItem itemValue=""/>
                                         <f:selectItem itemValue="East Windsor CGS"/>
                                         <f:selectItem itemValue="Kakabeka"/>
                                         <f:selectItem itemValue="Newton"/>
                                         <a4j:support event="onchange" action="#{editOutage.fetchEquipment()}"
                                              reRender ="ecpEquip"/>
                                    </h:selectOneMenu>
                            </s:decorate>
                            
                               <s:decorate id="typeField" template="layout/edit.xhtml">
                                <ui:define name="label">Type</ui:define>
                                <h:selectOneMenu value="#{ecp.eqpType}">
                                     <f:selectItem itemValue=""/>
                                         <f:selectItem itemValue="Generator"/>
                                         <f:selectItem itemValue="Transformer"/>
                                         <f:selectItem itemValue="Load"/>
                                         <a4j:support event="onchange" action="#{editOutage.fetchEquipment()}"
                                              reRender ="ecpEquip"/>
                                    </h:selectOneMenu>
                            </s:decorate>
                                             
                            <s:decorate template="layout/edit.xhtml">
                                <ui:define name="label">Equipment</ui:define>
                                <h:selectOneMenu id="ecpEquip" value="#{ecp.equipment}">
                                     <s:selectItems value = "#{ecp.matchingEquipment}"
                                          var="ecpItem" label="#{ecpItem.name}"/>
                                     <s:convertEntity />
                                    </h:selectOneMenu>
                            </s:decorate>                      
                          </a4j:repeat>
                          
                          <div style="clear: both" />
                     </rich:panel>
                     <div class="actionButtons">
                         <h:commandButton id="newEcp" value="Add ECP" action="#{editOutage.addNewEcp()}"/>
                       </div>
              </rich:panel>

              <div class="actionButtons">
                    <h:commandButton id="saveOutage" value="Save outage" action="#{editOutage.saveOutage()}"/>
                    <s:button id="cancelEditOutage" value="Cancel" action="#{editOutage.end()}" view ="/outageList.xhtml"/>
                  </div>
          </h:form>

      </ui:define>

      </ui:composition>

      ** Exceptions **
      21:23:38,222 INFO  [EditOutageBean] Load called
      21:23:38,222 INFO  [EditOutageBean] Starting the conversation
      21:23:38,222 INFO  [EditOutageBean] Outage is null?
      21:23:38,503 WARN  [renderkit] 'for' attribute cannot be null
      21:23:38,503 WARN  [renderkit] 'for' attribute cannot be null
      21:23:38,566 INFO  [EditOutageBean] Destroying the SFSB
      21:24:07,159 WARN  [lifecycle] /outage.xhtml @30,58 value="#{_outage.code}": Target Unreachable, identifier '_outage' resolved to null
      javax.el.PropertyNotFoundException: /outage.xhtml @30,58 value="#{_outage.code}": Target Unreachable, identifier '_outage' resolved to null
           at com.sun.facelets.el.TagValueExpression.getType(TagValueExpression.java:62)
           at com.sun.faces.renderkit.html_basic.HtmlBasicInputRenderer.getConvertedValue(HtmlBasicInputRenderer.java:92)
           at com.sun.faces.renderkit.html_basic.MenuRenderer.convertSelectOneValue(MenuRenderer.java:188)
           at com.sun.faces.renderkit.html_basic.MenuRenderer.getConvertedValue(MenuRenderer.java:301)
           at javax.faces.component.UIInput.getConvertedValue(UIInput.java:942)
           at javax.faces.component.UIInput.validate(UIInput.java:868)
           at javax.faces.component.UIInput.executeValidate(UIInput.java:1072)
           at javax.faces.component.UIInput.processValidators(UIInput.java:672)
           at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1058)
           at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1058)
           at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1058)
           at javax.faces.component.UIForm.processValidators(UIForm.java:235)
           at org.ajax4jsf.component.AjaxViewRoot$3.invokeContextCallback(AjaxViewRoot.java:439)
           at org.ajax4jsf.component.AjaxViewRoot.processPhase(AjaxViewRoot.java:238)
           at org.ajax4jsf.component.AjaxViewRoot.processValidators(AjaxViewRoot.java:455)
           at com.sun.faces.lifecycle.ProcessValidationsPhase.execute(ProcessValidationsPhase.java:76)
           at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
           at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
           at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
           at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
           at org.jboss.seam.web.IdentityFilter.doFilter(IdentityFilter.java:40)
           at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
           at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:90)
           at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
           at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
           at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
           at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
           at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
           at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:177)
           at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:267)
           at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:380)
           at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:507)
           at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:56)
           at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
           at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58)
           at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
           at org.jboss.seam.web.HotDeployFilter.doFilter(HotDeployFilter.java:53)
           at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
           at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
           at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
           at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)
           at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
           at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190)
           at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
           at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92)
           at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
           at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
           at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
           at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
           at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
           at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
           at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
           at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)
           at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:601)
           at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
           at java.lang.Thread.run(Thread.java:595)
      21:24:07,159 ERROR [lifecycle] JSF1054: (Phase ID: PROCESS_VALIDATIONS 3, View ID: /outage.xhtml) Exception thrown during phase execution: javax.faces.event.PhaseEvent[source=com.sun.faces.lifecycle.LifecycleImpl@154377d]
      21:24:07,159 WARN  [ExceptionFilter] handling uncaught exception
      javax.servlet.ServletException: /outage.xhtml @30,58 value="#{_outage.code}": Target Unreachable, identifier '_outage' resolved to null
           at javax.faces.webapp.FacesServlet.service(FacesServlet.java:277)
           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
           at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
           at org.jboss.seam.web.IdentityFilter.doFilter(IdentityFilter.java:40)
           at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
           at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:90)
           at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
           at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
           at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
           at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
           at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
           at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:177)
           at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:267)
           at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:380)
           at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:507)
           at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:56)
           at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
           at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58)
           at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
           at org.jboss.seam.web.HotDeployFilter.doFilter(HotDeployFilter.java:53)
           at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
           at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
           at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
           at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)
           at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
           at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190)
           at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
           at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92)
           at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
           at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
           at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
           at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
           at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
           at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
           at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
           at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)
           at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:601)
           at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
           at java.lang.Thread.run(Thread.java:595)
      Caused by: javax.el.PropertyNotFoundException: /outage.xhtml @30,58 value="#{_outage.code}": Target Unreachable, identifier '_outage' resolved to null
           at com.sun.facelets.el.TagValueExpression.getType(TagValueExpression.java:62)
           at com.sun.faces.renderkit.html_basic.HtmlBasicInputRenderer.getConvertedValue(HtmlBasicInputRenderer.java:92)
           at com.sun.faces.renderkit.html_basic.MenuRenderer.convertSelectOneValue(MenuRenderer.java:188)
           at com.sun.faces.renderkit.html_basic.MenuRenderer.getConvertedValue(MenuRenderer.java:301)
           at javax.faces.component.UIInput.getConvertedValue(UIInput.java:942)
           at javax.faces.component.UIInput.validate(UIInput.java:868)
           at javax.faces.component.UIInput.executeValidate(UIInput.java:1072)
           at javax.faces.component.UIInput.processValidators(UIInput.java:672)
           at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1058)
           at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1058)
           at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1058)
           at javax.faces.component.UIForm.processValidators(UIForm.java:235)
           at org.ajax4jsf.component.AjaxViewRoot$3.invokeContextCallback(AjaxViewRoot.java:439)
           at org.ajax4jsf.component.AjaxViewRoot.processPhase(AjaxViewRoot.java:238)
           at org.ajax4jsf.component.AjaxViewRoot.processValidators(AjaxViewRoot.java:455)
           at com.sun.faces.lifecycle.ProcessValidationsPhase.execute(ProcessValidationsPhase.java:76)
           at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
           at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
           at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
           ... 43 more
      21:24:07,159 WARN  [ExceptionFilter] exception root cause
      javax.el.PropertyNotFoundException: /outage.xhtml @30,58 value="#{_outage.code}": Target Unreachable, identifier '_outage' resolved to null
           at com.sun.facelets.el.TagValueExpression.getType(TagValueExpression.java:62)
           at com.sun.faces.renderkit.html_basic.HtmlBasicInputRenderer.getConvertedValue(HtmlBasicInputRenderer.java:92)
           at com.sun.faces.renderkit.html_basic.MenuRenderer.convertSelectOneValue(MenuRenderer.java:188)
           at com.sun.faces.renderkit.html_basic.MenuRenderer.getConvertedValue(MenuRenderer.java:301)
           at javax.faces.component.UIInput.getConvertedValue(UIInput.java:942)
           at javax.faces.component.UIInput.validate(UIInput.java:868)
           at javax.faces.component.UIInput.executeValidate(UIInput.java:1072)
           at javax.faces.component.UIInput.processValidators(UIInput.java:672)
           at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1058)
           at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1058)
           at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1058)
           at javax.faces.component.UIForm.processValidators(UIForm.java:235)
           at org.ajax4jsf.component.AjaxViewRoot$3.invokeContextCallback(AjaxViewRoot.java:439)
           at org.ajax4jsf.component.AjaxViewRoot.processPhase(AjaxViewRoot.java:238)
           at org.ajax4jsf.component.AjaxViewRoot.processValidators(AjaxViewRoot.java:455)
           at com.sun.faces.lifecycle.ProcessValidationsPhase.execute(ProcessValidationsPhase.java:76)
           at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
           at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
           at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
           at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
           at org.jboss.seam.web.IdentityFilter.doFilter(IdentityFilter.java:40)
           at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
           at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:90)
           at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
           at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
           at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
           at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
           at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
           at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:177)
           at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:267)
           at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:380)
           at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:507)
           at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:56)
           at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
           at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58)
           at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
           at org.jboss.seam.web.HotDeployFilter.doFilter(HotDeployFilter.java:53)
           at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
           at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
           at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
           at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
           at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
           at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)
           at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
           at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190)
           at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
           at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92)
           at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
           at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
           at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
           at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
           at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
           at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
           at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
           at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)
           at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:601)
           at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
           at java.lang.Thread.run(Thread.java:595)