Only if you are thinking at the implementation level to you consider that applications must agree on interfaces. The notions that Obje imply in the article indicate things that Jini can do too.
The downloaded code from a Jini service registration is just a simple agreement. It is just some code. It might talk, via a protocol, back to the other end to provide method call level ontologies. Why would you possibly think that this is the only remote capabilities of Java or of the Jini platform?
The downloaded code can do anything you program it to do. It can provide the same sort of reflective interface that Obje implies. Obje looks like a media based discovery mechanism. If I am an Obje entity that can display graphics, then what am I to do with a modbus device that shows the status of 10 switches? Will I know how to read the values of those switches and draw pictures depicting the switch position? Will I know that the switches are dip switches or toggle switches? Will I have all the knowledge to draw such imagery with orientation?
What if the modbus device sent me the code to do the rendering? What if the deployer of the modbus device didn't want to pay for the extra memory to show the switch imagery on the display?
How will Obje make it possible for this to still work? The answer is that its not magic! So, it can't work no matter what! There will be some preconditions and ontologies that must exist. Jini can provide the same, but Jini can perhaps go beyond by providing integration services.
In Jini, I could deploy a second service which has a ServiceUI that provides the rendering capabilities for drawing the switches how I wanted them to be. I could then configure my display service to know about that new service too. now I have a working solution. I didn't have the manufacturer of the modbus device provide the solution and I didn't have to have the manufacturer of the display provide the solution.
I could integrate it myself (one of Obje claims) and I got exactly what I needed!
If your at the command line, why not just type
sed 's/searchterm/replaceterm/g' filename
and get the work down without perl having to be there?
Only if you are thinking at the implementation level to you consider
that applications must agree on interfaces. The notions that Obje
imply in the article indicate things that Jini can do too.
The downloaded code from a Jini service registration is just a simple
agreement. It is just some code. It might talk, via a protocol,
back to the other end to provide method call level ontologies. Why
would you possibly think that this is the only remote capabilities
of Java or of the Jini platform?
The downloaded code can do anything you program it to do. It can
provide the same sort of reflective interface that Obje implies. Obje
looks like a media based discovery mechanism. If I am an Obje entity
that can display graphics, then what am I to do with a modbus device
that shows the status of 10 switches? Will I know how to read the
values of those switches and draw pictures depicting the switch position?
Will I know that the switches are dip switches or toggle switches?
Will I have all the knowledge to draw such imagery with orientation?
What if the modbus device sent me the code to do the rendering? What
if the deployer of the modbus device didn't want to pay for the extra
memory to show the switch imagery on the display?
How will Obje make it possible for this to still work? The answer is
that its not magic! So, it can't work no matter what! There will be
some preconditions and ontologies that must exist. Jini can provide the
same, but Jini can perhaps go beyond by providing integration services.
In Jini, I could deploy a second service which has a ServiceUI
that provides the rendering capabilities for drawing the switches how
I wanted them to be. I could then configure my display service to know
about that new service too. now I have a working solution. I didn't
have the manufacturer of the modbus device provide the solution and I
didn't have to have the manufacturer of the display provide the solution.
I could integrate it myself (one of Obje claims) and I got exactly what
I needed!