How to keep a camera's up based around a single point?

How would I get the up-axis of a camera to be based around a certain point? I’m mostly having trouble recalculating the camera’s left direction vector. For example:

[java]
… getCamera().setAxes(???, getCamera().getLocation().subtract(centerPoint).normalizeLocal(), cam.getDirection());
[/java]

Also, is there anything I should change with the direction or getting the new “up” vector?

I’m always surprised how quickly things get complicated:
http://hub.jmonkeyengine.org/javadoc/com/jme3/renderer/Camera.html#lookAtDirection(com.jme3.math.Vector3f,%20com.jme3.math.Vector3f)

setAxes() is one of those methods that I wish the javadocs said “You probably don’t mean to use this method.”

@pspeed I have no idea how I didn’t remember using that in the original Lexicon. That’s the method I used to make the player’s up-axis agree with the vehicle they were in, so you wouldn’t be upside down in your car. Thanks!