Nikos Spanoudakis wrote:
Hi,
I had experienced the same problem. Initially I had the same approach:
Create a core bundle and then another bundle (application bundle) with
my agents that would dynamically import the JADE packages. Then, from
the application bundle I used the JADE Runtime class in order to
instantiate my agents. There was a problem there with a class not found
exception (like Stefano) and I think it is based on the fact that the
core JADE bundle does not import the packages of the application bundle
and therefore cannot instantiate the agents.
That's exactly the issue that I'm having, but in order to work JADE-Core
should not import the agent classes, because is the example bundle that
contains the agent classes and it should own all the needed classes
This is a big problem
because if the core bundle also imports the application bundle libraries
then one cannot be installed before the other on the OSGi framework.
Therefore, you need to include the JADE jars in the application bundle
(as we did in our paper) - work with one bundle.
Your approach may cause trouble when you have to update JADE Framework
to newer release :S
But it handle perfectly a scenario where there is only a bundle that
interact whit the JADE World (let's call it JADE Base Driver) and it
imports Agent as service on the OSGi World and exports special service
as Agent in the JADE World.
The anyway the above scenario may cause trouble to implement agent
mobility for agent that are indeed exported OSGi Service
Finally, I would like to inspect and implement a scenario where JADE
Agent are developed on top of an OSGi Framework.
Thank you,
Nikos
Ciao,
Stefano "Kismet" Lenzi