You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@shale.apache.org by Tomasz Pasierb <to...@poczta.fm> on 2007/11/01 21:52:23 UTC

[clay] reloading "tiles" on subsequent requests

Hi,

I'm using the composition feature of clay.
I've noticed that when a tile changes and I hit 'refresh' in the browser 
the new content is not reflected in the browser. I have to restart the 
webapp in order to see the new content.
Is there a way to have the clay reload the tile when it's requested and 
have been changed? I guess that would greatly improve the development 
time of pages. (I guess one would only enable such a feature during 
development).

I've seen that there's a 
org.apache.shale.clay.config.beans.ConfigDefinitionsWatchdogFilter but 
it only seem to refresh the page when something is changed in the clay 
config xml.

Thanks,
Tom

Re: Integrating Shale with Ajax4JSF

Posted by Dominik Böhm <do...@dbedv.de>.
Hi Lionel,

thank you, that did the trick!

Best regards
Dominik

Lionel Port schrieb:
> Try wrapping your ajax code in a "a4j:region" tag.
>
> On Nov 5, 2007 3:53 AM, Dominik Böhm <do...@dbedv.de> wrote:
>
>   
>> Hello,
>>
>> I tried vainly to use Shale 1.0.4 with Ajax4JSF. When I put some ajax
>> component onto my page and try to open it, I receive a
>> NullPointerException:
>>
>> javax.servlet.ServletException
>>    javax.faces.webapp.FacesServlet.service(FacesServlet.java:256)
>>
>> org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(
>> ExtensionsFilter.java:147)
>>    org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:141)
>>    org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:281)
>>
>> de.uni_muenster.easy.web.filters.SecurityFilter.doFilter(
>> SecurityFilter.java:48)
>>
>> org.apache.shale.application.faces.ShaleApplicationFilter.doFilter(
>> ShaleApplicationFilter.java:267)
>>
>> org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(
>> ReplyHeaderFilter.java:96)
>>
>> java.lang.NullPointerException
>>
>> org.ajax4jsf.renderkit.AjaxRendererUtils.buildAjaxFunction(
>> AjaxRendererUtils.java:390)
>>
>> org.ajax4jsf.renderkit.html.AjaxFormRenderer.doEncodeBegin(
>> AjaxFormRenderer.java:131)
>>    org.ajax4jsf.renderkit.RendererBase.encodeBegin(RendererBase.java:101)
>>
>> javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java
>> :788)
>>    javax.faces.component.UIComponent.encodeAll(UIComponent.java:884)
>>    javax.faces.component.UIComponent.encodeAll(UIComponent.java:892)
>>
>> com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java
>> :592)
>>
>> org.ajax4jsf.application.ViewHandlerWrapper.renderView(
>> ViewHandlerWrapper.java:108)
>>
>> org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java
>> :243)
>>
>> com.sun.faces.lifecycle.RenderResponsePhase.execute(
>> RenderResponsePhase.java:106)
>>    com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
>>    com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
>>    javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
>>
>> org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(
>> ExtensionsFilter.java:147)
>>    org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:141)
>>    org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:281)
>>
>> de.uni_muenster.easy.web.filters.SecurityFilter.doFilter(
>> SecurityFilter.java:48)
>>
>> org.apache.shale.application.faces.ShaleApplicationFilter.doFilter(
>> ShaleApplicationFilter.java:267)
>>
>> org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(
>> ReplyHeaderFilter.java:96)
>>
>>
>> The reason is that Ajax4JSF relies on the fact that either
>> facesContext.getViewRoot() is an AjaxViewRoot container or that the
>> ajaxForm's parent (or grand parent and so on) is an AjaxViewRoot. But
>> using Shale the facesContext.getViewRoot() is an instance of
>> ShaleViewRoot (the form's parent is that same ShaleViewRoot object).
>>
>> As this issue is not resolved with the latest 1.1.0 SNAPSHOT I would
>> like to ask you kindly to give full Ajax4JSF support.
>>
>> Thank you very much
>> Dominik
>>
>>     
>
>   


-- 
Dominik Böhm
Wilhelmstr. 17
48149 Münster

Mobile +49 160 7572316
Phone +49 251 6253968
Fax +49 251 6253969
ICQ 89501619 


Re: Integrating Shale with Ajax4JSF

Posted by Lionel Port <li...@portconnection.com>.
Try wrapping your ajax code in a "a4j:region" tag.

On Nov 5, 2007 3:53 AM, Dominik Böhm <do...@dbedv.de> wrote:

> Hello,
>
> I tried vainly to use Shale 1.0.4 with Ajax4JSF. When I put some ajax
> component onto my page and try to open it, I receive a
> NullPointerException:
>
> javax.servlet.ServletException
>    javax.faces.webapp.FacesServlet.service(FacesServlet.java:256)
>
> org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(
> ExtensionsFilter.java:147)
>    org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:141)
>    org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:281)
>
> de.uni_muenster.easy.web.filters.SecurityFilter.doFilter(
> SecurityFilter.java:48)
>
> org.apache.shale.application.faces.ShaleApplicationFilter.doFilter(
> ShaleApplicationFilter.java:267)
>
> org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(
> ReplyHeaderFilter.java:96)
>
> java.lang.NullPointerException
>
> org.ajax4jsf.renderkit.AjaxRendererUtils.buildAjaxFunction(
> AjaxRendererUtils.java:390)
>
> org.ajax4jsf.renderkit.html.AjaxFormRenderer.doEncodeBegin(
> AjaxFormRenderer.java:131)
>    org.ajax4jsf.renderkit.RendererBase.encodeBegin(RendererBase.java:101)
>
> javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java
> :788)
>    javax.faces.component.UIComponent.encodeAll(UIComponent.java:884)
>    javax.faces.component.UIComponent.encodeAll(UIComponent.java:892)
>
> com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java
> :592)
>
> org.ajax4jsf.application.ViewHandlerWrapper.renderView(
> ViewHandlerWrapper.java:108)
>
> org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java
> :243)
>
> com.sun.faces.lifecycle.RenderResponsePhase.execute(
> RenderResponsePhase.java:106)
>    com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
>    com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
>    javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
>
> org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(
> ExtensionsFilter.java:147)
>    org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:141)
>    org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:281)
>
> de.uni_muenster.easy.web.filters.SecurityFilter.doFilter(
> SecurityFilter.java:48)
>
> org.apache.shale.application.faces.ShaleApplicationFilter.doFilter(
> ShaleApplicationFilter.java:267)
>
> org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(
> ReplyHeaderFilter.java:96)
>
>
> The reason is that Ajax4JSF relies on the fact that either
> facesContext.getViewRoot() is an AjaxViewRoot container or that the
> ajaxForm's parent (or grand parent and so on) is an AjaxViewRoot. But
> using Shale the facesContext.getViewRoot() is an instance of
> ShaleViewRoot (the form's parent is that same ShaleViewRoot object).
>
> As this issue is not resolved with the latest 1.1.0 SNAPSHOT I would
> like to ask you kindly to give full Ajax4JSF support.
>
> Thank you very much
> Dominik
>

Integrating Shale with Ajax4JSF

Posted by Dominik Böhm <do...@dbedv.de>.
Hello,

I tried vainly to use Shale 1.0.4 with Ajax4JSF. When I put some ajax 
component onto my page and try to open it, I receive a NullPointerException:

javax.servlet.ServletException
    javax.faces.webapp.FacesServlet.service(FacesServlet.java:256)
    
org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147)
    org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:141)
    org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:281)
    
