The only comparable platform to Java is .NET and if your goal is to avoid money hungry patent/copyright-abusing companies, switching from Java (which has been open source for years) to .NET (partly open source for, what, one year?) is not really a great trade.
And no, dynamically typed languages are not replacements, nor are C/C++. To be a Java competitor you need to match its feature set, which is very hard given how large it is. And you need to be both garbage collected/statically typed. Only Go is even in the right general area, but Go is where Java was around 1998, so that's not really compelling.
The rather boring reality is that Java is safe unless you're an unusually rich corporation who is making something kinda-but-not-really Java. That does not describe most users.