[jboss-user] [JBoss Seam] - Seam validation on Rich tabpanel

jfrankman do-not-reply at jboss.com
Thu Aug 9 13:19:10 EDT 2007


This is my second post today sorry for the questions, but I have researched this the best I can and can't find a solution. I am about to give up on the rich tab panel, I have had too many problems. All I am trying to accomplish is to have all fields validated in my tab panel regardless of which tab is selected. The current behavior is that any only the fields on the active tab are validate. But before I abandone it I thought I would give it one more try to see if anyone has done this. I am trying to get a rich tab panel to work inside SEAM. Here is the page:


  |     <h:form id="rptphdmgbinder" styleClass="edit">
  |     <s:validateAll>
  |         <rich:panel>
  |             <f:facet name="header">Edit Physical Damage Binder</f:facet>
  | 			 
  |                 <h:inputHidden id="lineOfBusiness" 
  |                           value="#{rptphdmgbinderHome.instance.lineOfBusiness}">
  |                 </h:inputHidden>
  | 
  |                 <h:inputHidden id="id"
  |                        required="true"
  |                           value="#{rptphdmgbinderHome.instance.id}">
  |                 </h:inputHidden>
  | 
  |                 <h:inputHidden id="policyid"
  |                           value="#{rptphdmgbinderHome.instance.policyid}">
  |                 </h:inputHidden>
  | 
  | 
  |             <s:decorate id="companyNameDecoration" template="layout/edit.xhtml">
  |                 <ui:define name="label">Company Name</ui:define>
  | 	            <h:selectOneRadio id="companyname" value="#{rptphdmgbinderHome.instance.company}">
  | 			  		<f:selectItem itemValue="FARM BUREAU MUTUAL INSURANCE COMPANY OF IDAHO" itemLabel="FBM"/>
  | 			  		<f:selectItem itemValue="WESTERN COMMUNITY INSURANCE COMPANY" itemLabel="WCC"/>			  		
  | 			  		<f:selectItem itemValue="WESTERN COMMUNITY INSURANCE COMPANY" itemLabel="COMMERCIAL WCC"/>
  | 		  			<a:support event="onchange" reRender="companyNameDecoration"/>
  | 				</h:selectOneRadio>                          
  |             </s:decorate>
  | 
  |         
  |             
  |        
  |     
  |     <rich:tabPanel switchType="server">
  | 	<rich:tab label="Client">
  |             <s:decorate id="policynumDecoration" template="layout/edit.xhtml">
  |                 <ui:define name="label">Policy Num</ui:define>
  |                 <h:inputText id="policynum" 
  |                            size="15"
  |                       maxlength="15"
  |                           value="#{rptphdmgbinderHome.instance.policynum}">
  |                     <a:support event="onblur" reRender="policynumDecoration"/>
  |                 </h:inputText>
  |             </s:decorate>	
  | 		            <s:decorate id="clientnameDecoration" template="layout/edit.xhtml">
  |                 <ui:define name="label">Client Name</ui:define>
  |                 <h:inputText id="clientname" 
  |                            size="50"
  |                       maxlength="50"
  |                       required="true"
  |                           value="#{rptphdmgbinderHome.instance.clientname}">
  |                     <a:support event="onblur" reRender="clientnameDecoration"/>
  |                 </h:inputText>
  |             </s:decorate>
  |             <s:decorate id="clientaddressDecoration" template="layout/edit.xhtml">
  |                 <ui:define name="label">Client Address</ui:define>
  |                 <h:inputText id="clientaddress" 
  |                            size="100"
  |                       maxlength="100"
  |                       required="true"
  |                           value="#{rptphdmgbinderHome.instance.clientaddress}">
  |                     <a:support event="onblur" reRender="clientaddressDecoration"/>
  |                 </h:inputText>
  |             </s:decorate>  
  |             <s:decorate id="policyeffdateDecoration" template="layout/edit.xhtml">
  |                 <ui:define name="label">Policy Effdate</ui:define>
  |                 <h:inputText id="policyeffdate" 
  |                            size="10"
  |                       maxlength="10"
  |                           value="#{rptphdmgbinderHome.instance.policyeffdate}">
  |                     <a:support event="onblur" reRender="policyeffdateDecoration"/>
  |                     
  |                 </h:inputText>
  |                  <s:selectDate for="policyeffdate" ><img src="images/dtpick.gif" /></s:selectDate>
  |             </s:decorate>
  | 
  |             <s:decorate id="policyexpdateDecoration" template="layout/edit.xhtml">
  |                 <ui:define name="label">Policy Expdate</ui:define>
  |                 <h:inputText id="policyexpdate" 
  |                            size="10"
  |                       maxlength="10"
  |                           value="#{rptphdmgbinderHome.instance.policyexpdate}">
  |                     <a:support event="onblur" reRender="policyexpdateDecoration"/>
  |                     
  |                 </h:inputText>
  |                  <s:selectDate for="policyexpdate" ><img src="images/dtpick.gif" /></s:selectDate>
  |             </s:decorate>                      
  | 	</rich:tab>
  | 	<rich:tab label="Vehicle" id="tabpanvehicle">
  | <!--            <s:decorate id="coveragetypeDecoration" template="layout/edit.xhtml">-->
  | <!--                <ui:define name="label">Coverage Type</ui:define>-->
  | <!--                <h:inputText id="coveragetype" -->
  | <!--                           size="10"-->
  | <!--                      maxlength="10"-->
  | <!--                          value="#{rptphdmgbinderHome.instance.coveragetype}">-->
  | <!--                    <a:support event="onblur" reRender="coveragetypeDecoration"/>-->
  | <!--                </h:inputText>-->
  | <!--            </s:decorate>-->
  |             <s:decorate id="coveragetypeDecoration" template="layout/edit.xhtml">            
  |             <ui:define name="label">Coverage Type</ui:define>
  |             <a:region>
  |             <h:selectOneRadio id="coveragetype" value="#{rptphdmgbinderHome.instance.coveragetype}">
  | 		  		<f:selectItem itemValue="AUTO" itemLabel="Auto"/>
  | 		  		<f:selectItem itemValue="OTHER" itemLabel="Other"/>
  | 		  		<a:support event="onclick" reRender="deductiblegroup1,equipDescriptionDiv" ajaxSingle="true" />
  | 			</h:selectOneRadio>            
  | 			</a:region>
  |             </s:decorate>            
  | 
  | <s:div id="deductiblegroup1">          
  | 	<h:panelGroup rendered="#{rptphdmgbinderHome.instance.coveragetype=='AUTO'}">         
  |             <s:decorate id="deductible1Decoration1" template="layout/edit.xhtml">
  | 				<ui:define name="label" >
  | 					Comp
  | 				</ui:define>
  | 
  |                 <h:inputText id="deductible1" 
  |                            size="10"
  |                       maxlength="10"
  |                           value="#{rptphdmgbinderHome.instance.deductible1}">
  |                     <a:support event="onblur" reRender="deductible1Decoration1"/>
  |                 </h:inputText>
  |             </s:decorate>
  |             <s:decorate id="deductible2Decoration1" template="layout/edit.xhtml">
  | 	                <ui:define name="label">Collision</ui:define>
  |                 <h:inputText id="deductible2" 
  |                            size="10"
  |                       maxlength="10"
  |                           value="#{rptphdmgbinderHome.instance.deductible2}">
  |                     <a:support event="onblur" reRender="deductible2Decoration1"/>
  |                 </h:inputText>
  |             </s:decorate>            
  | 	</h:panelGroup>
  | <h:panelGroup rendered="#{rptphdmgbinderHome.instance.coveragetype!='AUTO'}">	            
  |             <s:decorate id="deductible1Decoration2" template="layout/edit.xhtml">
  | 				<ui:define name="label" >
  | 					Deductible
  | 				</ui:define>
  | 
  |                 <h:inputText id="deductible1a" 
  |                            size="10"
  |                       maxlength="10"
  |                       required="true"
  |                           value="#{rptphdmgbinderHome.instance.deductible1}">
  |                     <a:support event="onblur" reRender="deductible1Decoration2"/>
  |                 </h:inputText>
  |             </s:decorate> 
  |             <s:decorate id="deductible2Decoration2" template="layout/edit.xhtml">
  | 	                <ui:define name="label">Perils</ui:define>
  |                 <h:inputText id="deductible2a" 
  |                            size="10"
  |                       maxlength="10"
  |                           value="#{rptphdmgbinderHome.instance.deductible2}">
  |                     <a:support event="onblur" reRender="deductible2Decoration2"/>
  |                 </h:inputText>
  |             </s:decorate>                       
  | 	</h:panelGroup>	
  | </s:div>            	
  |             
  | <!--<s:div id="panelx"> -->
  | <!--	<h:panelGroup rendered="#{rptphdmgbinderHome.instance.coveragetype=='AUTO'}">-->
  | <!--		hello!!!-->
  | <!--	</h:panelGroup>-->
  | <!--	<h:panelGroup rendered="#{rptphdmgbinderHome.instance.coveragetype!='AUTO'}">-->
  | <!--		goodbye!!!-->
  | <!--	</h:panelGroup>	-->
  | <!--</s:div>            -->
  | 
  | 
  | 
  |             <s:decorate id="vehiclemakeDecoration" template="layout/edit.xhtml">
  |                 <ui:define name="label">Vehicle Make</ui:define>
  |                 <h:inputText id="vehiclemake" 
  |                            size="4"
  |                       maxlength="4"
  |                           value="#{rptphdmgbinderHome.instance.vehiclemake}">
  |                     <a:support event="onblur" reRender="vehiclemakeDecoration"/>
  |                 </h:inputText>
  |             </s:decorate>
  | 
  |             <s:decorate id="vehiclemodelDecoration" template="layout/edit.xhtml">
  |                 <ui:define name="label">Vehicle Model</ui:define>
  |                 <h:inputText id="vehiclemodel" 
  |                            size="25"
  |                       maxlength="25"
  |                           value="#{rptphdmgbinderHome.instance.vehiclemodel}">
  |                     <a:support event="onblur" reRender="vehiclemodelDecoration"/>
  |                 </h:inputText>
  |             </s:decorate>
  | 
  |             <s:decorate id="vehiclevinDecoration" template="layout/edit.xhtml">
  |                 <ui:define name="label">Vehicle Vin</ui:define>
  |                 <h:inputText id="vehiclevin" 
  |                            size="20"
  |                       maxlength="20"
  |                           value="#{rptphdmgbinderHome.instance.vehiclevin}">
  |                     <a:support event="onblur" reRender="vehiclevinDecoration"/>
  |                 </h:inputText>
  |             </s:decorate>
  | 
  |             <s:decorate id="vehicleyearDecoration" template="layout/edit.xhtml">
  |                 <ui:define name="label">Vehicle Year</ui:define>
  |                 <h:inputText id="vehicleyear" 
  |                            size="4"
  |                       maxlength="4"
  |                           value="#{rptphdmgbinderHome.instance.vehicleyear}">
  |                     <a:support event="onblur" reRender="vehicleyearDecoration"/>
  |                 </h:inputText>
  |             </s:decorate>  
  |             <s:div id="equipDescriptionDiv">           
  |             <h:panelGroup rendered="#{rptphdmgbinderHome.instance.coveragetype!='AUTO'}">	            
  |             <s:decorate id="equipmentdescriptionDecoration" template="layout/edit.xhtml">
  |                 <ui:define name="label">Equipment Description</ui:define>
  |                 <h:inputText id="equipmentdescription" 
  |                            size="50"
  |                       maxlength="50"
  |                           value="#{rptphdmgbinderHome.instance.equipmentdescription}">
  |                     <a:support event="onblur" reRender="equipmentdescriptionDecoration"/>
  |                 </h:inputText>
  |             </s:decorate> 
  |             </h:panelGroup>	
  |             </s:div>            	
  | 	</rich:tab>
  | 	<rich:tab label="Agent">
  | 		            <s:decorate id="agentnameDecoration" template="layout/edit.xhtml">
  |                 <ui:define name="label">Agent Name</ui:define>
  |                 <h:inputText id="agentname" 
  |                            size="50"
  |                       maxlength="50"
  |                           value="#{rptphdmgbinderHome.instance.agentname}">
  |                     <a:support event="onblur" reRender="agentnameDecoration"/>
  |                 </h:inputText>
  |             </s:decorate>
  | 	</rich:tab>
  | 	<rich:tab label="LienHolder">
  | 		            <s:decorate id="loaneffdateDecoration" template="layout/edit.xhtml">
  |                 <ui:define name="label">Loan Effdate</ui:define>
  |                 <h:inputText id="loaneffdate" 
  |                            size="10"
  |                       maxlength="10"
  |                       required="true"
  |                           value="#{rptphdmgbinderHome.instance.loaneffdate}">
  |                     <a:support event="onblur" reRender="loaneffdateDecoration"/>
  |                 </h:inputText>
  |                  <s:selectDate for="loaneffdate" ><img src="images/dtpick.gif" /></s:selectDate>              
  |             </s:decorate>
  |             <s:decorate id="loannumDecoration" template="layout/edit.xhtml">
  |                 <ui:define name="label">Loan Num</ui:define>
  |                 <h:inputText id="loannum" 
  |                            size="15"
  |                       maxlength="15"
  |                           value="#{rptphdmgbinderHome.instance.loannum}">
  |                     <a:support event="onblur" reRender="loannumDecoration"/>
  |                 </h:inputText>
  |             </s:decorate>  
  |             <s:decorate id="liennameDecoration" template="layout/edit.xhtml">
  |                 <ui:define name="label">Lien Name</ui:define>
  |                 <h:inputText id="lienname" 
  |                            size="50"
  |                       maxlength="50"
  |                       required="true"
  |                           value="#{rptphdmgbinderHome.instance.lienname}">
  |                     <a:support event="onblur" reRender="liennameDecoration"/>
  |                 </h:inputText>
  |             </s:decorate> 
  |             <s:decorate id="lienaddressDecoration" template="layout/edit.xhtml">
  |                 <ui:define name="label">Lien Address</ui:define>
  |                 <h:inputText id="lienaddress" 
  |                            size="100"
  |                       maxlength="100"
  |                       required="true"
  |                           value="#{rptphdmgbinderHome.instance.lienaddress}">
  |                     <a:support event="onblur" reRender="lienaddressDecoration"/>
  |                 </h:inputText>
  |             </s:decorate>                                 
  |             <s:decorate id="binderremarksDecoration" template="layout/edit.xhtml">
  |                 <ui:define name="label">Binder Remarks</ui:define>
  |                 <h:inputTextarea id="binderremarks"
  |                                cols="80"
  |                                rows="3"
  |                               value="#{rptphdmgbinderHome.instance.binderremarks}"/>
  |             </s:decorate>
  | 
  |             
  | 	</rich:tab>
  | 
  |     </rich:tabPanel>
  |                       <div style="clear:both">
  |                 <span class="required">*</span> 
  |                 required fields
  |             </div>     
  |      </rich:panel>
  |          
  |         <div class="actionButtons">
  | 
  |             <h:commandButton id="save" 
  |                           value="Save" 
  |                          action="#{rptphdmgbinderHome.persist}"
  |                        disabled="#{!rptphdmgbinderHome.wired}"
  |                        rendered="#{!rptphdmgbinderHome.managed}"/>  
  |                           			  
  |             <h:commandButton id="update" 
  |                           value="Save" 
  |                          action="#{rptphdmgbinderHome.update}"
  |                        rendered="#{rptphdmgbinderHome.managed}"/>
  |                         			  
  |             <h:commandButton id="delete" 
  |                           value="Delete" 
  |                          action="#{rptphdmgbinderHome.remove}"
  |                        rendered="#{rptphdmgbinderHome.managed}"/>
  |                     
  |             <s:button id="done" 
  |                    value="Done"
  |              propagation="end"
  |                     view="/Rptphdmgbinder.xhtml"
  |                 rendered="#{rptphdmgbinderHome.managed}"/>
  |                 
  |             <s:button id="cancel" 
  |                    value="Cancel"
  |              propagation="end"
  |                     view="/#{empty rptphdmgbinderFrom ? 'RptphdmgbinderList' : rptphdmgbinderFrom}.xhtml"
  |                 rendered="#{!rptphdmgbinderHome.managed}"/>
  | 
  |         </div>
  |             </s:validateAll>
  |     </h:form>
  | 
  | 


