I can set the rotation:

Vector3f axis = new Vector3f(0, 1, 0);

float angle = 180;

Quaternion rotQuat = new Quaternion();

rotQuat.fromAngleAxis(angle, axis);

cam.setLocalRotation(rotQuat);

I can read the rotation:

Vector3f c = cam.getLocalRotation().getRotationColumn(2).normalize();

System.out.println("x:" + c.x + " y:" + c.y + " z:" + c.z);

It would be great to get (angle_x, angle_y, angle_z)

My problem is,I want to set the cam in the certain direction.

With DebugGameState I found the location and the rotation. But what now?

How can a rotate the cam in the exact position?

Have you looked at the cam.lookAt(Vector3f position, Vector3f worldUpVector) method? Seems like you could accomplish what you're looking for?

Sounds like you prefer euler angles instead of quaternions for your rotations. While it is perfectly possible to convert from quaternion rotations to euler angles, converting back the other way afterwards might not give the expected result because euler angles have a few limitations making them less expressive than quaternions.

Read up on it all on http://www.euclideanspace.com/, and then decide again if euler angles are really what you want.

Then again, I might be totally off the path because I haven't really understood your question in the first place!