[kepler-dev] Help with Pop Up Box in Kepler

subhav mital mital.subhav at gmail.com
Fri Apr 3 14:05:16 PDT 2009


Hi Matt and Derik,
Thanks for your comments.

Creating two different suites was just a personal preference. However, I
still don't solve the basic problem of instantiating previously  created
actors without errors even if I use a single suite. A simple ant run does
not solve the problem. To get the actor, I have to execute ant change-to.

Existing actors in Kepler, can be dragged and dropped but not newly created
ones.


Copied below is the stack trace which I get when I drag and drop the actor
without executing ant change-to and directly opening Kepler by executing ant
run from command line. (Using Version 1.0)



ptolemy.kernel.util.IllegalActionException: Cannot find class:
org.UserIp.UserIp
Because:
-- C:\.........\org\UserIp\UserIp.moml (The system cannot find the path
specified)
-- XML file not found relative to classpath.
-- C:\..........\org/UserIp/UserIp.moml
-- C:\..........\org/UserIp/UserIp.moml (The system cannot find the path
specified)
 in file:.............MultipleInput. xml at line 155 and column 42
at ptolemy.moml.MoMLParser._createEntity(MoMLParser.java:3701)
at ptolemy.moml.MoMLParser.startElement(MoMLParser.java:2379)
at com.microstar.xml.XmlParser.parseElement(XmlParser.java:921)
at com.microstar.xml.XmlParser.parseContent(XmlParser.java:1104)
at com.microstar.xml.XmlParser.parseElement(XmlParser.java:924)
at com.microstar.xml.XmlParser.parseDocument(XmlParser.java:481)
at com.microstar.xml.XmlParser.doParse(XmlParser.java:159)
at com.microstar.xml.XmlParser.parse(XmlParser.java:132)
at ptolemy.moml.MoMLParser.parse(MoMLParser.java:1334)
at ptolemy.moml.MoMLParser.parse(MoMLParser.java:1292)
at ptolemy.moml.MoMLParser.parse(MoMLParser.java:1265)
at
ptolemy.actor.gui.PtolemyEffigy$Factory.createEffigy(PtolemyEffigy.java:412)
at ptolemy.actor.gui.EffigyFactory.createEffigy(EffigyFactory.java:209)
at ptolemy.actor.gui.Configuration.openModel(Configuration.java:595)
at ptolemy.actor.gui.Configuration.openModel(Configuration.java:555)
at ptolemy.actor.gui.TableauFrame._read(TableauFrame.java:893)
at ptolemy.gui.Top._open(Top.java:704)
at ptolemy.gui.Top$FileMenuListener.actionPerformed(Top.java:1093)
at ptolemy.vergil.basic.MenuMapper$1.actionPerformed(MenuMapper.java:326)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1849)
at
javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2169)
at
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
at javax.swing.AbstractButton.doClick(AbstractButton.java:302)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:1051)
at
javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:1092)
at java.awt.Component.processMouseEvent(Component.java:5517)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3135)
at java.awt.Component.processEvent(Component.java:5282)
at java.awt.Container.processEvent(Container.java:1966)
at java.awt.Component.dispatchEventImpl(Component.java:3984)
at java.awt.Container.dispatchEventImpl(Container.java:2024)
at java.awt.Component.dispatchEvent(Component.java:3819)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
at java.awt.Container.dispatchEventImpl(Container.java:2010)
at java.awt.Window.dispatchEventImpl(Window.java:1791)
at java.awt.Component.dispatchEvent(Component.java:3819)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
at
java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
Caused by: com.microstar.xml.XmlException: -- --
C:\..........\org/UserIp/UserIp.moml-- XML file not found relative to
classpath.

at ptolemy.moml.MoMLParser.fileNameToURL(MoMLParser.java:1145)
at ptolemy.moml.MoMLParser._attemptToFindMoMLClass(MoMLParser.java:3504)
at ptolemy.moml.MoMLParser._createEntity(MoMLParser.java:3696)
... 44 more
Caused by: com.microstar.xml.XmlException: --

