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. I started my journey with Java 1.1 with Thread and JDBC programing in 1998 as I worked for merlin.pl. In 1999 I've passed Java Programer Certificate for Java 1.2, and was solution architect of merlin.pl infrastructure when we was moving from pl/sql to J2EE. It was great performance optimization with 10 times more req/sec than in requirements and 85 times faster as original solution.

Currently I work as Expert Software Development Java at F.Hoffmann-La Roche. The company was founded in 1896 and today, Roche employs over 80.000 people. After work I'm involved in activities related to Scala/Lift, Ruby/Rails/Merb, Python/Django. This is because I try to be pragmatic also I'm focused on application performance and tuning with success in my daily work.

My Yoda's motto: Do, or do not. There is no try.