My problem is that validation is not performed across all tabs. Suppose I had three tabs: Tab A, Tab B, and Tab C. The form tag is wrapped around all three tabs. Each tab has at least one required field. If Tab A is active and validation failes (i.e. required field is blank) then Seam displayes the error properly. However, if everything is filled in correctly in Tab A, but there is an empty value on a required field in Tab C, then the form is submitted succesfully even though data on Tab C was not valid. This is what happens if the client side validation is set by placing the required=true attribute on all required fields

When this happened I tried to switch to server side validation using SEAM annotation. I put @NotNull attribute on a seam component and removed the required=true from the page. When I did this I got redirected to the debug page. Here is the stack trace:

10:56:46,587 ERROR [ExceptionFilter] uncaught exception
  | javax.servlet.ServletException
  | 	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:156)
  | 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
  | 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
  | 	at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:63)
  | 	at org.jboss.seam.debug.hot.HotDeployFilter.doFilter(HotDeployFilter.java:60)
  | 	at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
  | 	at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
  | 	at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
  | 	at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:57)
  | 	at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
  | 	at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:79)
  | 	at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
  | 	at org.jboss.seam.web.SeamFilter.doFilter(SeamFilter.java:84)
  | 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
  | 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
  | 	at org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:96)
  | 	at org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:220)
  | 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
  | 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
  | 	at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
  | 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
  | 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
  | 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
  | 	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
  | 	at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
  | 	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
  | 	at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
  | 	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
  | 	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
  | 	at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
  | 	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
  | 	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
  | 	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
  | 	at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
  | 	at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
  | 	at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
  | 	at java.lang.Thread.run(Thread.java:595)
  | 10:56:46,587 ERROR [ExceptionFilter] exception root cause
  | java.lang.NullPointerException
  | 	at javax.faces.event.FacesEvent.queue(FacesEvent.java:54)
  | 	at org.richfaces.renderkit.TabPanelRendererBase.doDecode(TabPanelRendererBase.java:94)
  | 	at org.ajax4jsf.framework.renderer.RendererBase.decode(RendererBase.java:76)
  | 	at javax.faces.component.UIComponentBase.decode(UIComponentBase.java:500)
  | 	at javax.faces.component.UIInput.decode(UIInput.java:223)
  | 	at org.richfaces.component.UISwitchablePanel.processDecodes(UISwitchablePanel.java:158)
  | 	at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:602)
  | 	at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:602)
  | 	at javax.faces.component.UIForm.processDecodes(UIForm.java:53)
  | 	at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:602)
  | 	at javax.faces.component.UIViewRoot.processDecodes(UIViewRoot.java:135)
  | 	at org.ajax4jsf.framework.ajax.AjaxViewRoot.access$001(AjaxViewRoot.java:53)
  | 	at org.ajax4jsf.framework.ajax.AjaxViewRoot$1.invokeRoot(AjaxViewRoot.java:254)
  | 	at org.ajax4jsf.framework.ajax.JsfOneOneInvoker.invokeOnRegionOrRoot(JsfOneOneInvoker.java:54)
  | 	at org.ajax4jsf.framework.ajax.AjaxContext.invokeOnRegionOrRoot(AjaxContext.java:176)
  | 	at org.ajax4jsf.framework.ajax.AjaxViewRoot.processDecodes(AjaxViewRoot.java:267)
  | 	at org.apache.myfaces.lifecycle.LifecycleImpl.applyRequestValues(LifecycleImpl.java:219)
  | 	at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:71)
  | 	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:137)
  | 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
  | 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
  | 	at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:63)
  | 	at org.jboss.seam.debug.hot.HotDeployFilter.doFilter(HotDeployFilter.java:60)
  | 	at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
  | 	at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
  | 	at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
  | 	at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:57)
  | 	at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
  | 	at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:79)
  | 	at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
  | 	at org.jboss.seam.web.SeamFilter.doFilter(SeamFilter.java:84)
  | 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
  | 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
  | 	at org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:96)
  | 	at org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:220)
  | 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
  | 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
  | 	at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
  | 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
  | 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
  | 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
  | 	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
  | 	at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
  | 	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
  | 	at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
  | 	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
  | 	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
  | 	at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
  | 	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
  | 	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
  | 	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
  | 	at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
  | 	at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
  | 	at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
  | 	at java.lang.Thread.run(Thread.java:595)
  | 10:56:46,603 ERROR [DebugPageHandler] redirecting to debug page
  | java.lang.NullPointerException
  | 	at javax.faces.event.FacesEvent.queue(FacesEvent.java:54)
  | 	at org.richfaces.renderkit.TabPanelRendererBase.doDecode(TabPanelRendererBase.java:94)
  | 	at org.ajax4jsf.framework.renderer.RendererBase.decode(RendererBase.java:76)
  | 	at javax.faces.component.UIComponentBase.decode(UIComponentBase.java:500)
  | 	at javax.faces.component.UIInput.decode(UIInput.java:223)
  | 	at org.richfaces.component.UISwitchablePanel.processDecodes(UISwitchablePanel.java:158)
  | 	at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:602)
  | 	at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:602)
  | 	at javax.faces.component.UIForm.processDecodes(UIForm.java:53)
  | 	at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:602)
  | 	at javax.faces.component.UIViewRoot.processDecodes(UIViewRoot.java:135)
  | 	at org.ajax4jsf.framework.ajax.AjaxViewRoot.access$001(AjaxViewRoot.java:53)
  | 	at org.ajax4jsf.framework.ajax.AjaxViewRoot$1.invokeRoot(AjaxViewRoot.java:254)
  | 	at org.ajax4jsf.framework.ajax.JsfOneOneInvoker.invokeOnRegionOrRoot(JsfOneOneInvoker.java:54)
  | 	at org.ajax4jsf.framework.ajax.AjaxContext.invokeOnRegionOrRoot(AjaxContext.java:176)
  | 	at org.ajax4jsf.framework.ajax.AjaxViewRoot.processDecodes(AjaxViewRoot.java:267)
  | 	at org.apache.myfaces.lifecycle.LifecycleImpl.applyRequestValues(LifecycleImpl.java:219)
  | 	at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:71)
  | 	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:137)
  | 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
  | 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
  | 	at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:63)
  | 	at org.jboss.seam.debug.hot.HotDeployFilter.doFilter(HotDeployFilter.java:60)
  | 	at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
  | 	at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
  | 	at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
  | 	at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:57)
  | 	at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
  | 	at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:79)
  | 	at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
  | 	at org.jboss.seam.web.SeamFilter.doFilter(SeamFilter.java:84)
  | 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
  | 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
  | 	at org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:96)
  | 	at org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:220)
  | 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
  | 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
  | 	at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
  | 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
  | 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
  | 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
  | 	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
  | 	at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
  | 	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
  | 	at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
  | 	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
  | 	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
  | 	at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
  | 	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
  | 	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
  | 	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
  | 	at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
  | 	at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
  | 	at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
  | 	at java.lang.Thread.run(Thread.java:595)
  | 10:56:47,135 ERROR [STDERR] Aug 9, 2007 10:56:47 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
  | INFO: Added Library from: jar:file:/C:/dev/jboss-4.0.5.ejb3/server/default/./deploy/nexus-poc-2.ear/nexus-poc-2.war/WEB-INF/lib/jboss-seam-pdf.jar!/META-INF/seam-pdf.taglib.xml
  | 10:56:47,135 ERROR [STDERR] Aug 9, 2007 10:56:47 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
  | INFO: Added Library from: jar:file:/C:/dev/jboss-4.0.5.ejb3/server/default/./deploy/nexus-poc-2.ear/nexus-poc-2.war/WEB-INF/lib/richfaces-3.0.1-SNAPSHOT.jar!/META-INF/rich.taglib.xml
  | 10:56:47,135 ERROR [STDERR] Aug 9, 2007 10:56:47 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
  | INFO: Added Library from: jar:file:/C:/dev/jboss-4.0.5.ejb3/server/default/./deploy/nexus-poc-2.ear/nexus-poc-2.war/WEB-INF/lib/jsf-facelets.jar!/META-INF/jstl-core.taglib.xml
  | 10:56:47,150 ERROR [STDERR] Aug 9, 2007 10:56:47 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
  | INFO: Added Library from: jar:file:/C:/dev/jboss-4.0.5.ejb3/server/default/./deploy/nexus-poc-2.ear/nexus-poc-2.war/WEB-INF/lib/jsf-facelets.jar!/META-INF/jsf-core.taglib.xml
  | 10:56:47,150 ERROR [STDERR] Aug 9, 2007 10:56:47 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
  | INFO: Added Library from: jar:file:/C:/dev/jboss-4.0.5.ejb3/server/default/./deploy/nexus-poc-2.ear/nexus-poc-2.war/WEB-INF/lib/jboss-seam-ui.jar!/META-INF/seam-ui.taglib.xml
  | 10:56:47,166 ERROR [STDERR] Aug 9, 2007 10:56:47 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
  | INFO: Added Library from: jar:file:/C:/dev/jboss-4.0.5.ejb3/server/default/./deploy/nexus-poc-2.ear/nexus-poc-2.war/WEB-INF/lib/jsf-facelets.jar!/META-INF/jsf-html.taglib.xml
  | 10:56:47,166 ERROR [STDERR] Aug 9, 2007 10:56:47 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
  | INFO: Added Library from: jar:file:/C:/dev/jboss-4.0.5.ejb3/server/default/./deploy/nexus-poc-2.ear/nexus-poc-2.war/WEB-INF/lib/jboss-seam-mail.jar!/META-INF/seam-mail.taglib.xml
  | 10:56:47,166 ERROR [STDERR] Aug 9, 2007 10:56:47 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
  | INFO: Added Library from: jar:file:/C:/dev/jboss-4.0.5.ejb3/server/default/./deploy/nexus-poc-2.ear/nexus-poc-2.war/WEB-INF/lib/jsf-facelets.jar!/META-INF/jsf-ui.taglib.xml
  | 10:56:47,213 ERROR [STDERR] Aug 9, 2007 10:56:47 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
  | INFO: Added Library from: jar:file:/C:/dev/jboss-4.0.5.ejb3/server/default/./deploy/nexus-poc-2.ear/nexus-poc-2.war/WEB-INF/lib/jsf-facelets.jar!/META-INF/jstl-fn.taglib.xml
  | 10:56:47,213 ERROR [STDERR] Aug 9, 2007 10:56:47 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
  | INFO: Added Library from: jar:file:/C:/dev/jboss-4.0.5.ejb3/server/default/./deploy/nexus-poc-2.ear/nexus-poc-2.war/WEB-INF/lib/ajax4jsf-1.1.1-SNAPSHOT.jar!/META-INF/a4j.taglib.xml
  | 10:57:25,223 ERROR [STDERR] Aug 9, 2007 10:57:25 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
  | INFO: Added Library from: jar:file:/C:/dev/jboss-4.0.5.ejb3/server/default/./deploy/nexus-poc-2.ear/nexus-poc-2.war/WEB-INF/lib/jboss-seam-pdf.jar!/META-INF/seam-pdf.taglib.xml
  | 10:57:25,223 ERROR [STDERR] Aug 9, 2007 10:57:25 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
  | INFO: Added Library from: jar:file:/C:/dev/jboss-4.0.5.ejb3/server/default/./deploy/nexus-poc-2.ear/nexus-poc-2.war/WEB-INF/lib/richfaces-3.0.1-SNAPSHOT.jar!/META-INF/rich.taglib.xml
  | 10:57:25,223 ERROR [STDERR] Aug 9, 2007 10:57:25 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
  | INFO: Added Library from: jar:file:/C:/dev/jboss-4.0.5.ejb3/server/default/./deploy/nexus-poc-2.ear/nexus-poc-2.war/WEB-INF/lib/jsf-facelets.jar!/META-INF/jstl-core.taglib.xml
  | 10:57:25,239 ERROR [STDERR] Aug 9, 2007 10:57:25 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
  | INFO: Added Library from: jar:file:/C:/dev/jboss-4.0.5.ejb3/server/default/./deploy/nexus-poc-2.ear/nexus-poc-2.war/WEB-INF/lib/jsf-facelets.jar!/META-INF/jsf-core.taglib.xml
  | 10:57:25,270 ERROR [STDERR] Aug 9, 2007 10:57:25 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
  | INFO: Added Library from: jar:file:/C:/dev/jboss-4.0.5.ejb3/server/default/./deploy/nexus-poc-2.ear/nexus-poc-2.war/WEB-INF/lib/jboss-seam-ui.jar!/META-INF/seam-ui.taglib.xml
  | 10:57:25,270 ERROR [STDERR] Aug 9, 2007 10:57:25 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
  | INFO: Added Library from: jar:file:/C:/dev/jboss-4.0.5.ejb3/server/default/./deploy/nexus-poc-2.ear/nexus-poc-2.war/WEB-INF/lib/jsf-facelets.jar!/META-INF/jsf-html.taglib.xml
  | 10:57:25,270 ERROR [STDERR] Aug 9, 2007 10:57:25 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
  | INFO: Added Library from: jar:file:/C:/dev/jboss-4.0.5.ejb3/server/default/./deploy/nexus-poc-2.ear/nexus-poc-2.war/WEB-INF/lib/jboss-seam-mail.jar!/META-INF/seam-mail.taglib.xml
  | 10:57:25,286 ERROR [STDERR] Aug 9, 2007 10:57:25 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
  | INFO: Added Library from: jar:file:/C:/dev/jboss-4.0.5.ejb3/server/default/./deploy/nexus-poc-2.ear/nexus-poc-2.war/WEB-INF/lib/jsf-facelets.jar!/META-INF/jsf-ui.taglib.xml
  | 10:57:25,286 ERROR [STDERR] Aug 9, 2007 10:57:25 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
  | INFO: Added Library from: jar:file:/C:/dev/jboss-4.0.5.ejb3/server/default/./deploy/nexus-poc-2.ear/nexus-poc-2.war/WEB-INF/lib/jsf-facelets.jar!/META-INF/jstl-fn.taglib.xml
  | 10:57:25,301 ERROR [STDERR] Aug 9, 2007 10:57:25 AM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
  | INFO: Added Library from: jar:file:/C:/dev/jboss-4.0.5.ejb3/server/default/./deploy/nexus-poc-2.ear/nexus-poc-2.war/WEB-INF/lib/ajax4jsf-1.1.1-SNAPSHOT.jar!/META-INF/a4j.taglib.xml
  | 

Your input is appreciated. 

Thanks.


View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4072651#4072651

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4072651



More information about the jboss-user mailing list