[kepler-users] semantic actor suggestion

Chris Weed chrisweed at gmail.com
Fri Jul 10 11:49:51 PDT 2009


After updating from SVN,
I just tried "Save in Library", and I am getting:
Exception occurred during event dispatching:
java.lang.NullPointerException
	at org.kepler.kar.gui.SaveInLibraryDialog.determineKarFile(SaveInLibraryDialog.java:255)
	at org.kepler.kar.gui.SaveInLibraryDialog._saveCommand(SaveInLibraryDialog.java:371)
	at org.kepler.kar.gui.SaveInLibraryDialog.access$0(SaveInLibraryDialog.java:290)
	at org.kepler.kar.gui.SaveInLibraryDialog$1.actionPerformed(SaveInLibraryDialog.java:646)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
	at java.awt.Component.processMouseEvent(Component.java:6216)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3265)
	at java.awt.Component.processEvent(Component.java:5981)
	at java.awt.Container.processEvent(Container.java:2041)
	at java.awt.Component.dispatchEventImpl(Component.java:4583)
	at java.awt.Container.dispatchEventImpl(Container.java:2099)
	at java.awt.Component.dispatchEvent(Component.java:4413)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4556)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4220)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4150)
	at java.awt.Container.dispatchEventImpl(Container.java:2085)
	at java.awt.Window.dispatchEventImpl(Window.java:2475)
	at java.awt.Component.dispatchEvent(Component.java:4413)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:178)
	at java.awt.Dialog$1.run(Dialog.java:1051)
	at java.awt.Dialog$3.run(Dialog.java:1103)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.awt.Dialog.show(Dialog.java:1101)
	at java.awt.Component.show(Component.java:1516)
	at java.awt.Component.setVisible(Component.java:1468)
	at java.awt.Window.setVisible(Window.java:841)
	at java.awt.Dialog.setVisible(Dialog.java:991)
	at org.kepler.kar.gui.SaveInLibraryAction.actionPerformed(SaveInLibraryAction.java:83)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
	at javax.swing.AbstractButton.doClick(AbstractButton.java:357)
	at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:1225)
	at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:1266)
	at java.awt.Component.processMouseEvent(Component.java:6216)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3265)
	at java.awt.Component.processEvent(Component.java:5981)
	at java.awt.Container.processEvent(Container.java:2041)
	at java.awt.Component.dispatchEventImpl(Component.java:4583)
	at java.awt.Container.dispatchEventImpl(Container.java:2099)
	at java.awt.Component.dispatchEvent(Component.java:4413)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4556)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4220)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4150)
	at java.awt.Container.dispatchEventImpl(Container.java:2085)
	at java.awt.Window.dispatchEventImpl(Window.java:2475)
	at java.awt.Component.dispatchEvent(Component.java:4413)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

Is this working for you?
Chris

