The java launcher saves the PID of the shell parent of the Java process instead of the PID of Java process
ps aux | grep java
hudson 3196 0.0 0.0 4096 596 ? S 12:44 0:00 /bin/sh -c /usr/lib/jvm/java-6-sun-1.6.0.24/jre/bin/java -server -Xms2g -Xmx2g -XX:MaxPermSize=512m.... .catalina.startup.Bootstrap start
hudson 3199 92.7 22.5 3026856 914792 ? Sl 12:44 0:48 /usr/lib/jvm/java-6-sun-1.6.0.24/jre/bin/java -server -Xms2g ....catalina.startup.Bootstrap start
cat log/nuxeo.pid
3196
should be 3199.