at ptolemy.moml.MoMLParser.fileNameToURL(MoMLParser.java:1145)
at ptolemy.moml.MoMLParser._attemptToFindMoMLClass(MoMLParser.java:3504)
at ptolemy.moml.MoMLParser._createEntity(MoMLParser.java:3696)
at ptolemy.moml.MoMLParser.startElement(MoMLParser.java:2379)
at com.microstar.xml.XmlParser.parseElement(XmlParser.java:921)
at com.microstar.xml.XmlParser.parseContent(XmlParser.java:1104)
at com.microstar.xml.XmlParser.parseElement(XmlParser.java:924)
at com.microstar.xml.XmlParser.parseDocument(XmlParser.java:481)
at com.microstar.xml.XmlParser.doParse(XmlParser.java:159)
at com.microstar.xml.XmlParser.parse(XmlParser.java:132)
at ptolemy.moml.MoMLParser.parse(MoMLParser.java:1334)
at ptolemy.moml.MoMLParser.parse(MoMLParser.java:1292)
at ptolemy.moml.MoMLParser.parse(MoMLParser.java:1265)
at
ptolemy.actor.gui.PtolemyEffigy$Factory.createEffigy(PtolemyEffigy.java:412)
at ptolemy.actor.gui.EffigyFactory.createEffigy(EffigyFactory.java:209)
at ptolemy.actor.gui.Configuration.openModel(Configuration.java:595)
at ptolemy.actor.gui.Configuration.openModel(Configuration.java:555)
at ptolemy.actor.gui.TableauFrame._read(TableauFrame.java:893)
at ptolemy.gui.Top._open(Top.java:704)
at ptolemy.gui.Top$FileMenuListener.actionPerformed(Top.java:1093)
at ptolemy.vergil.basic.MenuMapper$1.actionPerformed(MenuMapper.java:326)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1849)
at
javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2169)
at
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
at javax.swing.AbstractButton.doClick(AbstractButton.java:302)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:1051)
at
javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:1092)
at java.awt.Component.processMouseEvent(Component.java:5517)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3135)
at java.awt.Component.processEvent(Component.java:5282)
at java.awt.Container.processEvent(Container.java:1966)
at java.awt.Component.dispatchEventImpl(Component.java:3984)
at java.awt.Container.dispatchEventImpl(Container.java:2024)
at java.awt.Component.dispatchEvent(Component.java:3819)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
at java.awt.Container.dispatchEventImpl(Container.java:2010)
at java.awt.Window.dispatchEventImpl(Window.java:1791)
at java.awt.Component.dispatchEvent(Component.java:3819)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
at
java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)



Am I missing something?

Thanks!


On Wed, Apr 1, 2009 at 8:51 PM, Matt Jones <jones at nceas.ucsb.edu> wrote:

