Archive for April, 2007

Cocoon 2.2 – the empire strikes back ?

Wednesday, April 4th, 2007

Yesterday I was on wjug meeting. The topic of the meeting was about cocoon 2.2. Our speaker Grzegorz Kossakowski is Apache Cocoon PMC, and he shows us cocoon 2.2. which still hasn’t been released.

Here is the list of main improvements.

  • Documentation : most of developer work now is documenting code, new documentation design, comparing to 2.1 version it heroic work done.
  • Blocks – because of sitemaps complication, now application should be divided to block, which should be single focused part. Now block are simple servlet so you can integrate your servlet into cocoon or use cocoon blocks as a servlet
  • Modularity – at last cocoon based application may be smaller than 60M. There is no one cocoon.jar now but you have opportunity to choose which modules you need and include only this few modules.
  • Daisy – CMS system based on cocoon so you can learn from the bests.
  • Springframework Avalon (closed project) was change to springframework, it’s simpler now, and there are many spring beans you can access thought context
  • Maven2 – maven archetypes, builds mechanism and of course repository with cocoon models.
  • AJAX – now every project needs be ajax integrated, and cocoon is not different here. So you may use ajax transformer based on dojotoolkit 0.4
  • Versioning – From now every module will be versioning from 1.0, and cocoon core will be 2.2. every module will be released separately

I will wait for public release, so we’ll se.

Maven 2.0.6 and what next

Monday, April 2nd, 2007

So maven team is on the road now. They realized that waiting for 2.1 as long as for next debian stable release makes that potential user goes away. The 2.0.5 version was released on February 13, and 2.0.6 was released on last day of March. Now 2.0.7 is highly developed and you can download it and build for yourself. By the way the 2.0.4 version was released nearly one year ago (10 April 2006).

In my opinion : marvelous decision.

When you want to migrate to newer version you must consider if your dependency has proper version, because main improvement to 2.0.6 is that it’s now prefer dependencyManagment version over Resolved version. You can check if you should consider this issue.

In your project run

mvn dependency:analyze

important note : it must be 2.0.5 version.

You can have two possible answers one is that’s no differences report. This is good option because you can migrate to 2.0.6 without any problems, Second option is that dependency analysis say something similar

[INFO]  Dependency: group_id:artifact:type
[INFO]          DepMgt  : dependency management version
[INFO]          Resolved: resolved version
 

It means that after you switch into 2.0.6 your build file will be downgraded from resolved version to dependency management version

There are some bug fixes and improvements. You can read about it here http://maven.apache.org/release-notes.html

One last word, there are two option which help you switching from different maven setting

-Dorg.apache.maven.user-settings=/path/to/user/settings.xml : this one switches local setting

-Dorg.apache.maven.global-settings=/path/to/global/settings.xm : this one switches global setting

I think 2.0.7 will be deliver in next one and half month.

 

Good luck maven team.

about me

My name is Sebastian Pietrowski. I've finished Warsaw University as Master degree. During my studies I started work for merlin.pl. The primary language I use is Java but I have also programmed in Python, Ruby and Scala. I worked as a technical solution architect at merlin.pl. infrastructure when we were moving from PL/SQL to J2EE. I engineering a great performance optimized solution that made the application 10 times faster than requirements and 85 times faster as original solution.

Currently, I am working as a Senior Expert at F.Hoffmann-La Roche to help define future roadmap in design and development of Enterprise software at Roche and Genentech and build adoption for new technologies. I'm continuously mentoring new developers, helping them understand how important test driven development is and empowering them to get better at their daily job. I'm involved in many activities which brings new technologies for better and faster development. You can find more details on my LinkedIn profile.

But don’t get me wrong, I am not your typical nerd. I'm a pleasant guy that you can drink a glass of wine with me and talk about a range of topics with. My leisure activities include playing basketball, soccer and listening to music. I try to be pragmatic while staying focused on application performance and tuning with success in my daily work.

My favorite quote from Yoda's and my life’s motto is: Do, or do not. There is no try.