On Fri, Jul 10, 2009 at 2:02 PM, Aaron Schultz<aschultz at nceas.ucsb.edu> wrote:
>
> Sure, Shawn, I've reenabled "Save in Library" until Save Archive is fully
> operational.
>
> Just remember that if you use Save in Library, then clean-cache, whatever
> you "Saved In Library" is lost forever.
>
> Aaron
>
> Shawn Bowers wrote:
>>
>> OK -- anyway you can resurrect the "Save in Library" and get it
>> working as it did w/ the new changes made to KARs/KAR handling, etc.,
>> until the "Save Archive (KAR)" is functional?
>>
>> Shawn
>>
>> On Fri, Jul 10, 2009 at 10:04 AM, Aaron Schultz<aschultz at nceas.ucsb.edu>
>> wrote:
>>
>>>
>>> Shawn, sounds good, if it is not working now as you have described then
>>> there are still bugs in the code somewhere.
>>>
>>> I have done very limited testing on the new code so bugs are quite
>>> likely...
>>>
>>> Aaron
>>>
>>>
>>> Shawn Bowers wrote:
>>>
>>>>
>>>> Hi Aaron,
>>>>
>>>> Just to clarify what I'm trying to do (which used to work with the
>>>> Save in Library feature):
>>>>
>>>> 1. Drag an actor from the library onto the canvas
>>>> 2. Right-click on the actor, select "Semantic Type Annotation..."
>>>> 3. Annotate an input port of the actor using the "Semantic Type
>>>> Annotation" widget
>>>> 4. Right-click on the actor, select "Save Archive (KAR)" (before: Save
>>>> in Library)
>>>> 5. Drag the actor back onto the canvas to see that its port annotations
>>>> survived
>>>> 6. Search the library for actors with a matching input annotation type
>>>>
>>>> When I now do step 4, I only seem to be able to save to the
>>>> "Workflows" directory using the Save Archive (KAR) action. When I do
>>>> this, I run into the following problems:
>>>>
>>>> A. The actor shows up under "Workflows", but it appears to be a
>>>> workflow (a can icon?).
>>>> B. I am not able to do anything with this component, e.g., I cannot
>>>> open it (in the tree view), I cannot drag it onto the canvas,
>>>> double-clicking it does nothing, right-clicking it does nothing, etc.
>>>> C. I am able to search for it by name, but not by its original
>>>> semantic type annotations (on actors or ports).
>>>>
>>>> In general, I like the idea of being able to save to local folders
>>>> (assuming one can do the above at a minimum), although it would also
>>>> be nice to be able to save to the library as well (and then as an
>>>> additional feature, "save the library" ...).  However, if we are going
>>>> to have "Save Archive (KAR)" replace the prior "Save in Library"
>>>> feature, it should at least support the above features.
>>>>
>>>> Shawn
>>>>
>>>>
>>>>
>>>> On Fri, Jul 10, 2009 at 8:46 AM, Aaron Schultz<aschultz at nceas.ucsb.edu>
>>>> wrote:
>>>>
>>>>
>>>>>
>>>>> It should query the user if no sem types are found.  However it is no
>>>>> longer
>>>>> required to add sem types before saving since the ability to display
>>>>> non
>>>>> sem
>>>>> typed objs in the library now exists (folders).
>>>>>
>>>>> -Aaron
>>>>>
>>>>> On Jul 10, 2009, at 8:35 AM, Matt Jones <jones at nceas.ucsb.edu> wrote:
>>>>>
>>>>>
>>>>>
>>>>>>
>>>>>> Aaron,
>>>>>>
>>>>>> When you do 'Save Archive', it creates a kar file on disk.  Does it
>>>>>> also add it to the Library, and does it check that semantic types have
>>>>>> been assigned as the old 'Save in Library...' function did?
>>>>>>
>>>>>> Matt
>>>>>>
>>>>>> On Fri, Jul 10, 2009 at 7:31 AM, Aaron
>>>>>> Schultz<aschultz at nceas.ucsb.edu>
>>>>>> wrote:
>>>>>>
>>>>>>
>>>>>>>
>>>>>>> It has been replaced by save archive
>>>>>>>
>>>>>>> -Aaron
>>>>>>>
>>>>>>> On Jul 10, 2009, at 8:05 AM, Shawn Bowers <sbowers at ucdavis.edu>
>>>>>>> wrote:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>>
>>>>>>>> Hi Chris,
>>>>>>>>
>>>>>>>> It looks like this is happening (possibly) because of changes to the
>>>>>>>> StringParameter hierarchy, which now throw NPEs if no named object
>>>>>>>> and
>>>>>>>> name is given to the constructor.  The semantic search functionality
>>>>>>>> was written a while back (circa 2005), and not really used other
>>>>>>>> than
>>>>>>>> a prototype/demonstration. It could use revamping.
>>>>>>>>
>>>>>>>> I think I might have fixed it though. However, I cannot easily test
>>>>>>>> this since the "Save in Library" functionality was removed, which
>>>>>>>> would allow modified actors to be saved in the library, and then
>>>>>>>> easily searched.  Typically, I would add sem types to ports and then
>>>>>>>> save them to the library. This would then allow me to search for
>>>>>>>> actors using this dialog or using the "suggest compatible
>>>>>>>> components"
>>>>>>>> dialog.
>>>>>>>>
>>>>>>>> I've CC'd Aaron Schultz (a Kepler developer at NCEAS) who might know
>>>>>>>> why this was removed, and whether similar functionality was added (I
>>>>>>>> can't find it if it was).  When I bring back the "Save in Library"
>>>>>>>> (via uiContextMappings configs) I get exceptions for building KAR
>>>>>>>> files ...
>>>>>>>>
>>>>>>>>  [run] Exception in thread "AWT-EventQueue-0"
>>>>>>>> java.lang.NullPointerException
>>>>>>>>  [run]    at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org.kepler.kar.gui.SaveInLibraryDialog.determineKarFile(SaveInLibraryDialog.java:255)
>>>>>>>>  [run]    at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org.kepler.kar.gui.SaveInLibraryDialog._saveCommand(SaveInLibraryDialog.java:371)
>>>>>>>>  [run]    at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org.kepler.kar.gui.SaveInLibraryDialog.access$100(SaveInLibraryDialog.java:98)
>>>>>>>>  [run]    at
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> org.kepler.kar.gui.SaveInLibraryDialog$1.actionPerformed(SaveInLibraryDialog.java:646)
>>>>>>>>  [run]    at
>>>>>>>>
>>>>>>>>
>>>>>>>> javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1882)
>>>>>>>>
>>>>>>>>
>>>>>>>> Shawn
>>>>>>>>
>>>>>>>>
>>>>>>>> On Tue, Jul 7, 2009 at 11:47 AM, Chris Weed<chrisweed at gmail.com>
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>>>
>>>>>>>>> What about the Semantic Search functionality?
>>>>>>>>> This looks similar to what I am interested in, but when I try to do
>>>>>>>>> a
>>>>>>>>> search I get "No search criteria specified"
>>>>>>>>> I really expect that this would return a result for the search I
>>>>>>>>> specified.
>>>>>>>>> Chris
>>>>>>>>>
>>>>>>>>> On Wed, Jul 1, 2009 at 1:48 PM, Shawn Bowers<sbowers at ucdavis.edu>
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Hi Chris,
>>>>>>>>>>
>>>>>>>>>> Most of the semantic annotation code is now a bit old (3-4 yrs),
>>>>>>>>>> and
>>>>>>>>>> was a prototype. Prior to this version we actually had an approach
>>>>>>>>>> based on a SPARQL implementation, however, it was decided that
>>>>>>>>>> Kepler
>>>>>>>>>> should adopt an "object manager" approach, which stores actors and
>>>>>>>>>> actor metadata (including semantic annotations of actors) using
>>>>>>>>>> MoML
>>>>>>>>>> and within a relational (in-memory) db. So, SPARQL wouldn't work
>>>>>>>>>> for
>>>>>>>>>> this, unless we went to an RDF approach for representing
>>>>>>>>>> annotations,
>>>>>>>>>> metadata, etc. Another problem with SPARQL (I think this is what
>>>>>>>>>> you
>>>>>>>>>> meant) at least from my experience is that it is more focussed on
>>>>>>>>>> querying resources and their properties, and less useful for
>>>>>>>>>> querying
>>>>>>>>>> over class definitions. The latter requires a reasoner (like
>>>>>>>>>> Pellet,
>>>>>>>>>> Fact++, etc.). Finding actors based on their semantic types is all
>>>>>>>>>> about matching class definitions, and not about searching for
>>>>>>>>>> class
>>>>>>>>>> instances.
>>>>>>>>>>
>>>>>>>>>> Anyway, we are currently in the process of revamping the
>>>>>>>>>> annotation
>>>>>>>>>> interfaces to make it easier and hopefully more obvious to folks
>>>>>>>>>> that
>>>>>>>>>> actors (and their ports) can be tagged (e.g., a draft plan for
>>>>>>>>>> this
>>>>>>>>>> is
>>>>>>>>>> here:
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> https://kepler-project.org/developers/incubation/GUI/kepler-tagging).
>>>>>>>>>> So far, zero Kepler actors have their ports annotated. But perhaps
>>>>>>>>>> with some UI changes more actors will be annotated, etc.  We are
>>>>>>>>>> also
>>>>>>>>>> making changes so that basic types of ontology creation and
>>>>>>>>>> editing
>>>>>>>>>> are exposed and available from within Kepler. Again, this might
>>>>>>>>>> make
>>>>>>>>>> the annotation capabilities more usable.
>>>>>>>>>>
>>>>>>>>>> If you would like to help with any of this (designing and/or
>>>>>>>>>> implement
>>>>>>>>>> ui's, designing apis, suggesting features, architecture,
>>>>>>>>>> technology's,
>>>>>>>>>> etc.) that would be awesome!
>>>>>>>>>>
>>>>>>>>>> Shawn
>>>>>>>>>>
>>>>>>>>>> On Wed, Jul 1, 2009 at 10:18 AM, Chris Weed<chrisweed at gmail.com>
>>>>>>>>>> wrote:
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Hi,
>>>>>>>>>>> I have a few questions about the semantic annotation
>>>>>>>>>>> functionality.
>>>>>>>>>>> I noticed in the semantic search browser it displays the
>>>>>>>>>>> properties,
>>>>>>>>>>> but I wasn't sure if it used that for doing searches.
>>>>>>>>>>>
>>>>>>>>>>> Also, I was looking through the code for performing the semantic
>>>>>>>>>>> actor
>>>>>>>>>>> suggestion,
>>>>>>>>>>> and it looks like it uses a hand-coded matching algorithm instead
>>>>>>>>>>> of
>>>>>>>>>>> a
>>>>>>>>>>> SQARQL
>>>>>>>>>>> based inference engine. Would it make sense to update this
>>>>>>>>>>> functionality
>>>>>>>>>>> which would allow more sophisticated searches with properties.
>>>>>>>>>>>
>>>>>>>>>>> Chris
>>>>>>>>>>> _______________________________________________
>>>>>>>>>>> Kepler-users mailing list
>>>>>>>>>>> Kepler-users at kepler-project.org
>>>>>>>>>>>
>>>>>>>>>>> http://mercury.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-users
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> Kepler-users mailing list
>>>>>>> Kepler-users at kepler-project.org
>>>>>>> http://mercury.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-users
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> --
>>>>>> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>>>>>> Matthew B. Jones
>>>>>> Director of Informatics Research and Development
>>>>>> National Center for Ecological Analysis and Synthesis (NCEAS)
>>>>>> UC Santa Barbara
>>>>>> jones at nceas.ucsb.edu                       Ph: 1-907-523-1960
>>>>>> http://www.nceas.ucsb.edu/ecoinfo
>>>>>> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>>>>>>
>>>>>>
>>>>>>
>>>>
>>>>
>>>
>>>
>>
>>
>
> _______________________________________________
> Kepler-users mailing list
> Kepler-users at kepler-project.org
> http://mercury.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-users
>



More information about the Kepler-users mailing list