I wan't to use a USB controller (primarily X-Box 360 wired) as an optional input method in Java. I want to be able to use the face buttons (A, B, X, and Y), the analog sticks, the triggers and bumpers, the start and select buttons, and the D-Pad, or their equivalents on other controllers.

I would also like to know how to use the vibration features on controllers that support this, if Java can support it as well. I am open to the thought of downloading other libraries but I'm not sure how to use things such as JInput as the tutorials available don't seem to teach me as well.

Thanks in Advance,