The net as a whole is a much better place to gather homework assignment information, but if you are somehow restricted to the ranch, try reading the last month or so of this forum. Exactly the same sort of question has been discussed multiple times. Bill
Jini isn't about embedded systems - unfortunately that perception is out there because for some reason every answer to "tell me what Jini does" uses Jini in embedded systems as the example.
Jini is like "super-RMI" - it provides dynamic discovery, "self healing" (i.e. - if one provider of a service isn't able to be accessed anymore, it will find another), and provides interfaces for clients and service providers to talk to each other.
JNDI just provides a directory service - a way to look up things. It doesn't provide a standardized way for a client to "talk" to a service.
You can replace the "lookup" service in Jini to use JNDI, and you can bind Jini services in JNDI. They aren't mutually exclusive technologies.
Write once, run anywhere, because there's nowhere to hide! - /. A.C.