AW: continue from same point after log in
hi paul, i think that there is a workflow for this in here: http://www.agileskills2.org/EWDT/ ICallback interface or something. kind regards, peter -Ursprüngliche Nachricht- Von: Paul Stanton [mailto:[EMAIL PROTECTED] Gesendet: Freitag, 27. April 2007 02:58 An: Tapestry users Betreff: continue from same point after log in Hi All, I've just got something to work which is pretty fundamental to my app, but I've had to hack a little to get it working. I'd appreciate feedback/opinions on tidier alternatives if there are any. Basically, a user can browse the whole application except for small segments without logging in. When they hit a page that requires a valid session, they are redirected to the login page. Once they have logged in they should be returned to the page they were trying to access. It is acceptable for this to only work for GET requests, however service parameters (query string) must be retained. Here's how I've achieved it: TapestryUtils: public class TapestryUtils { public static HttpServletRequest getRequest(WebRequest request) { RequestRetriever d = new RequestRetriever(); request.describeTo(d); return d.getRequest(); } static class RequestRetriever implements DescriptionReceiver { HttpServletRequest request; public void describeAlternate(Object alternate) { this.request = (HttpServletRequest) alternate; } public HttpServletRequest getRequest() { return request; } ... } } BasePage: public abstract class AppPage extends BasePage { public void pageValidate(PageEvent event) { if (Boolean.parseBoolean(getSecure()) !getVisit().isAuthentic()) { Login page = getLoginPage(); HttpServletRequest request = TapestryUtils.getRequest(getRequestCycle().getInfrastructure().getRequest()); if (request.getMethod().equals(GET)) page.setForwardTo(request.getRequestURL() + ? + request.getQueryString()); throw new PageRedirectException(page); } } } Login public abstract class Login extends ApplicationPage { ... public abstract String getForwardTo(); public abstract void setForwardTo(String forwardTo); public IPage doSubmit() { User user = getUserService().getUserByUsername(getUsername()); if (user != null user.getPassword().equals(getPassword())) { getVisit().setUser(user); if (getForwardTo() == null) { Home page = getHomePage(); page.setMessage(user.getFullName() + successfully logged in.); return page; } throw new RedirectException(getForwardTo()); } setError(Invalid login. Please try again.); return this; } } Login.html: ... input type=hidden jwcid=[EMAIL PROTECTED] value=ognl:forwardTo/ ... -- Paul Stanton Gunn Software PH: (02) 9918 3666 (ext 503) - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
@DirtyFormWarning missing from Tacos 4.1.0-SNAPSHOT
I've just realised that @DirtyFormWarning is (currently) gone from Tacos 4.1.0-SNAPSHOT. I'd be very grateful for any hints on how you worked around this - or what the difficulty was in porting this one. Marcus
Re: @DirtyFormWarning missing from Tacos 4.1.0-SNAPSHOT
Well, (at least) I haven't needed it (yet) but i can take a look to see if it can easily be ported - unless you've already done it (or planning on doing so) On 4/27/07, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: I've just realised that @DirtyFormWarning is (currently) gone from Tacos 4.1.0-SNAPSHOT. I'd be very grateful for any hints on how you worked around this - or what the difficulty was in porting this one. Marcus -- Andreas Andreou - [EMAIL PROTECTED] - http://andyhot.di.uoa.gr Tapestry / Tacos developer Open Source / JEE Consulting
[T5] IOC: services without interface do not work
hi all, when i try to return a service in my module that does not have an interface i get a No service implements the interface... exception. The recent blog entry suggests that it should work now .. http://tapestryjava.blogspot.com/2007/04/pleasing-crowds-improving-ioc-extending.html My module code is below. Am i missing something? Or maybe i'm just too eager to use it... :) I'm using the latest sources from the repository. MyModule.java public class MyModule { public static SimpleServiceImpl build() { return new SimpleServiceImpl(); } } g, kris btw. anyone tried to build tapestry 5 with java 1.6
problems in Demo of Tacos's TAB Upload Progress Bar
Hi Everyone, I noticed some issues with the Tacos demo of Upload progress Bar example. I tried to upload various files and the Status Progress Bar shows up after a lng time for a Big file and even after progress bar comes up, it does not move. i.e progress is not being showed in the example. Here is the link for that : http://opencomponentry.com:8080/tacos/forms/UploadProgressBar.html Also, i noticed issues with the TAB component. The content is not displayed. I checked the view source and also from the Source code of Demo, All the 3 tabs have content inside them, but none get displayed. Here is the link for that example: http://opencomponentry.com:8080/tacos/dojo/TabsExample.html Are they a bug, or something else needs to be configured ? Please advice on how to tackle this issue. Thanks, Sunil -- View this message in context: http://www.nabble.com/problems-in-Demo-of-Tacos%27s-TAB---Upload-Progress-Bar-tf3657624.html#a10219037 Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
AW: Problem with quickstart
hi marcel, both annotations are deprecated. just delete them. this is a bug in the quickstart-tutorial, but nobody seams to care about that... -Ursprüngliche Nachricht- Von: Thannhäuser, Marcel [mailto:[EMAIL PROTECTED] Gesendet: Freitag, 27. April 2007 16:03 An: users@tapestry.apache.org Betreff: Problem with quickstart Hi! I've just built the archetype and created an eclipse project. My Maven Plugin seems to be working correct ( no dependency seems to be missing ), but I yet get some compile errors in org.example.myapp.services.AppModule. The Annotation classes Id and Contribute can't be found. Anyone has a solution for this? Bye Marcel - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Templating with Tapestry 5
Ok, I've been barking up a tree the whole day... and I'm not even sure it's the wrong one. I want to be able to do real component templating like struts has it's tiles. So my page (CoolPage) would look something like this: t:layout/ .. a one liner My CoolPage.java would have some string properties referring to components that it would inject into layout. It also extends an abstract class which has the default template associated with it (Layout): class CoolPage extends AbstractPage { @Component(parameters{navbar=coolnavbar, header=coolheader}) private Layout _layout; private String _coolnavbar = navbarComponentName private String _coolheader = headerComponentName etc... } The component names might be delegated down several levels of components to whatever component needs that specific information. Then Layout.html would look something like: div t:type=navbar/ Layout.java looks like this: class Layout { private String _navbar; accessors here } The problem occurs because Layout.html does NOT grab the injected string names put resolves the component to be of type navbar which does not exist. I am doing this because the look-and-feel of the application carries 3 layers of components. The layers have just been created to wrap the components in Yahoo UI divs mostly. I don't want to have to redo the default layout on every tapestry page if something changes.That's why i am trying to keep all that in one layout and inject components into the layout. The layout class doesn't know what component goes where, it should just hold a basket of injected components and the template should know where to put the components. Any ideas?... or is there a better way? -- View this message in context: http://www.nabble.com/Templating-with-Tapestry-5-tf3659025.html#a10223765 Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Templating with Tapestry 5
Had the same problem when I started with T after spending too much time with Struts. In T Layout is usually done upside down compared to struts: layout is handled by Border component that is wrapper to the page content. Feels weird initially but works well. --- bjornharvold [EMAIL PROTECTED] wrote: Ok, I've been barking up a tree the whole day... and I'm not even sure it's the wrong one. I want to be able to do real component templating like struts has it's tiles. So my page (CoolPage) would look something like this: t:layout/ .. a one liner My CoolPage.java would have some string properties referring to components that it would inject into layout. It also extends an abstract class which has the default template associated with it (Layout): class CoolPage extends AbstractPage { @Component(parameters{navbar=coolnavbar, header=coolheader}) private Layout _layout; private String _coolnavbar = navbarComponentName private String _coolheader = headerComponentName etc... } The component names might be delegated down several levels of components to whatever component needs that specific information. Then Layout.html would look something like: div t:type=navbar/ Layout.java looks like this: class Layout { private String _navbar; accessors here } The problem occurs because Layout.html does NOT grab the injected string names put resolves the component to be of type navbar which does not exist. I am doing this because the look-and-feel of the application carries 3 layers of components. The layers have just been created to wrap the components in Yahoo UI divs mostly. I don't want to have to redo the default layout on every tapestry page if something changes.That's why i am trying to keep all that in one layout and inject components into the layout. The layout class doesn't know what component goes where, it should just hold a basket of injected components and the template should know where to put the components. Any ideas?... or is there a better way? -- View this message in context: http://www.nabble.com/Templating-with-Tapestry-5-tf3659025.html#a10223765 Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] Konstantin Ignatyev PS: If this is a typical day on planet earth, humans will add fifteen million tons of carbon to the atmosphere, destroy 115 square miles of tropical rainforest, create seventy-two miles of desert, eliminate between forty to one hundred species, erode seventy-one million tons of topsoil, add 2,700 tons of CFCs to the stratosphere, and increase their population by 263,000 Bowers, C.A. The Culture of Denial: Why the Environmental Movement Needs a Strategy for Reforming Universities and Public Schools. New York: State University of New York Press, 1997: (4) (5) (p.206) - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Templating with Tapestry 5
Konstantin, Can you give me an example? thx bjorn Konstantin Ignatyev wrote: Had the same problem when I started with T after spending too much time with Struts. In T Layout is usually done upside down compared to struts: layout is handled by Border component that is wrapper to the page content. Feels weird initially but works well. --- bjornharvold [EMAIL PROTECTED] wrote: Ok, I've been barking up a tree the whole day... and I'm not even sure it's the wrong one. I want to be able to do real component templating like struts has it's tiles. So my page (CoolPage) would look something like this: t:layout/ .. a one liner My CoolPage.java would have some string properties referring to components that it would inject into layout. It also extends an abstract class which has the default template associated with it (Layout): class CoolPage extends AbstractPage { @Component(parameters{navbar=coolnavbar, header=coolheader}) private Layout _layout; private String _coolnavbar = navbarComponentName private String _coolheader = headerComponentName etc... } The component names might be delegated down several levels of components to whatever component needs that specific information. Then Layout.html would look something like: div t:type=navbar/ Layout.java looks like this: class Layout { private String _navbar; accessors here } The problem occurs because Layout.html does NOT grab the injected string names put resolves the component to be of type navbar which does not exist. I am doing this because the look-and-feel of the application carries 3 layers of components. The layers have just been created to wrap the components in Yahoo UI divs mostly. I don't want to have to redo the default layout on every tapestry page if something changes.That's why i am trying to keep all that in one layout and inject components into the layout. The layout class doesn't know what component goes where, it should just hold a basket of injected components and the template should know where to put the components. Any ideas?... or is there a better way? -- View this message in context: http://www.nabble.com/Templating-with-Tapestry-5-tf3659025.html#a10223765 Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] Konstantin Ignatyev PS: If this is a typical day on planet earth, humans will add fifteen million tons of carbon to the atmosphere, destroy 115 square miles of tropical rainforest, create seventy-two miles of desert, eliminate between forty to one hundred species, erode seventy-one million tons of topsoil, add 2,700 tons of CFCs to the stratosphere, and increase their population by 263,000 Bowers, C.A. The Culture of Denial: Why the Environmental Movement Needs a Strategy for Reforming Universities and Public Schools. New York: State University of New York Press, 1997: (4) (5) (p.206) - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/Templating-with-Tapestry-5-tf3659025.html#a10224896 Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Templating with Tapestry 5
Just look closely at the Workbench example that comes with Tapestry: Border component has span jwcid=@RenderBodyPage content goes here./span And individual pages look like this; span jwcid=@Border -- this is the first page line .. Meaningful page content .. /span --- bjornharvold [EMAIL PROTECTED] wrote: Konstantin, Can you give me an example? thx bjorn Konstantin Ignatyev wrote: Had the same problem when I started with T after spending too much time with Struts. In T Layout is usually done upside down compared to struts: layout is handled by Border component that is wrapper to the page content. Feels weird initially but works well. --- bjornharvold [EMAIL PROTECTED] wrote: Ok, I've been barking up a tree the whole day... and I'm not even sure it's the wrong one. I want to be able to do real component templating like struts has it's tiles. So my page (CoolPage) would look something like this: t:layout/ .. a one liner My CoolPage.java would have some string properties referring to components that it would inject into layout. It also extends an abstract class which has the default template associated with it (Layout): class CoolPage extends AbstractPage { @Component(parameters{navbar=coolnavbar, header=coolheader}) private Layout _layout; private String _coolnavbar = navbarComponentName private String _coolheader = headerComponentName etc... } The component names might be delegated down several levels of components to whatever component needs that specific information. Then Layout.html would look something like: div t:type=navbar/ Layout.java looks like this: class Layout { private String _navbar; accessors here } The problem occurs because Layout.html does NOT grab the injected string names put resolves the component to be of type navbar which does not exist. I am doing this because the look-and-feel of the application carries 3 layers of components. The layers have just been created to wrap the components in Yahoo UI divs mostly. I don't want to have to redo the default layout on every tapestry page if something changes.That's why i am trying to keep all that in one layout and inject components into the layout. The layout class doesn't know what component goes where, it should just hold a basket of injected components and the template should know where to put the components. Any ideas?... or is there a better way? -- View this message in context: http://www.nabble.com/Templating-with-Tapestry-5-tf3659025.html#a10223765 Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] Konstantin Ignatyev PS: If this is a typical day on planet earth, humans will add fifteen million tons of carbon to the atmosphere, destroy 115 square miles of tropical rainforest, create seventy-two miles of desert, eliminate between forty to one hundred species, erode seventy-one million tons of topsoil, add 2,700 tons of CFCs to the stratosphere, and increase their population by 263,000 Bowers, C.A. The Culture of Denial: Why the Environmental Movement Needs a Strategy for Reforming Universities and Public Schools. New York: State University of New York Press, 1997: (4) (5) (p.206) - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/Templating-with-Tapestry-5-tf3659025.html#a10224896 Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] Konstantin Ignatyev PS: If this is a typical day on planet earth, humans will add fifteen million tons of carbon to the atmosphere, destroy 115 square miles of tropical rainforest, create seventy-two miles of desert, eliminate between forty to one hundred species, erode seventy-one million tons of topsoil, add 2,700 tons of CFCs to the stratosphere, and increase their population by 263,000 Bowers, C.A. The Culture of Denial: Why the Environmental Movement Needs a Strategy for Reforming Universities and Public Schools. New York: State University of New York Press, 1997: (4) (5) (p.206) - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Templating with Tapestry 5
But that's Tapestry 4, no? Oh I think I get it. In tapestry 5 you have the t:body/ Basically, you wrap your components in layouts. Konstantin Ignatyev wrote: Just look closely at the Workbench example that comes with Tapestry: Border component has Page content goes here. And individual pages look like this; -- this is the first page line .. Meaningful page content .. --- bjornharvold [EMAIL PROTECTED] wrote: Konstantin, Can you give me an example? thx bjorn Konstantin Ignatyev wrote: Had the same problem when I started with T after spending too much time with Struts. In T Layout is usually done upside down compared to struts: layout is handled by Border component that is wrapper to the page content. Feels weird initially but works well. --- bjornharvold [EMAIL PROTECTED] wrote: Ok, I've been barking up a tree the whole day... and I'm not even sure it's the wrong one. I want to be able to do real component templating like struts has it's tiles. So my page (CoolPage) would look something like this: t:layout/ .. a one liner My CoolPage.java would have some string properties referring to components that it would inject into layout. It also extends an abstract class which has the default template associated with it (Layout): class CoolPage extends AbstractPage { @Component(parameters{navbar=coolnavbar, header=coolheader}) private Layout _layout; private String _coolnavbar = navbarComponentName private String _coolheader = headerComponentName etc... } The component names might be delegated down several levels of components to whatever component needs that specific information. Then Layout.html would look something like: div t:type=navbar/ Layout.java looks like this: class Layout { private String _navbar; accessors here } The problem occurs because Layout.html does NOT grab the injected string names put resolves the component to be of type navbar which does not exist. I am doing this because the look-and-feel of the application carries 3 layers of components. The layers have just been created to wrap the components in Yahoo UI divs mostly. I don't want to have to redo the default layout on every tapestry page if something changes.That's why i am trying to keep all that in one layout and inject components into the layout. The layout class doesn't know what component goes where, it should just hold a basket of injected components and the template should know where to put the components. Any ideas?... or is there a better way? -- View this message in context: http://www.nabble.com/Templating-with-Tapestry-5-tf3659025.html#a10223765 Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] Konstantin Ignatyev PS: If this is a typical day on planet earth, humans will add fifteen million tons of carbon to the atmosphere, destroy 115 square miles of tropical rainforest, create seventy-two miles of desert, eliminate between forty to one hundred species, erode seventy-one million tons of topsoil, add 2,700 tons of CFCs to the stratosphere, and increase their population by 263,000 Bowers, C.A. The Culture of Denial: Why the Environmental Movement Needs a Strategy for Reforming Universities and Public Schools. New York: State University of New York Press, 1997: (4) (5) (p.206) - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/Templating-with-Tapestry-5-tf3659025.html#a10224896 Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] Konstantin Ignatyev PS: If this is a typical day on planet earth, humans will add fifteen million tons of carbon to the atmosphere, destroy 115 square miles of tropical rainforest, create seventy-two miles of desert, eliminate between forty to one hundred species, erode seventy-one million tons of topsoil, add 2,700 tons of CFCs to the stratosphere, and increase their population by 263,000 Bowers, C.A. The Culture of Denial: Why the Environmental Movement Needs a Strategy for Reforming Universities and Public Schools. New York: State University of New York Press, 1997: (4) (5) (p.206) - To unsubscribe, e-mail: [EMAIL
Create error page T4.0.2
Hi, Sorry, though I've tried looking for the documentation though I probably just missed it... If tapestry experiences an error, for example I have an invalid HTML template so it will have a parsing error, or perhaps I have an application error, Tapestry will display a very nice exception page with stack trace and various other info. This is helpful for development, though for production how can I define my own error page? Thanks, Josh - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Templating with Tapestry 5
Went down this road recently. You have a Layout component (call it what you want) htmlbodysome static stuff t:body/ /body /html and each page uses the layout; t:layout body body /t:layout if you want more flexibility, you can pass in other components as parameters, and use t:delegate to render them t:layout t:parameter name=sidebar t:sidebar t:id=sidebar/ /t:parameter body body /t:layout and in the layout: t:delegate to=propertyNameOfYourParameter/ bjornharvold wrote: Konstantin, Can you give me an example? thx bjorn - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Templating with Tapestry 5
Nice - thanks :-) -- View this message in context: http://www.nabble.com/Templating-with-Tapestry-5-tf3659025.html#a10226122 Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Create error page T4.0.2
The absolute easiest thing to do is to create a page named Exception (.html and .page). This will then be picked up automatically as the Exception page. Unfortunately you may have to do some build script magic to differentiate between production and development. I have my production Exception page log the error to a log file using Tapestry's exception display code but just display something generic for the user. You should be able to override hivemind settings to accomplish this if you want to call you page something else. For more info there are various discussions of this in the email list archives. Matt Josh Joy wrote: Hi, Sorry, though I've tried looking for the documentation though I probably just missed it... If tapestry experiences an error, for example I have an invalid HTML template so it will have a parsing error, or perhaps I have an application error, Tapestry will display a very nice exception page with stack trace and various other info. This is helpful for development, though for production how can I define my own error page? Thanks, Josh - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: problems in Demo of Tacos's TAB Upload Progress Bar
For the tab component, try adding style type=text/css /* Must have this, otherwise the body of the tabs will not be visible */ .dojoTabContainer{ width: 100%; height: 20em; } /style Shing --- sunilmanu [EMAIL PROTECTED] wrote: Hi Everyone, I noticed some issues with the Tacos demo of Upload progress Bar example. I tried to upload various files and the Status Progress Bar shows up after a lng time for a Big file and even after progress bar comes up, it does not move. i.e progress is not being showed in the example. Here is the link for that : http://opencomponentry.com:8080/tacos/forms/UploadProgressBar.html Also, i noticed issues with the TAB component. The content is not displayed. I checked the view source and also from the Source code of Demo, All the 3 tabs have content inside them, but none get displayed. Here is the link for that example: http://opencomponentry.com:8080/tacos/dojo/TabsExample.html Are they a bug, or something else needs to be configured ? Please advice on how to tackle this issue. Thanks, Sunil -- View this message in context: http://www.nabble.com/problems-in-Demo-of-Tacos%27s-TAB---Upload-Progress-Bar-tf3657624.html#a10219037 Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] ___ Yahoo! Answers - Got a question? Someone out there knows the answer. Try it now. http://uk.answers.yahoo.com/ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Problem with quickstart
If you just remove the annotations that are causes the errors, you should be able to make use of the quick start. Mark -Original Message- From: Thannhäuser, Marcel [mailto:[EMAIL PROTECTED] Sent: Friday, April 27, 2007 7:03 AM To: users@tapestry.apache.org Subject: Problem with quickstart Hi! I've just built the archetype and created an eclipse project. My Maven Plugin seems to be working correct ( no dependency seems to be missing ), but I yet get some compile errors in org.example.myapp.services.AppModule. The Annotation classes Id and Contribute can't be found. Anyone has a solution for this? Bye Marcel - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Create error page T4.0.2
Hi Josh, you can do a infrastructur override in your hivemodule.xml like this: contribution configuration-id=tapestry.InfrastructureOverrides property name=exceptionPageName value=CustomExceptionPage / /contribution and then you create your own CustomExceptionPage: public abstract class CustomExceptionPage extends Exception implements PageDetachListener { private static Logger log = LoggerFactory.getLogger(CustomExceptionPage.class); public abstract void setExceptions(ExceptionDescription[] exceptions); public void setException(Throwable value){ value.printStackTrace(); try { /* Send email with the error msg */ getCommunicationService().sendErrorExceptionEmail(value); } catch (Throwable exept) { // DO NOTHING... } } } you can also create a filter in here that ignores the error msgs that's creates by the web spiders and bots... if you want to.. Cheers, Jacob Josh Joy wrote: Hi, Sorry, though I've tried looking for the documentation though I probably just missed it... If tapestry experiences an error, for example I have an invalid HTML template so it will have a parsing error, or perhaps I have an application error, Tapestry will display a very nice exception page with stack trace and various other info. This is helpful for development, though for production how can I define my own error page? Thanks, Josh - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/Create-error-page-T4.0.2-tf3659480.html#a10227693 Sent from the Tapestry - User mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]