As you can read in thsi thread http://www.jmonkeyengine.com/jmeforum/index.php?topic=9223.0 I had a little problem with Matrix4f.
The problem lies in
if ( FastMath.abs(fDet) <= FastMath.FLT_EPSILON )
throw new ArithmeticException("This matrix cannot be inverted");
When zooming in ortho by resizing the frustum this will break the picking code as for a very big frustum the determinant gets smaller than FLT_EPSILON.
As Irrisor has pointed out (and after some testing I agree with that) this call might as well be replaced by a check against zero.
What do you think?