[kepler-dev] build a custom actor

dejw dejw at man.poznan.pl
Thu Aug 21 00:12:41 PDT 2008


Hi Chad,

thanks for your replays, everything is clear now

So I can see that a lot of thing gonna be changed in kepler - do you
have maybe some ROADMAP, set of goals with some deadlines or some date
of release of next version ?

Dawid

Chad Berkley wrote:
> Like I said in a previous email, the repository and the client are not
> fully developed.  It should act in the way you describe, but it
> doesn't.  Right now, the only kinds of actors that can download
> cleanly from the repository are moml only actors or actors where all
> of the classes are already in the kepler distro.  Sorry for the
> confusion.  I'm hoping that getting this working will be a major
> priority for Kepler-CORE.
>
> chad
>
>
> dejw wrote:
>> Hi again,
>>
>> I did some test with ImageJ actor. I had a normal kepler installation
>> on my laptop.
>>
>> In components search panel I can search for an actor in local cache
>> but also after checking the "Search repository" in the remote
>> repository.
>>
>> So I can see that ImageJ is included in normal standard kepler
>> installation - but I wanted to make test of retrieving some actor
>> from the remote repository.
>> So I removed totally everything connected with ImageJ from my local
>> kepler installation. Later if I do a local search I got nothing.
>>
>> But If I wanted to make a search in the remote repository - I got
>> error in the console where my kepler is ran:
>>
>>      [java] The class name you entered was either not found in
>> classpath or coul
>> d not be instantiated:
>>      [java] util.ImageJActor
>>      [java] Note that this class must be in the classpath from which
>> you launche
>> d this program.
>>      [java] util.ImageJActor
>>      [java] could not load result:
>> org.ecoinformatics.ecogrid.queryservice.resul
>> tset.ResultsetTypeRecord at 945cc54d  error: Error getting actor
>> metadata for resul
>> tset document: Could not clone 'ImageJ' from the 'util.ImageJActor'
>> class; the o
>> bject is null, possibly meaning it was not found. Perhaps there is a
>> classpath p
>> roblem and/or the karlib needs to be flushed?
>>      [java] The class name you entered was either not found in
>> classpath or coul
>> d not be instantiated:
>>      [java] util.ImageJActor
>>      [java] Note that this class must be in the classpath from which
>> you launche
>> d this program.
>>      [java] util.ImageJActor
>>      [java] could not load result:
>> org.ecoinformatics.ecogrid.queryservice.resul
>> tset.ResultsetTypeRecord at 5ea90b1c  error: Error getting actor
>> metadata for resul
>> tset document: Could not clone 'ImageJ' from the 'util.ImageJActor'
>> class; the o
>> bject is null, possibly meaning it was not found. Perhaps there is a
>> classpath p
>> roblem and/or the karlib needs to be flushed?
>>
>> I don't know then if it is possible at all to get some completely new
>> actor from the remote repository?
>> After removing the ImageJ actor I can't even search for it in the
>> remote repository. It looks like the locally installed kepler have to
>> have knowledge about all potential actors anyway.
>> So what for is the remote repository then? Maybe I did some mistake
>> or don't understand something properly.
>>
>> Regards,
>> Dawid
>>
>>
>> dejw wrote:
>>> Hi,
>>>
>>> I have now other question - the LSID number.
>>>
>>> How do I know what number should I use if I want to develop a new
>>> actor?
>>> I saw the tutorial on kepler web page:
>>>
>>> "Open the README file in src/actors to look at the last LSID used. Your
>>> actor will use the next available LSID (say 450). "
>>>
>>> But in fact I never know what set of actors could be in the target
>>> kepler installation. Maybe someone wrote a bunch of its own ones and
>>> the
>>> LSID I will choose won't be free in fact??
>>>
>>> Other thing is the ImageJ example. In manifest I can see:
>>>
>>> Manifest-Version: 1.4.2
>>> Ant-Version: Apache Ant 1.7.0
>>> Created-By: 1.5.0_10-b03 (Sun Microsystems Inc.)
>>> KAR-Version: 1.0
>>> lsid: urn:lsid:kepler-project.org:kar:154:1
>>>
>>> Name: ImageJ.xml
>>> lsid: urn:lsid:kepler-project.org:actor:251:1
>>> type: actorMetadata
>>>
>>> Name: ImageJ.jar
>>> lsid: urn:lsid:kepler-project.org:jar:251:1
>>> type: jar
>>>
>>> Name: ij.jar
>>> lsid: urn:lsid:kepler-project.org:jar:252:1
>>> type: jar
>>>
>>> Could you explain me what are these LSIDS ? There are others counters
>>> for kars, jars and actors ??? How do I know what values should I choose
>>> while implementing the actor?
>>>
>>> What will happen if I set some LSID values in my custom actor/s and put
>>> them in the repository. Later someone will import them to the local
>>> kepler installation and such LSIDs numbers aren't free.
>>> The imported actor will replace some other with the same LSID?
>>>
>>> Regards,
>>> Dawid
>>>
>>> Dan Higgins wrote:
>>>  
>>>> Hi dejw (and others)
>>>>    It is possible to include jar files used by an actor in the kar
>>>> package. An example can be seen in $KEPLER/src/actors/ImageJ (This is
>>>> an example of the ImageJ.kar file.) The key is information in the
>>>> MANIFEST.MF  file which includes references to the jars.
>>>> Unfortunately, I think you still need to create this package by hand.
>>>>
>>>> See http://www.kepler-project.org/Wiki.jsp?page=AddingJarsToKarFiles
>>>>
>>>> for a brief discussion.
>>>>
>>>> Dan Higgins
>>>>
>>>> Sean Riddle wrote:
>>>>    
>>>>> Putting your Jar files into kepler/lib/jar (or any level below that)
>>>>> will cause them to be put on the runtime classpath, I believe.
>>>>> Ideally, you would use KAR files to bundle up actors with stuff they
>>>>> need, and then you could import that in another Kepler installation;
>>>>> I've never actually tried it myself, though, so someone else could
>>>>> probably speak on that better.
>>>>>
>>>>> - Sean
>>>>>
>>>>>
>>>>> On Aug 7, 2008, at 4:39 AM, dejw wrote:
>>>>>
>>>>>      
>>>>>> Hi,
>>>>>>
>>>>>> I want to build a custom actor for Kepler, I saw the HelloWorld
>>>>>> example and it is clear for me, that's fine but...
>>>>>>
>>>>>> I want to create quite "big" actor with many jars included which are
>>>>>> not a part of kepler right now - the question how to do it, where
>>>>>> should I put my custom jars?
>>>>>>
>>>>>> How can I later exchange this actor with other kepler instances? KSW
>>>>>> files? If yes is out there any tutorial how to prepare KSW file with
>>>>>> right stuff inside?
>>>>>>
>>>>>> Can I later upload such actor (ksw?) to repository and download over
>>>>>> the wire in another kepler instance and use?
>>>>>>
>>>>>> My actor with the jars included may have from about 30 MB even up to
>>>>>> 100 MB ;)
>>>>>>
>>>>>> Regards,
>>>>>> Dawid Szejnfeld
>>>>>> _______________________________________________
>>>>>> Kepler-dev mailing list
>>>>>> Kepler-dev at ecoinformatics.org
>>>>>> http://mercury.nceas.ucsb.edu/ecoinformatics/mailman/listinfo/kepler-dev
>>>>>>
>>>>>>
>>>>>>         
>>>>> _______________________________________________
>>>>> Kepler-dev mailing list
>>>>> Kepler-dev at ecoinformatics.org
>>>>> http://mercury.nceas.ucsb.edu/ecoinformatics/mailman/listinfo/kepler-dev
>>>>>
>>>>>       
>>>
>>> _______________________________________________
>>> Kepler-dev mailing list
>>> Kepler-dev at ecoinformatics.org
>>> http://mercury.nceas.ucsb.edu/ecoinformatics/mailman/listinfo/kepler-dev
>>>
>>>   
>>
>>
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> Kepler-dev mailing list
>> Kepler-dev at ecoinformatics.org
>> http://mercury.nceas.ucsb.edu/ecoinformatics/mailman/listinfo/kepler-dev



More information about the Kepler-dev mailing list