Another way (I like the pattern exclusion better) is to set a request attribute "decorator" to "none"
musachy On 7/30/07, Mark Menard <[EMAIL PROTECTED]> wrote: > On 7/30/07 2:06 AM, "Grish" <[EMAIL PROTECTED]> wrote: > > > > > I tried taking a modified version of the Struts 2 + Spring 2 + JPA + AJAX > > tutorial that I've done and integrated it with Sitemesh. > > > > I realized that if i have div tags with the ajax theme, Sitemesh will > > decorate that area so I will end up with and embedded decorator in the main > > page. I need to exclude my AJAX calls from being decorated. I understand > > that Sitemesh has a decorators.xml where you can specify which urls are not > > to be decorated: > > > > <!-- Any urls that are excluded will never be decorated by Sitemesh --> > > <excludes> > > <pattern>/styles/*</pattern> > > <pattern>/scripts/*</pattern> > > <pattern>/images/*</pattern> > > <pattern>/ajax/*</pattern> > > <pattern>/dojo/*</pattern> > > <pattern>/struts/*</pattern> > > <pattern>/nodecorate/*</pattern> > > </excludes> > > > > I first thought I simply had to move my jsps to a folder that was part of > > the sitemesh excludes, like the ajax folder or the nodecorate folder. I have > > a page called person.jsp and when I list the results of my search using ajax > > I use the personList.jsp. I moved the personList.jsp to an excluded folder > > but Sitemesh still decorated my personList.jsp. > > The exclusion is based on the requested URL, not where the file is in your > project. > > This is what I did. I have two action definitions, > > > <action name=createPO" class="CreatePOAction" /> > <action name="createPOAjax" class="CreatePOAction" /> > > > Requests to createPO.action should be decorated, calls to > createPOAjax.action shouldn't. > > > <excludes> > <pattern>*Ajax.action*</pattern> > </excludes> > > I'm not sure if the second * is necessary, but it works. I also use one > class with two action definitions. I have methods that handle the Ajax stuff > in the same class file so everything is nicely contained and I use the > method argument to the request to call the specific method I want. > > Take care, > Mark > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > -- "Hey you! Would you help me to carry the stone?" Pink Floyd --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]