Save time, reduce risk, save money,. and headache.
While development methods (Agility) tend to become easier, more effective and reduce the complexity of managing Java Software Development projects; people are still struggling in finding their way through the numerous different kind of Java OS Technology Solutions, trying to compose the perfect fitting reference architecture to build their solution. A reference archtecture provides a proven template (mix) of Java technologies for building a particular bussiness domain solution. Maven Archetype technology helps companies building these Technology Templates, great technology, but first….what should fit in that template… is it reliable, future proof, do these components fit together are they compatible and finally, do they run on your Java Application Server runtime environment?
An example: you need to develop a business solution which demands general requirements like; Web Services connection with guest company (B2B), reporting capabilities to MS Office and PDF, you heed advanced scheduling batch tasking (nightly builds), Webbased interface and finally a company database stored on MySQL. Now, try to find the best fitting reference archetecture; mayby Java Jasper reporting or Apache POI for the reporting part, WS 2.0 JAX-WS for the B2B WebServices communication, or maybe a more ESB service bus technology to fill in your B2B technology like Mule ESB, or maybe Apache Service MIX because of its JSR compliancy, implement and integrate your business process to a LifeRay portal environment, and so on. hmmmmmmmm, headeache slowly comes up on you.
Match the right Maven technology template with your Reference Architecture
By this Blog we try to help you a bit in finding the right technology mixes for different kind of requirement areas, trying to compose reference archetectures for you. They come by example, every example comes with a Maven Archetype which can be unpacked on your computer and produce a project template for you in matter of minutes, without programming. These projects will reference the correct component libraries that will make up the specific reference archetecture you might need. From that point on you can fill in your business logic, not bothering about which technologies to choose, if they perform, if they conflict, etc… and finally if it will run on your production runtime environment.
Every project will contain a set of simple classes that demonstrate the core functionality of every technology, this will help to bring down the learning curve. We will attach per example a set of documentation links that can help you further exploring and studying every enclosed technology.
Before you continue reading we kindly as you to install the following technologies from this install page. These development tools are a prerequisite enabling you to participate in enjoying every example.
This web log is about modern technologies and effective guidelines which will help you develop enterprise Java applications more effectively and bring simplicity back into the world of JEE software development. Key technologies covered on these pages are JSF, EJB3.1, Hibernate JPA which help reducing the complexity of developing Java EE applications significantly. Focussing on JEE 6 compliant application engineering, designed to be deployed on JBOSS 6 application server environments.
I will present the different features and technologies my supply a Maven Archetype per case. With a couple of simple instructions you can generate, build and deploy these exampe projects on JBOSS 6 application server. Read the instructions for downloading every Maven archetype from the Maven instruction page.
Additionally discussing the toolset which will help you managing the complete Agile iterative development lifecycle, like Eclipse, Maven2, SubVersion, Continuum continuous integration, Junit test automation, test coverage and code quality assessment tools like Findbugs, PMD, Checkstyle and Cobertura test coverage. How to setup effective Maven reporting, implement your own technical documentation site generated by Maven reporting and xDoc templates.
Discussing how object mocking frameworks like Mockito can help simulating infrastructure components while unit testing your business logic components.
Finally replacing Log4J logging frameworks by Logback and SLF4J and how you can channel and bridge logging produced by legacy API’s with SLF4J bridging facilities.
The Agile Java subjects that will be demonstrated by example are:
- Developing JSF2.0/EJB3.0/Hibernate JPA 2.0/Mockito/HsqlDB apps with Eclipse/Maven/Continuum running on JBOSS 6.
- Developing Simple EJB3.0 webservice with Eclipse/Maven/Continuum running on JBOSS 6.
- Developing DDD Domain Driven Design app with Naked Objects (Apache Isis) with Eclipse/Maven/Continuum running on JBOSS 6.
- Developing scheduling solution with Quartz with Eclipse/Maven/Continuum running on JBOSS 6.
- Manage your Java App configuration more effectively with Apache Commons Configuration, we deliver an example by Maven Archetype.
- New generation Java LogBack logging and learn how to bridge legacy Commons Logging, Jave Logging and Log4J via SLF4J.
- And more to come…
All these subjects will be accompanied by Maven Archetype projects you can generate, build and run from scratch without any additional effort.
Kind regards and hope we can keep you posted on all the new features on java coming up in the future.
Stay with us…
The Agile team


