No, you do not need to pay Oracle or anyone else if you write commercial programs in Java.
The companies that you mention: IBM, RIM, Amazon, Sony, all created their own implementation of a JVM: IBM has its own JVM for servers and PCs, RIM created a JVM for Blackberry devices, Amazon created a JVM for the Kindle, and Sony created a JVM for Blu-ray devices.
If you want to create a JVM yourself and you want to officially call it "Java", then you have to pass compatibility tests and pay a license fee to Oracle.
You may have heard from the recent news that Oracle is suing Google over their Android operating system. Android is not Java, but it is a virtual machine (the Dalvik VM) that works a lot like Java, and you use the Java programming language to program for it.
Google never licensed Java from Oracle, and now Oracle is accusing Google of using patented ideas in their Dalvik VM without a license.
Unless you're going to write your own JVM and use patented ideas from Oracle or other software companies, you'll not have to pay anyone anything.