Total Pageviews

Wednesday, January 24, 2007

Release of IntelliJ IDEA Maven-2 Integration plugin 1.2.2

This is a bugfix release. The issue tracker is now hosted on JetBrains official JIRA site.

Release Notes - Maven-2 Integration
Version 1.2.2

Bug

  • [MAIDEA-46] - Multiple values (separated with spaces) in MAVEN_OPTS env variable causes build
  • [MAIDEA-47] - No possibility to declare JVM options (eg. -Xmx128m)

New Feature

  • [MAIDEA-48] - Add "site" phase to list of filtered phases

Release of IntelliJ IDEA Maven-2 Integration plugin 1.2.1

Well, the child now has a name: MAIDEA

Release Notes - MAIDEA - IntelliJ IDEA Maven-2 Plugin - Version 1.2.1

Bug

  • Environment errror when executiong jetty:run goal
  • InvalidDataException when settings.xml contains reference to settings XSD

Improvement

  • Provide better error handling (was: NullPointerException when running any phase)
  • Maven options should be assignable for each POM
  • Integrate Maven Embedder (don't require a preinstalled Maven)

New Feature

  • Show/Edit Maven options in tool window
  • Show/Edit Maven command line options in tool window
  • Provide "Open POM" popup menu entry in Tool Window when POM is selected
  • Allow opening of POMs with double click on POM in Tool Window
  • Have option to filter out uncommonly used phases

Task

  • Update Build documentation

Tuesday, December 05, 2006

JAMon to monitor performance of Java programs


I discovered a nice open source monitoring API called JAMon, which aggregates the monitoring results and performs the calculation in memory. It claims to do this in a very fast way, so you can use the tool even in production environment.

It comes with a very handy and useful web application for viewing and querying the statistics.

Combined with AspectJ anyone is able to insert performance monitoring code into an existing application without touching the existing code.

Sunday, November 26, 2006

Generic typesafe DAOs with Hibernate and Spring AOP


I am currently working on a JEE-5 project using Spring and EJB3/Hibernate. When it comes to encapsulate the access to a database the DAO pattern is used. But it has some drawbacks:

If you want to write a typesafe DAO you must repeat yourself over and over again, writing almost the same DAO code for each and every business object. Of course, you can make the DAO a generic one, but then you are loosing type safety. But there is a better way since JDK5 introduces generics.

At the W-JAX in Munich Adam Bien talked about a very good article on IBMs developer site called "Don't repeat the DAO". If you want to implement a generic and typesafe DAO using Spring and Hibernate you have to check it out at:

Another good example using plain Hibernate/EJB3 can be found on the Hibernate page under http://hibernate.org/328.html.

Sunday, November 19, 2006

Using Maven Embedder and logging almost drove me nuts


I was recently experimenting with the maven embedder component (Version 2.0.4) to embed Maven into IDEA using the embedder API.

Somehow I called the setLogger(...) method AFTER I called maven.start(). This almost drove me crazy, because I didn't get any output. The trick is, to call the setLogger(...) method before a call to maven.start(), e.g. just like this (as described in the maven docs, see http://maven.apache.org/guides/mini/guide-embedding-m2.html):


MavenEmbedder maven = new MavenEmbedder();
ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
maven.setClassLoader( classLoader );
maven.setLogger( new MavenEmbedderConsoleLogger() );
maven.start();



It seems that it is currently (in Version 2.0.4) not possible to set the logger after the embedder was started.


Maybe this is helpful for others.

Tuesday, November 14, 2006

Tacx and the right contact pressure between tire and roller


Well, the summer season of cycling is over and I wanted to start practicing on my Tacx roller trainer again during the winter.

So I mounted my bike back on the trainer and started the virtual cycling. But comparing to my results of the last winter season something was totally wrong. My times were incredible slow and I had the feeling that I spent way too much power to drive as fast as the rides from last winter.

So I started digging the internet for the solution of my problem and found something interesting in a german cycling message board http://www.imagic-liga.de/n_forum/viewthread.php?boardid=4&thid=703

The pressure between the tire and the roller was incorrect! Here is what you have to do to determine the correct pressure:

  1. Start Catalyst
  2. Slope=0
  3. Accelerate to 40 km/h ~ 25 mp/h
  4. Let it roll out
  5. After approx. 10 seconds the velocity should be 0 km/h. In that case the contact pressure is correct
  6. If the tire is still rolling after 10 seconds the contact pressure is too low
  7. If the tire stops earlier the contact pressure is too high

Monday, November 13, 2006

Attended W-JAX in Munich

I attended the W-JAX in Munich from 2006-11-06 until 2006-11-09. Lots of great speakers with some very good sessions about JSF, EJB3, Application Architecture Management, Agile Development and more.

Sunday, November 12, 2006

Release of IntelliJ IDEA Maven-2 Integration plugin 1.1


This version is a feature and bugfix release. Please checkout the release notes below and also the updated documentation on http://quebbemann.kicks-ass.net/idea-maven-plugin/usage.html

Important note:

Before
version 1.1 of the plugin, Maven was called via the start script
provided with the normal Maven installation. In order to get better
access to the running Maven process Maven now is called directly by
starting a Java process. This for example allows terminating the
running Maven process by the user.

Change notes:

Bug

  • Sorting of goals should not move Phases node from top position
  • Spaces in pathname of POM file causes build failure

Improvement


New Feature
  • Add a "Cancel Build" button to the build output window
  • Add a "Close Output" button to build output window
  • Add a "Pause Output" button to build output window
  • Add a "Rerun Maven" button to build output window

Task

  • Remove references to non-public Maven repository

Thursday, November 09, 2006

Release of IntelliJ IDEA Maven-2 Integration plugin 1.0.1


Version 1.0.1 is a bugfix release:
Bug
  • Removed reference to parent POM
Improvement
  • Minor changes in build process with Maven
  • Java sources for corresponding XML schemas are generated during the build using the xmlbeans-maven-plugin
  • Updated documentation on http://quebbemann.kicks-ass.net/idea-maven-plugin
  • Added more screenshots

Wednesday, October 25, 2006

Release of IntelliJ IDEA Maven-2 Integration plugin


Today I released a Maven-2 Integration plugin for IntelliJ IDEA 5.x and 6.x. It's in a very early state but already usable. Please checkout the plugin homepage for more details and screenshots.