Any A4J submit rerenders blank page
tromanowski Apr 6, 2007 12:21 PMHi everyone, I've been looking over the docs, FAQ and this forum and am wondering if my problem is very basic, since I haven't seen it come up.
I have pages with regular JSFtags and a couple A4J tags. Whenever any A4J component submits an ajax request, the page hangs for a second,
then rerenders a blank page.
Here is a snippet:
<a4j:region selfRendered="true"> <h:form> <a4j:outputPanel id="MyPanel"> <h:panelGrid rendered="#{myBean.rendered}"> <h:outputText value="This is a test."/> </h:panelGrid> <h:outputText value="Show text: "/> <h:selectBooleanCheckbox value="true" action="null"> <a4j:support event="onclick" actionListener="#{myBean.updateIsRendered}" reRender="MyPanel"> </a4j:support> </h:selectBooleanCheckbox > </a4j:outputPanel> </h:form> </a4j:region>
The same thing happens in versions 1.0.5 and 1.0.7 and 1.1.0 (latest release).
I am using Ajax4JSF 1.1.0 and Tomahawk 1.1.5 (there are no Tomahawk components on the pages causing problems).
My app server is Glassfish v2 build 40, running JSF RI 1.2.
Here are snippets of my web.xml:
<context-param> <param-name>org.ajax4jsf.VIEW_HANDLERS</param-name> <param-value>com.sun.facelets.FaceletViewHandler</param-value> </context-param> ... SNIP ... <!-- ************************ AJAX4JSF Filter **************************** --> <filter> <display-name>Ajax4jsf Filter</display-name> <filter-name>ajax4jsf</filter-name> <filter-class>org.ajax4jsf.Filter</filter-class> <init-param> <param-name>forceparser</param-name> <param-value>false</param-value> </init-param> </filter> <!-- Must use the *.faces URL pattern, else a JTidy nullpointerexception is thrown! --> <filter-mapping> <filter-name>ajax4jsf</filter-name> <!--<url-pattern>*.faces</url-pattern> --> <servlet-name>Faces Servlet</servlet-name> <dispatcher>REQUEST</dispatcher> <dispatcher>FORWARD</dispatcher> <dispatcher>INCLUDE</dispatcher> </filter-mapping> <!-- ************************ Tomahawk Filter **************************** --> <filter> <filter-name>MyFacesExtensionsFilter</filter-name> <filter-class>org.apache.myfaces.webapp.filter.ExtensionsFilter</filter-class> <init-param> <param-name>maxFileSize</param-name> <param-value>20m</param-value> </init-param> </filter> <!-- extension mapping for adding <script/>, <link/>, and other resource tags to JSF-pages --> <filter-mapping> <filter-name>MyFacesExtensionsFilter</filter-name> <!-- servlet-name must match the name of your javax.faces.webapp.FacesServlet entry --> <servlet-name>Faces Servlet</servlet-name> </filter-mapping> ... SNIP ... <!-- ************************ Faces Servlet Mapping **************************** --> <servlet> <servlet-name>Faces Servlet</servlet-name> <servlet-class>javax.faces.webapp.FacesServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>Faces Servlet</servlet-name> <url-pattern>/faces/*</url-pattern> </servlet-mapping>
Using firebug, I'm not seeing any javascript errors, and when the page goes blank, firebug is still showing all the original source in my browser (Firefox v2).
My app does not support IE (because I refuse to put in a billion workarounds), so I cannot test it in that browser to compare.
Any suggestions?