Agile Projects Using the Spring Framework – Training

Lots of things going on behind the scenes at FirstPartners. One of which is the Spring Framework training course that we’re giving on Wed 30th May in Bewley’s Hotel, Ballsbridge, Dublin. Interested in going? – you can book here (via Trigraph). Can’t make it? We’ll probably do a follow up.

What are you missing? Apart from the crash test dummies (below), there’s loads of lego blocks, Swiss mountains, trains crashing through walls and a Kangaroo. (Spring, Geddit?). You might even learn something about Java along the way.

Agile Projects using the Spring Framework
Executive Briefing
Delivery: Public or In-house
Course Length: 0.5 days. Optional mentoring / follow up session if required by Client
Course Approach: Lecture, discussions
Level: Beginner / Intermediate

Dummies

Course Description:

Spring, with good reason, is the most actively used framework in the Enterprise Java world today. The half- day briefing shows the problems that Spring can solve for your projects, core Spring concepts such as Inversion of Control and integration with existing Enterprise Java technologies for database access, messaging and web deployment. The briefing also shows how to use Spring to make your projects more agile, improving quality and reducing deployment time.

Course Objectives:

  • Following completion of this course, students will be able to:
  • Understand why Enterprise Java is the mostly widely used corporate technology, and how Spring both simplifies and improves this technology.
  • Understand core Spring concepts such as Inversion of Control (IOC), configuration , deployment and testing.
  • Describe how to integrate Spring with Enterprise Technologies such as Databases, Messaging and Web 2 frameworks.
  • Understand how Spring can make your projects more agile and the benefits it brings to your organization
  • Map out a plan of how to introduce the Spring framework to existing systems.

Course Syllabus:

Section 1: The Problems That Spring Solves

  • Introduction
  • Who are you? Who are we?
  • What is Spring?
  • What is (Enterprise) Java?
  • The problems with Enterprise Java
  • Why Enterprise Java is costing you money.
  • The Deployment Scale
  • Java Classes and Objects
  • Just enough XML to get by
  • Core Spring – Inversion of Control pattern
  • Spring Configuration and my First Spring App
  • Deployment via Web, Enterprise Java and Command line
  • Spring on other platforms (.Net , Ruby and Groovy)
  • Alternatives to Spring
  • Spring and Java 5 – easier development
  • Starting out – just a little Spring in your Step.

Section 2: Core Spring and Enterprise Spring Integration

  • Spring Web Framework (MVC)
  • Spring Web with Struts , JSF , XSLT , Tiles and GWT (Google Web Toolkit)
  • Spring and Ajax in Web 2 Applications.
  • Spring Webflow
  • Spring and Databases (Hibernate and JDBC)
  • Spring and Messaging (MQ and JMS)
  • Spring Remoting and Web Services
  • Aspect Orientated Programming (AOP)
  • Transactions in Spring
  • Appfuse – ready to roll Spring projects with Maven
  • Administration of your Application using Spring and JMX
  • Scheduling using Spring and Quartz
  • Spring and Acegi Security

Section 3: Practical Spring – make your project more Agile

  • The problems with IT Projects
  • What is Agile
  • Spectrum of Agility
  • How Spring makes your project more agile (and your customer happy)
  • Key Agile Practices
  • Unit Testing with Spring
  • Integration Testing
  • Mock Objects
  • Spring IDE
  • Spring and Business Rules
  • Spring and Workflow
  • Alternative Spring configuration.
  • Extending Spring to meet you (obscure) needs.
  • What’s new in Spring 2.5 (and coming up for Spring 3)

Audience:

  • Managers and Project Managers wishing to understand the benefits of adding Spring to their projects.
  • Software developers needing an introduction to Java and the Spring Framework and integration with key Enterprise technologies.
  • Support, Database , Web Designers and other IT professionals needing to interface with Spring and Enterprise Java systems.
  • .Net developers wishing to understand the concepts behind the Spring.Net framework.

Related Courses:
Enterprise Java (Trigraph) and Agile Project Management (Trigraph)

Prerequisites:
Some high level exposure to the Java, .Net or other Object Orientated language would be beneficial but
not necessary.

Spring Belfast and Spring Dublin – two of the biggest Java events of the year

No apologies for over simplifying this :

  1. If you’re in business you need computer systems to support your team. Systems to find previous dealings with a customer, systems to allow your team to work together, systems to stop people finding out things that they shouldn’t.
  2. Once your business passes the 100 employee mark and is heading for ‘Enterprise’ scale, chances are you need custom software written just for you, in addition to he ‘shrink wrap’ stuff you’ve been able to get away with until now.
  3. Most custom Enterprise software is written in (or uses a large element of) Enterprise Java.
  4. Enterprise Java is hard to get started with – it’s a big and complex framework because it solves big and complex problems. The Spring framework makes it easy.

spring logo

