JINI
- FAQ 
Question
What is Jini™ technology?
Answer
Jini technology is an architecture for the construction of
systems from objects and networks. Jini technology provides a
simple infrastructure for delivering services in a network and
for creating spontaneous interaction between programs that use
these services regardless of their hardware/software
implementations. Any kind of network made up of services
(applications, databases, servers, devices, information
systems, mobile appliances, storage, printers, etc.) and
clients (requesters of services) can be easily assembled,
disassembled, and maintained on the network using Jini
technology. Services can be added or removed from the network,
and new clients can find existing services - all without
administration.
Question
Who are the architects of Jini technology?
Answer
Under the leadership of Bill Joy and Jim Waldo, some of the
best minds in distributed computing worked on the Jini
technology project. The team included Ann Wollrath, the
inventor and designer for Java[tm] Remote Method Invocation
(Java RMI), Ken Arnold, the designer of JavaSpaces[tm]
technology and co-author of the book, "Java programming
language" with James Gosling, and Bob Scheifler, a
principal of the X Consortium and designer of Jini lookup and
discovery.
Question
What are the benefits of Jini technology?
Answer
Jini technology is all about simplifying interactions on a
network. The Java platform started it, now Jini technology
furthers it. Simplification means improved productivity, cost
savings, and ease-of-use. It will allow ISVs, IHVs, and
component manufacturers the ability to expand into new
markets, offering network-based delivery of innovative
products and services. Software written to the Jini
specification also allows traditional service providers the
ability to dynamically add and manage network services.
The Jini architecture is also designed to handle the network
outages and changes of configurations that happen in real
networks over time.
Question
How does Jini technology work?
Answer
The Jini architecture lets programs use services in a network
without knowing anything about the wire protocol that the
service uses. One implementation of a service might be XML-based,
and another RMI-based, and a third CORBA-based. The client is,
in effect, taught by each service how to talk to it. A service
is defined by its programming API, declared as a Java
programming language interface.
When a service is plugged into a network of Jini
technology-enabled services and/or devices, it advertises
itself by publishing a Java programming language object that
implements the service API. This object's implementation can
work in any way the service chooses. The client finds services
by looking for an object that supports the API. When it gets
the service's published object, it will download any code it
needs in order to talk to the service, thereby learning how to
talk to the particular service implementation via the API. The
programmer who implements the service chooses how to translate
an API request into bits on the wire using UPnP, RMI, CORBA,
or a private protocol.
In other words, the Jini architecture uses objects that move
around the network to make each service, as well as the entire
network of services, adaptable to new strategies over time.
Question
Will Jini technology support legacy systems?
Answer
The Jini architecture lets you integrate legacy systems
without modification. The basic approach requires only that
somewhere in the network there is a Java virtual machine that
will execute the required Jini technology on the legacy
system's behalf. This is one of the powerful features of the
Jini architecture -- a legacy system enabled in this fashion
is a full-fledged service in a Jini technology system, not a
second-class citizen. If you prefer, you can instead add some
small amount of code to the legacy system to make it directly
Jini technology-enabled, but this is not necessary.
Jini technology can run on any communication protocol, on any
device, for any service, ensuring compatibility and
reliability for hardware and software that has been build
according to the Jini specifications.
Question
Is Jini technology available now? How do I get it?
Answer
Yes. The source code and the specifications for Jini
technology releases are available on the web at http://www.sun.com/jini/.
You will be required to accept the terms of the Sun Community
Source License (SCSL) in a click-through process.
Question
How is Jini technology being used today?
Answer
Companies are using Jini technology to build communities of
services out of simple pieces of hardware and software that
have been built according to the Jini specification. Examples
range from business enterprises, home networking, and
battlefield implementations, to a Jini technology-enabled car.
Question
What other technologies compete with the Jini architecture?
Answer
None. The Jini architecture is the only technology in the
marketplace that moves objects around the network to hide wire
protocols as implementation details. The API that defines a
service is simply a list of what the service does. How it does
it is up to the implementation. Existing technologies rely on
agreeing, not only on what remote objects will do, but also
how requests are transmitted on the wire. Only the Jini
architecture makes the details of "how" a service
uses the network into an implementation detail that can differ
between implementations of the same service without changing
the client code.
Question
How does Jini technology fit with complementary network
technologies?
Answer
There are many complementary technologies that can take
advantage of the capabilities of the Jini architecture.
Because the Jini technology hides the details of how a service
API is implemented, the Jini architecture can be used with a
variety of network technologies to integrate them into a
single network of services that clients use without any
modification.
The following paragraphs are examples of a few of them:
-
Universal Plug and Play (UPnP)
is a protocol for data transmission focused on developing
XML standards for home networking, operating primarily at
the connectivity level of a network stack focusing on
devices. Once devices connect to a network, there is a
need for an advanced service delivery architecture that
can deliver services and a higher order of
interoperability to networked devices. This is where Jini
technology and UPnP can work together.
In a Jini technology-enabled network of services and/or
devices, a UPnP device would be published as a service
that implements the relevant API by translating method
requests into appropriate XML on the wire, and translating
any returned results into the terms of the API.
UPnP works in static systems where every client can be
told, in advance, how to talk to every service
implementation. Because the Jini architecture relies upon
telling the client how to talk to a new service via
downloaded code, a network of Jini technology-enabled
services and/or devices is able to accommodate changes
over time with greater flexibility.
Any connectivity scheme, including UPnP, can interoperate
with Jini because Jini technology is wire-protocol and
transport-protocol neutral. The Jini architecture also
allows UPnP devices to work in the same network as devices
using other protocols.
-
SLP (Service Location Protocol)
is a mechanism for dynamically finding services on the
network based on a particular wire protocol. SLP defines
services in terms of string names. As with UPnP, SLP does
not use mobile code, and so clients must know, in advance,
how to talk to any service they will ever use. A bridge
could publish SLP services into a Jini technology-enabled
network.
-
Bluetooth is a technology
specification for establishing wireless network
connections using low-cost, short-range radio links
between PDAs, laptops, mobile phones, and other wireless
portable devices. Because it establishes network
connections, it can be used as a transport mechanism in a
network of Jini technology-enabled services and/or devices
transparent to clients who connect to services via
Bluetooth.
-
Firewire is focused on making it
easy to build a high-speed local network of consumer
devices and computer peripherals in a home. Because
Firewire is a networking technology, like Bluetooth, it is
another way that a network of Jini technology-enabled
services and/or devices can be transparently connected to
a larger network.


JINI - FAQ
|