When I looked into Jini a few years ago, I couldn't get over the trouble of finding an appropriate service provider that the user would find reasonable.

For instance, my computer might be within Jini range of three printers, and perhaps my Jini-enabled software can ask which of the eligible printers to use. Great. Now try that with a cash dispenser at a bank.

"Mr. Lybbert, you've asked for Euros, which are available at all our dispensers, I'll name them for you, but since you are only an occasional visitor at our bank, you probably won't be able to figure out what I mean. Pick one, and try to get the money before somebody else does -- but don't grab somebody else's money as that's theft."

OK, the dispensers will probable be physically attached to the single machine. But if that's so, what's the need to "discover" appropriate dispensers for each transaction?

It appears to be useful in this case, where each ATM can run a JVM, and the bank wants the same software running regardless of hardware differences on the ATMs. I realize this kind of low-hanging fruit probably exists in all organizations. But after you've picked it, I'm not sure if there is any other fruit to look at.