Java sound doesn't work under Linux

I've found my own answer. From the list of things you should'a learned in Kindergarten:

If you have a second sound card in your box, like one that didn't originally work with Linux and caused you to start using the built-in support on your motherboard, then you will probably not realize that Java audio support goes to the sound card you aren't using. What that means is that even though all of my other audio was going to the card I activated using the mixer in the system tray, Java decided to route its audio to the other card.

So all along the audio actually was playing happily. I just couldn't hear it because it was playing on the Sound Blaster XFi card and I had my speaker plugged into the motherboard's audio port. I apologize if I sound smug but I'm frustrated and not having much fun especially after seeing that a serious issue can get voted down leaving the answer to that serious issue hidden to others facing the same woes.

I'm not slamming Linux, Fedora or Java. I'm just trying to understand why something that should be simple has caused such complicated research. I figured this out almost by accident as an article tipped me off that Java audio support might actually pick a different driver to route audio.


Curiously enough, a fix for me was to add a config file ~/.alsoftrc with the contents:

[pulse]
allow-moves=yes

The java application in my situation (Minecraft on Xubuntu 14.04 LTS) refused to use the audio output that actually worked (digital audio hdmi) and instead defaulted to something that didn't exist, analog audio.

Just putting this here for the next person wondering why java won't do sound correctly.