News

While many think of Aspects for cross-cutting concerns such as transaction management, persistence and role based security, another key value for them has been as an enabler for Annotations for ordinary projects. Using Aspects as a way to implement annotation handlers is a different way to think of them than as the traditional architect's "cross cutting concerns" view.

Custom annotations are a great way to add common reusable behavior to Java applications. John Heintz from New Aspects discussed at the recent No Fluff Just Stuff (NFJS) Java Symposium, the design techniques for adding behavior to Java Annotations.

Managing commonality and variability is the core of product line engineering. In this presentation, Markus Völter illustrates how model-driven and aspect oriented software development help addressing the challenge of managing variability in product line engineering.

Orbitz Worldwide, a leading global online travel company, has open sourced two monitoring tools Extremely Reusable Monitoring API (ERMA) and Graphite, a persistence and visualization component. ERMA is a home grown Java API and library that has been used in several web applications at Orbitz to capture monitoring statistics in the applications at run-time.

Domain-Driven Design is a subject where there currently are very few examples of how to actually do it in practice. In this article, Srini Penchikala gives you guidelines, practices, frameworks and tools that technical leads and architects can use in the effort of implementing a system in a Domain-Driven way.

InfoQ.com is a next generation web portal combining the latest advancements in portal technology and web development. In this presentation, Alexandru Popescu and Floyd Marinescu walks through the good, the bad, and the ugly of building InfoQ.com; from initial (lack of) requirements, designs, implementation choices, and deployment issues, and all the lessons learned along the way.

Mark Pollack, founder of Spring.NET, talks about shares ideas between the Java and .NET communities and the history of Spring.NET. Topics include how to use dependency injection and AOP for more than just logging and where Spring.NET overlaps with WCF.

In this presentation from QCon San Francisco 2007, SpringSource CTO and AspectJ project lead Adrian Colyer discusses where Aspect-Oriented Programming (AOP) should be used, practical applications of AOP in enterprise situations such as Hibernate exception translation and automatic operation retry on nonfatal exceptions, and AOP mechanisms in Spring 2.5.

Today, many projects focus on Domain-Driven Design, but it is not always easy. One of the most important things are to separate the domain code from the code that only exists for technical reasons. Mats Helander has written an article where he explains how to manage domain models and teaches design patterns and aspect-oriented programming in the process.

In this QCon session, Spring Creator Rod Johnson explains the important enhancements and features in Spring 2, including XML extensibility features, Spring AOP framework updates, first-class support for dynamic languages, JPA integration, and third party technology support such as Mule ESB, clustering tools, SCA, etc.

Vigil Bose shows how a business transaction can trigger business events dynamically for subsystem processing. The examples shown in this article uses Spring framework 2.0 and Spring AOP effectively to decouple the business service from the subsystem processing functionality.

We've come a long way from the first versions of J2EE. We've learned to avoid invasive programming models, we've developed a rich set of frameworks and APIs, we know how to develop applications based around simple objects. Are we there yet? Most of us would answer no to that question. If we're not there yet, then where are we headed next? Spring founder Rod Johnson explores this issue.