OK, so we’re Spring nuts. But nuts only because it’s solved problems for FirstPartners over the last 4 years. What we like:

  • Spring allows you to use just enough Enterprise Java to solve your problem
  • Spring complements Enterprise Java, not replaces it.
  • Spring gives you a gentle slope to using Enterprise technologies.
  • Spring works well with Java, Oracle, .Net , (J)Ruby and pretty much any mainstream technology – including most of the widespread Java Frameworks like Struts and Hibernate.

So you wait ages for one Spring Event in Ireland, then two come along at once. We’ve written about Rod Johnson speaking in Dublin on Tue March 11th. Now there is a full day Spring Event in Belfast the day before (March 10th). And it’s sponsored by Momentum NI, so it’s free. And the Hilton Hotel is right beside Belfast Central train station, so it’s easy to get to from Dublin.

The full agenda is here (more details below), but given the importance of Spring to the Enterprise world, and the fact that the top four Spring guys are speaking, we reckon that it the Enterprise event of the year. The booking form is here.

Spring Ireland 2008

10th March 08:30 10th March 17:30
Hilton Belfast, 4 Lanyon Place, Belfast (Beside Central Train station)
SpringSource is proud to announce Spring Ireland 2008. Join us for a free one-day conference with presentations from the SpringSource team including a keynote from Rod Johnson.

Keynote: Spring into the Future – Rod Johnson

The Spring Framework began in 2002 with Rod’s best-selling Expert One-on-One J2EE Design and Development; one of the most influential books ever published on J2EE, Rod is recognised as one of the world’s leading authorities on Java and J2EE development.With the rapid expansion of SpringSource and move to new corporate HQ in Silicon Valley, this is a rare UK opportunity to hear Rod provide his views and explore the future of J2EE application development.

What’s New in Spring 2.5 – Sam Brannen

Sam is a lead architect at SpringSource and one of the most experienced developers within the organisation.This session provides delegates with an overview of the new features available in Spring 2.5. Specifically, highlighting the simplified and extensible configuration support provided via configuration annotations and new XML configuration namespaces, new Java 6 support, updates to Spring AOP, improved JDBC and JPA support, annotation-driven web MVC controllers, the new annotation-based TestContext framework for unit and integration tests and more!

SpringSource Professional Services – Greg Southey

Greg has built SpringSource’s UK Professional Services organisation into the leading Spring consultancy business in the world.

This is a brief resume of some of the 97 major projects completed by the UK Professional Services team in 2007. Delegates will hear about the business drivers behind some major development projects, the business issues faced and how they were resolved in partnership with the client.

Spring as a Full Stack Web Framework – David Syer

As Principal Consultant at SpringSource, Dave leads the way in the understanding of satisfying business requirements using the Spring Portfolio. His easy manner cloaks a prodigious knowledge of application development.

This session explores the “full stack” web framework trend and answers the question: how does Spring stack up? This session defines what a full-stack web framework is, then provides a fair technical comparison between a Spring-centric web development stack and the alternatives. Delegates will head about the feature-set of modern “full stack” web frameworks, and what Spring has that differentiates itself from the pack.

Spring in Ireland – Ian Graham

Ian Graham, Momentum, will explore the use of Spring in Ireland and introduce case studies from companies who are using the Spring family of products.

Round Table Discussion – Rod Johnson, Rob Harrop, Dave Syer, Sam Brannen & Greg Southey

Your chance to ask Rod and his team anything that’s on your mind regarding Spring!

Mr Spring, Rod Johnson, Speaking in Dublin March 11th

I’ve been lucky enough to have been using Spring for just over 4 years. If you don’t know what Spring is, it solves a lot of problems in complex Enterprise Java Systems. And it makes those systems more configurable; Spring makes your code like Lego blocks. Blocks that you can take apart and use again and again (no matter what the underlying technology is). And because you can take it apart, it makes your code easier to test. And testing is a good thing – the earlier you find bugs , the cheaper they are to fix.

spring.PNG

Get the feeling that I’m a bit of a Spring fanatic? Wasn’t always that way. It took me two projects where other people had choosen Spring to convince me. And did I mention that it’s one of the most in demand skills in the Java world?

Rod Johnson (aka ‘Mr Spring’) is speaking in Dublin at the Westin hotel Dublin on the 11st March. It’s fairly central, and it’s a breakfast briefing, so you don’t even to have to arrange the day off work. More details on the event are on the Kainos Website.

Update: The registration form to sign up for the event is here.

Irish Java Technologies Conference – Live

