Tag Archives: class-transformations

Tapestry source code viewer

A simple implementation of a SourceCodeViewer would be to have a service for adding and listing the source code and a component to display it.
Continue reading

Some Reporting tricks with class-transformations

Every time I used to see some duplication of code, I used to move that code to a new method. With Tapestry, you begin to think differently. Now every time I see duplication, my first thought is “Can I create a worker for it”.

In my current project, I am using a few new ones. So I thought why not share them with you.
Continue reading

Tapestry Magic #7: Tapestry Integration With Perf4J

Perf4j is a set of utilities for calculating and displaying performance statistics for Java code and has already been integrated with AOP’s like AspectJ. So I thought why not with our own Tapestry5. Won’t it be nice if we are able to annotate an event handler or a service method with @Profiled and Perf4J will log the details of its duration. That is exactly what we are going to do. Continue reading

Meeting Plastic I: Introduction

With Tapestry, you know things improve very fast. For the users, everything stays much the same(Ok, only after Tapestry5) but for developers, it keeps you on your toes especially if you are constantly peeking into the source code. In Tapestry 5.3, we are going to see complete replacement of Javassist by Plastic. It is a wrapper around ASM.

Continue reading

Tapestry Magic #2: Ajax with Graceful Degradation


In Tapestry5, both Ajax & non-ajax event handlers are simple methods and a single method can be used to handle both requests. This is particularly useful in case a browser does not support javascript or javascript is disabled. On the client side, Tapestry5 gracefully degrades to a non-ajax call. If we make a small adjustment to our event handler method, we can handle both ajax and non-ajax calls on the server side and make a graceful degradation on server side too.

Continue reading

Tapestry Magic #1: Using Class Transformations

One of the most power tools in Tapestry5 is the Class transformation of Components and Pages. In plain language it means you can add or modify methods in components and pages at runtime. The magic is done by implementing ComponentClassTransformWorker which has just one method

Continue reading

%d bloggers like this: