BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Java Content on InfoQ

  • Making AspectJ development easier with AJDT

    Aspect Oriented Programming (AOP) can be used to solve a number of today's application requirements but can also be intimidating for developers when getting started. A new article by Matt Chapman, AJDT Project Lead, shows how AOP development with the popular AspectJ library can be made easier using the Eclipse AspectJ Development Tools (AJDT) plugin.

  • Spring.NET - QnA

    InfoQ had a chance to sit down with Aleksandar Seovic and Mark Pollack the co-creaters of Spring.NET. Spring.NET is an application framework that brings AOP, a Dependency Injection container and data access framework to .NET. It is not a complete port of Spring to .NET yet it preserves the tenets of Spring.

  • SOA Programming Models

    Author Boris Lublinksy provides an overview of the dominant programming models that are emerging in the SOA domain including Windows Communication Framework (WCF), Java Business Integration (JBI) and Service Component Architecture(SCA).

  • Migrating to Struts 2 - Part II

    In this part of the Struts 2 migration series, Struts committer Ian Roughely looks at a real application and compares the Struts and Struts 2 implementations, identifies how to convert actions, configuration changes, and what parts of the codebase don't need to be converted.

  • Java, .NET, But Why Together?

    The Java vs. NET war is over. In this article, Ted Neward looks at how we can leverage the strengths of each together, such as using Microsoft Office to act as a "rich client" to a Java middle-tier service, or building a Windows Presentation Foundation GUI on top of Java POJOs, or even how to execute Java Enterprise/J2EE functionality from within a Windows Workflow host.

  • Painless AOP with Groovy

    Groovy's Metaobject-Protocol provides a single point of contact for modifying the core behaviour of the Objects we create. John McClean shows how to use Groovy's MOP to perform AOP interception without proxyies or bytecode manipulation, and shows how the same is possible in Ruby and other dynamic languages.

  • Testing Ajax Applications with Selenium

    The Selenium develompent team briefly introduces Selenium, a web acceptance testing tool, and shows how to test Ajax applications with waitForXxxx Selenium commands, as well as how to test a simple Ajax effect - an asynchronous text update - with Selenium.

  • Migrating Struts Apps to Struts 2

    Struts committer Ian Roughely explains, from the perspective of a Struts developer, the high level architecture, basic request workflow, configuration semantics and differences in the action framework in the new Struts 2 (formerly WebWork). Armed with this knowledge, migrating an application of any size from Struts to Struts 2 should be simplified.

  • An Update on Spring 2.0 Final

    Spring 2.0 was initially supposed to come out in June/July, why the delay? InfoQ interviewed the Spring team - based on massive community feedback, the team has chosen to delay the launch to Sept 26th in order work on asynchronous JMS capabilities, JPA, the new JSP form tag library, OSGi integration, documentation, and backwards compatibility.

  • Grails + EJB Domain Models Step-by-Step

    Grails brings Ruby on Rails style productivity to the Java platform, built on the Groovy language and fully integrated with Java. This tutorial shows how to use Grails to quickly build a functional website around an existing EJB 3 entity bean domain model with very little code

  • Simplifying Enterprise Applications with Spring 2.0 and AspectJ

    This article reviews Spring AOP support in 2.0, and walks you through an adoption roadmap for AOP in enterprise applications, with plenty of examples of features that can be implemented simply using AOP, but would be very hard to do any other way.

  • Using Logging Seams for Legacy Code Unit Testing

    Using logging seams you can easily create unobtrusive unit tests around legacy classes, without needing to edit class logic as well as avoiding behavior changes.

BT