A Java Action is run just like a map reduce job, so you don't have any control over which node in your cluster it will on.
I'm not sure whether oozie will honor this. but you can try and set the number of acceptable mapper failures to a high value (say 10), and then throw an exception in your Java action if the execution cluster node is not the on you want (using InetAddress to acquire the local machine name / IP).
Then hopefully (but not necessarily guaranteed), your action will continue to fail on non-desirable nodes, and eventually succeed on the node of your choice.
Somewhat of a hack, but it might work (again it depends on whether you can amend the number of map task failures before the entire job fails - mapred.map.max.attempts
, which is 4 by default)