> If Derik's assumption is correct, then the two modules are the issue,
> and switching from one to another causes the other to no longer be
> built. Using a single module is the simplest solution.  However,  if
> you do have a concrete reason for keeping the actors in separate
> modules, you could create a third suite that depends upon the first
> two, and then you would be able to build both modules at the same
> time.  Wouldn't this work?
>
> Matt
>
> On Wed, Apr 1, 2009 at 4:44 PM, Derik Barseghian
> <barseghian at nceas.ucsb.edu> wrote:
> > Hi Subhav,
> >
> > Just to be sure I understand your situation, am I right that your two
> actors
> > are each in a suite of their own? That is, the UserIp suite contains the
> > UserIp actor and the UserDecision suite contains the UserDecision actor?
> > Unless you have a reason for two suites, I would instead just use one --
> > create both actors in one suite.
> >
> > I think you're essentially trying to do the same thing as the hello-world
> > tutorial, except with two suites each containing an actor, and you want
> the
> > first actor available in the second suite. I think I was able to
> replicate
> > the problem you're seeing by doing roughly the procedure attached below.
> > I'll file a bug and we'll look into this. In the meantime, you might try
> > putting your actors in one suite.
> >
> > Thanks,
> > Derik
> >
> > ----------------------
> > cd kepler.modules/build-area
> > ant clean-cache
> > ant change-to -Dsuite=kepler-1.0
> > ant make-module-suite -Dname=hello-world
> > ant change-to -Dsuite=hello-world
> > cd ../hello-world/src
> > mkdir org
> > cd org
> > [create the HelloWorld actor java file from the website]
> > cd ../../../build-area/
> > ant run
> > instantiate HelloWorld actor
> > Right click on actor, Export to Kar, saving class file
> > Quit Kepler
> >
> > ant clean-cache
> > ant change-to -Dsuite=kepler-1.0
> > ant run
> > File => Import Archive (the hello world actor)
> > Dialog (that stretches beyond the length of one monitor): The id of the
> > actor or workflow you are trying to import already exists [snip] Would
> you
> > like to change the id of your actor to the next available id?" (Click
> Yes)
> > Error: Error inserting the kar file into the cache: Id already exists in
> the
> > cache: Error creating KARCacheObject:
> lib/jar/org.helloworld.HelloWorld.jar
> > (No such file or directory).
> >
> >
> >
> > On Apr 1, 2009, at 3:27 PM, subhav mital wrote:
> >
> >> Hey,
> >> Thanks for that.
> >>
> >> Let me explain again.
> >> I have created two actors named: 1) UserIp and 2) UserDecision
> >>
> >> -Now, the only way I can execute the UserIp actor is by using ant
> >> change-to -Dsuite=UserIp. (This is the only way, since a) The first time
> I
> >> create this actor and save it in the library and drag it to the window,
> I
> >> get an error: "Change Failed: Cannot create entity without a class
> name.in
> >> [external stream] at line 1 column 29 and b) if I export it as a KAR and
> >> then then import it again, I get errors again)
> >>
> >> - Suppose that I want to instantiate a UserDecision actor into my
> >> workspace, I have to again type ant change-to -Dsuite=UserDecision. for
> this
> >> actor to work. A previously saved actor into my library or an exported
> KAR
> >> does not work.
> >>
> >> Hence: The only way I can run actors created by me using Kepler 1.0 is
> by
> >> first typing ant change-to.... in the command line and then using the
> actor.
> >> This does not happen with other actors that are in the repository or
> >> previously created actors. I wonder why this happens and how do I
> resolve
> >> this?
> >>
> >> Hence, the primary problem is, that I cannot use UserDecision and UserIp
> >> at the same time, since only one instance of Kepler can run at a time
> from
> >> the command line. If I try to run two, I get the error, cannot parse
> >> -kepler.
> >>
> >> I hope I have been clear about the problem I am facing. Please help
> >>
> >> Thanks!
> >>
> >>
> >>
> >>
> >> On Wed, Apr 1, 2009 at 2:04 PM, Derik Barseghian
> >> <barseghian at nceas.ucsb.edu> wrote:
> >> Hi Subhav,
> >>
> >> >From what I understand, you have two suites, UserDecision and UserIp,
> >> each with an actor of the same name inside each suite. I just ran a
> test,
> >> creating your UserIp actor, instantiating it in one suite, and then
> >> exporting it as a kar that includes the class file. I then imported the
> >> actor with Import Archive. Searching for and dragging the actor from the
> >> library works at this point. I quit kepler, then ran a change-to to
> switch
> >> to another suite, and launched kepler. If you search for the actor in
> the
> >> library at this point, it will show up, but will give an error if you
> drag
> >> it to canvas. Also, if you try to import the kar, you'll receive errors.
> I'm
> >> going to file this as a bug if one doesn't already exist. One solution
> for
> >> now, until we fix the problem, is to run ant clean-cache before you
> >> change-to to your second suite. You should then be able to import the
> kar in
> >> your second suite. This should also work if instead of a second suite
> you're
> >> using Kepler 1.0, but let me know if it doesn't.
> >>
> >> Thanks,
> >> Derik
> >>
> >>
> >> On Apr 1, 2009, at 12:28 AM, subhav mital wrote:
> >>
> >> Basically, the error I get is that the XML file not found relative to
> the
> >> classpath.
> >> What is wrong? Please advise, how this can be resolved!
> >>
> >> Thanks!
> >>
> >> On Wed, Apr 1, 2009 at 2:33 AM, subhav mital <mital.subhav at gmail.com>
> >> wrote:
> >> Hey,
> >>
> >> This does not work. When I created a new actor (UserDecision) and
> finally
> >> enter ant change-to -Dsuite=UserDecision, then only this single command
> >> controls what can be instantiated.
> >>
> >> If I type ant change-to -Dsuite=UserIp, then I can drag/drop this actor
> >> saved in the library.
> >>
> >> I don't see any other way of solving this problem. Importing Kar gives
> me
> >> a whole lot of errors.
> >>
> >> Please help.
> >>
> >> Thanks!
> >>
> >>
> >> On Mon, Mar 30, 2009 at 2:11 PM, Daniel Crawl <crawl at sdsc.edu> wrote:
> >>
> >> Hi Subhav,
> >>
> >> The problem is that the implementation of your actor is not
> >> available to the Kepler you installed from the installer.
> >> 'Save in Library' stores metadata about actors, but not
> >> their implementation.
> >>
> >> If you want to use your new actor in the installer version,
> >> you could export it as a KAR file using the svn version and
> >> then import the KAR file in the installer version.
> >>
> >>  --dan
> >>
> >>
> >>
> >>
> >> subhav mital wrote:
> >> "C:\Program Files\kepler-1.0.0\kepler.exe"
> >>
> >> This is the installer which I present on the site.
> >>
> >> I wanted to use the kepler trunk and get eclipse running, so I checked
> out
> >> the trunk from ant command line, and started using it that way.
> >>
> >> In David's tutorial,
> >>
> https://kepler-project.org/developers/teams/build/developing-a-hello-world-actor-using-the-kepler-build-system-and-eclipse
>  <
> https://kepler-project.org/developers/teams/build/developing-a-hello-world-actor-using-the-kepler-build-system-and-eclipse
> >
> >> [
> https://kepler-project.org/developers/teams/build/developing-a-hello-world-actor-using-the-kepler-build-system-and-eclipse
>  <
> https://kepler-project.org/developers/teams/build/developing-a-hello-world-actor-using-the-kepler-build-system-and-eclipse
> >]
> >>
> >> He says to check out version 1.0, for creating an actor, so I did that.
> >> Now I wonder where I am going wrong. Only when I execute kepler using
> ant
> >> run, it gives no error upon dragging and dropping the actor. If I run it
> >> using the desktop icon, I get the error.
> >>
> >>
> >>
> >> _______________________________________________
> >> Kepler-dev mailing list
> >> Kepler-dev at kepler-project.org
> >> http://mercury.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-dev
> >>
> >>
> >
> > _______________________________________________
> > Kepler-dev mailing list
> > Kepler-dev at kepler-project.org
> > http://mercury.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-dev
> >
>
>
>
> --
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> 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
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mercury.nceas.ucsb.edu/kepler/pipermail/kepler-dev/attachments/20090403/62b12012/attachment-0001.html>


More information about the Kepler-dev mailing list