de.uni_muenster.easy.web.filters.SecurityFilter.doFilter(SecurityFilter.java:48)
    
org.apache.shale.application.faces.ShaleApplicationFilter.doFilter(ShaleApplicationFilter.java:267)
    
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)

java.lang.NullPointerException
    
org.ajax4jsf.renderkit.AjaxRendererUtils.buildAjaxFunction(AjaxRendererUtils.java:390)
    
org.ajax4jsf.renderkit.html.AjaxFormRenderer.doEncodeBegin(AjaxFormRenderer.java:131)
    org.ajax4jsf.renderkit.RendererBase.encodeBegin(RendererBase.java:101)
    
javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:788)
    javax.faces.component.UIComponent.encodeAll(UIComponent.java:884)
    javax.faces.component.UIComponent.encodeAll(UIComponent.java:892)
    
com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:592)
    
org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108)
    
org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:243)
    
com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106)
    com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
    com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
    javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
    
org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147)
    org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:141)
    org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:281)
    
de.uni_muenster.easy.web.filters.SecurityFilter.doFilter(SecurityFilter.java:48)
    
org.apache.shale.application.faces.ShaleApplicationFilter.doFilter(ShaleApplicationFilter.java:267)
    
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)


The reason is that Ajax4JSF relies on the fact that either 
facesContext.getViewRoot() is an AjaxViewRoot container or that the 
ajaxForm's parent (or grand parent and so on) is an AjaxViewRoot. But 
using Shale the facesContext.getViewRoot() is an instance of 
ShaleViewRoot (the form's parent is that same ShaleViewRoot object).

As this issue is not resolved with the latest 1.1.0 SNAPSHOT I would 
like to ask you kindly to give full Ajax4JSF support.

Thank you very much
Dominik

Re: [clay] reloading "tiles" on subsequent requests

Posted by Antonio Petrelli <an...@gmail.com>.
2007/11/1, Tomasz Pasierb <to...@poczta.fm>:
> I've noticed that when a tile changes and I hit 'refresh' in the browser
> the new content is not reflected in the browser. I have to restart the
> webapp in order to see the new content.

A Tiles users had a similar problem, that he solved. See if it helps:
http://www.nabble.com/Tiles2-and-tile%2Clayout-refresh-tf4711731.html

Antonio