Vita Rara: A Life Uncommon

Programming

ApacheCon Training Session: Using Groovy with Struts 2


Categories: | | |

On Tuesday, November 13 I will be presenting a training session at ApacheCon 2007 in Atlanta, GA, Using Groovy with Struts 2. Learn how to use Groovy with Struts 2. Topics covered will include: Integrating Groovy into the Struts 2 Maven archetype; implementing actions, and service beans in Groovy; using Spring to wire Groovy service beans and action classes; using dynamic Groovy actions that do not require a server restart; writing Data Access Objects in Groovy and using Spring based transaction support with Java Persistence API (JPA).

Quadran Update


Categories: | |

We're in the final push to getting our first release of Quadran out the door. We' implemented a lot of functionality over the past two weeks. The data model has grown and morphed as time has gone on. We look to have a running system up within two weeks.

As I mentioned in another post we're starting to use Scrum to manage our software projects. The transition with Quadran has been interesting. Quadran is a fork lift replacement of an existing system that runs our client's complete operation. About the only thing that isn't in Quadran is invoicing and receivables. This makes the conversion to Scrum a little hard, because we're so close to finishing the first release. And we can't deploy the new system until it does everything else the old system does. (The old system took five man years to develop in the bad old days of EJB 1.1.)

Getting Into Scrum


Categories: |

At Vita Rara we're beginning to use Scrum to manage our software projects. Our first pure Scrum project is going to be a SaaS Scrum tool. Stay tuned for more on that as we make progress.

We're currently starting to use Scrum to manage our Quadran project. We have identified a client to act as our model customer, and have explained the Scrum process to them and they have bought in.

Groovy Works 0.1 Release


Categories: | | |

Groovy Works has been the benefactor of a lot of development this past week. With upgrades for better class caching, better utilization of the GroovyClassLoader, and integration with Groovy-1.1-beta-3-SNAPSHOT and Spring 2.

Google Code Project and SVN Access

I have moved Groovy Works to Google Code. To get the latest release please see the download section on Google.

Quick Start Directions

  • Download the current release from Google Code.
  • Unzip it in a directory: tar xfzv groovyworks-0.1.tar_.gz
  • Change directory to the groovyworks-core directory: cd groovyworks-core
  • Install the Groovy Works artifact with Maven: mvn install
  • Change directory to the sample application: cd ../example-app
  • Run the application with the Jetty plugin: mvn jetty:run
  • Point your browser at http://localhost:8080/groovyworks/

To use the plugin in your Struts projects you'll need to remove the standard Struts Spring plugin. Groovy Works provides all of the functionality of the existing Spring plugin.

The More I Use Struts 2 the More I Like It


Categories:

It's a quiet Saturday and I'm working. Yea, I know some people would scoff at that, but lately my office and business life during the week are so hectic I can't get into that "place" where development just flows.

Well, today I'm the only one in the office and I'm getting development done. I'm tackling a very tricky screen in Quadran, and Struts 2 is making it a joy. The more I use Struts 2 I realize that a lot of development and thought has gone into solving real web developer needs. When I think of some new feature I'd like in Struts 2 I frequently find that it's already there.

I've started using the "method" property on submit buttons. I know I'm late to the party. This is just so neat. I used to use hidden properties and switches to get to the right logic. Now, just set method on the <s:submit> tag, and voila! I'm in the right place in my action.

Compiling JasperReports JRXML Files with Maven


Categories: |

I recently started using JasperReports in Quadran. I'm using Maven to manage the Quadran project, and I wanted the JasperReports to fit into the process like everything else.

There is a Maven plugin in the Mojo collection for compiling jrxml files. Currently the plugin is in the sandbox, so you will need to check it out of Subversion and install it yourself in your local Maven repository.

ApacheCon US 2007: Using Groovy with Struts 2


Categories: | | | |

I received an email from ApacheCon today. They have accepted my Using Groovy with Struts 2 training session.

Using Groovy with Struts 2: A hands on half day training session. Learn how to use Groovy with Struts 2. Topics covered will include: Integrating Groovy into the Struts 2 Maven archetype; implementing actions, and service beans in Groovy; using Spring to wire Groovy service beans and action classes; using dynamic Groovy actions that do not require a server restart; writing Data Access Objects in Groovy and using Spring based transaction support with Java Persistence API (JPA).

I don't have scheduling information yet, but I believe it will either be on November 12 or 13. Stay tuned for more information.

What would you want in a Struts 2 cookbook?


Categories:

I'm seriously considering writing a dead tree Struts 2 cookbook. What types of recipes would you like to see? Beyond what is already in my cookbook I've been thinking of the following:

  • Integration with other tools:
    • Spring & Spring MVC
    • Hibernate, iBatis, JPA
    • JSF (integration and migration)
    • Guice
    • SiteMesh
    • Others?
  • Architecture
    • Using "modules" to break up a large project
    • Using layers
    • Using Spring as architectural glue

Creating a Login Interceptor in Struts 2


Categories: | |

Controlling access to web resources with a a login process is a common use-case. Implementing this using an interceptor in Struts 2 is very straight forward.

The parts of the solution:

  • An interceptor class,
  • An interceptor definition in our struts.xml file,
  • An interceptor stack that uses our interceptor in our struts.xml file,
  • A global result in our struts.xml file,
  • A JSP page to accept the username and password,
  • A service bean to process our user's login attempt,
  • A way to wire our service bean to our interceptor.

ApacheCon 2007 US Submissions


Categories: | | |

I've submitted three proposals for talks at ApacheCon 2007 US, login to see the proposed sessions and give feedback on them.

I've never submitted a proposal to do a presentation at a technical conference before. So, this is a first. I've done a lot of training and mentoring, but never worked for an employer who saw sharing the knowledge as something of value they wanted their employees doing. (It's good to be self-employed now!)

Syndicate content