I’m dipping in and out of the presentations at the Irish Java Technologies Conference (IJTC Dublin), so I’m not going to get to see the top 10 speakers. I will update this as it goes along, but my notes on the conference so far are ….

  • Bernie Goldbach came all the way from Tipp on the off-chance that he would get 3 minutes with Joel Spoelsky. Given that it’s a 4 and half hour round trip, I’m glad that he got his interview.
  • Joel, as ever, was a very good speaker. His message for software developers; soft rounded corners matter. Think iPhone instead of Samsung brick.
  • David Syer of Interface 21 was talking about what’s next for Spring (2.5 and 3.0). A lot of good stuff coming up; support for the latest Java Enterprise specs, Webflow , OSGi (deploy bundles , not applications), configuration using annotation instead of XML
  • Shaun Smith of Oracle. Covering building JPA Applications (Java and Databases) using Eclipse and Java. Now, I’m not a great fan of Toplink (I prefer Hibernate) , but the open source work including the work on the Eclipse IDE , and it’s support of the JPA (Java Persistence Architecture) standard, and it’s ability to transform Java Ojbects into loads of things (e.g. XML instead of Database Tables) is making me want to take a 2nd look.
  • Caught talking in the Lobby : Shaun of Oracle Toplink and Emmanuel Bernard of Hibernate. I was vaugely disappointed these two didn’t come to blows (being from rival projects). There were actually nice to each other and exchanged business cards. Fascinating conversation though …
  • James Strachan , Iona and Apache, speaking about messaging patterns. He takes the bean soup that is messaging and integrating your applications and makes it seem really simple. He’s also talking about Apache Camel, ActiveMQ and ServiceMix

Other People Blogging about this:

Links to our JBoss jBPM (Workflow/ Business Process Management) presentation slides to follow shortly …

Enterprise Java Presentation , Stephens Hotel , Dublin

You may remember we did the Enterprise Java presentation at DCU back in October for the wireless skillnet in Ireland. We’re doing a follow up presentation, this time in Central Dublin, on the 22nd January. The audience is mainly business people with some sort of interest or connection with technology.
Irish Dev has more details.

The topics covered include:

  • What Problem are we trying to solve?
  • Enterprise Java Architecture Overview.
  • Benefits to the Enterprise.
  • Alternatives (.Net , PHP , Oracle , Lightweight Java Frameworks , scripting)
  • Vendors (IBM, Oracle, Sun , Bea , JBoss and SAP)
  • Market Trends – Resource availability (can we get the people to do this?)
  • Enterprise Web 2.0 and Service Orientated Aritecture (SOA).
  • Integrating with other Systems ( Legacy Systems, Oracle etc)
  • Enterprise Java Beans 3 (EJB3)
  • Middleware (MOM, Rule Engines, Workflow)
  • Security – Application and Server Level including Java Access & Authorization Service (JAAS).
  • Frameworks (Struts , JSF, ADF, DWR, Spring, Hibernate)
  • .Net interoperability
  • What’s next for Enterprise Java?

Struts 2 is the new Mini

No matter what car you drive , the chances are it was influenced by the Mini. Introduced in the UK in the 1960’s a whole generation of families was crammed into a car that popularized the notion of front wheel drive. While small , it was practical and drove so well it even starred in films such as The Italian Job. Recently, a more modern version was released with none of the parts but all of the spirit of the Original.

Mini

We’ll come back to the Mini, but if you build websites using Java, then at some point you have used Struts. The original Struts is proof that a framework / project / product doesn’t have to be the best to be the most widely accepted. It just has to be in the right place at the right time, and ‘do what is says on the tin’ – in this case a fairly useful implementation of the ‘Model-View-Controller’ design pattern.

So what’s the link? Seeing the original Mini from the outside may bring a smile to your face, but on the inside it’s cramped and unfortable. You may have happy memories of websites you built using the original Struts, but lately your thoughts have been straying to more modern frameworks, perhaps with Ajax and integration with Spring built in.

This is where Struts 2 comes in. Like the Mini, it has (almost) none of the parts , but all of the Spirit of the original. It’s based on Webwork which sounds scary, but most Struts Drivers will be able to climb in , find the Struts.xml file and get the engine running within minutes. Struts 2 is easier to drive (JavaBeans instead of Action Forms), more powerful (it can use Ajax and JSF) and comes with more optional extras (e.g. it’s integration with other frameworks like Webwork and Spring).

Best of all the Struts team have a clear migration path between the old and new Struts. You can use both side by side in your garage application, and change over the parts piece by piece. Spare parts for the original Struts will still be available for quite some time, both from the original team and the large dealer developer network that has built up around the framework.

What do you think? When Are you going to give Struts 2 a try?

Must not Copy and Paste …

I must not copy and paste program

I must not copy and paste program

I must not copy and paste program

….

You get the drift. Currently doing a Struts – DWR – JBoss Rules Web application, and there is way too much copy and paste programming going on in there. It’s a web page that needs to pass information to a JBoss Server – how difficult can that be? Maybe it was interesting the first time, but 7 years on the buzz is no longer there.
Grails Logo

I was tempted by a non-Java solution (Ruby on Rails , or JRuby) ,but a similar approach within the Java mindset) is Grails (Groovy on Rails). It gives you all the enterprise Java frameworks (Spring , Ageci, Hibernate) , but with a rapid turnaround.

Oh dear … too many web frameworks …. head hurts … only time to learn one … more head pain … must make mercenary decision about which will be the likely market leader.

Watch this space. 

(For the record the problem isn’t DWR which is excellent, but more the version of Struts / JSP that is being used. )