Yes Bob, you're right, it's a pain the coupling to an ArgoUML concrete version. The main reason of it is time restriction. Really, we have faced the project as a school last year project and the purpose is to give a first version of macmas module as a first step of surely a large chain of extends and development over the module.
By other hand, we have found several problems to extend ArgoUML and remain our module independent because ArgoUML is not prepaired for it in several aspects. Therefore, in order to reach the objectives in June, maybe in certain moments we have taken some coupling decisions. Anyway, really there isn't a real problem with the coupling because this is an internal version that we use by the moment for academical and research purposes, and not for comertial or industrial purposes. In the future, it would be an interesting idea to refactor the coupled parts of the module (the most, figure couplings, the model subsystem are very decoupled of argo) in another school project. Respect to the PGML persistence problem I think Tom and you are right and it surely would be a classpath problem. Unfortunately, I can't repair it, please help me with it. To the moment, I only have put macmas.jar in /ext folder of ArgoUML compilation such it's explained in the cookbook. What I have to do now? Regards, Francisco Gonzalez -----Mensaje original----- De: Bob Tarling [mailto:[EMAIL PROTECTED] Enviado el: miƩrcoles, 05 de julio de 2006 18:58 Para: [email protected] Asunto: Re: [argouml-dev] Persistence problem with my macmas module I think Tom is correct. It looks like MACMASTraceabilityDiagram is in your classpath when running in eclipse but not in your build. It's a shame you are coupled to a specific version of ArgoUML. Is there any way we can adapt the API to help you. If so please create an issue. Sorry to pass you around but Linus is the modules guy. Maybe he can explain how modules can add to the classpath. Regards Bob. On 7/5/06, Tom Morris <[EMAIL PROTECTED]> wrote: > > > Bob would be the best person to know whether there have been any changes to > the PGML parser in GEF (which ArgoUML uses) which would trigger this type of > behavior, but the first thing that you should do is to be ABSOLUTELY sure > that your class is packaged the way that you are expecting and is available > on the Java classpath. The fact that it works in one environment and not > the other makes me suspicious that this is a packaging issue. > > > Tom > > > > -----Original Message----- > From: Francisco Gonzalez [mailto:[EMAIL PROTECTED] > Sent: Wednesday, July 05, 2006 6:55 AM > To: [email protected] > Subject: [argouml-dev] Persistence problem with my macmas module > > Hello all > > The first stable release of MaCMAS implementation project is nearly to > appears. Unfortunately, we obtain an error that not appears in previous > development releases. > > I'm totally surprised with this problem because when I run the project from > eclipse all works fine but if I use a compiled version of ArgoUML and MaCMAS > module it produces the error below. > > There was a suspicious problem in eclipse with my project: when I try to > generate from eclipse a serial ID for the MACMASTraceabilityDiagram classes > and other MaCMAS diagram classes, eclipse blocks and not produces a serial > UID. It doesn't happens with other classes such as figures, panels, etc. I > suspect that this can be the reason of the persistence fail of loading the > PGML. > > The sequence to obtain the error is the following: > - run a compiled version ArgoUML vPRE-0.22.2 (our module is a little coupled > with this version of argo) > - create a new diagram of our MaCMAS module and create several elements in > it > - save the project > - restarts argouml and open the project saved and it produced the exception > showed below > > Please help me. Thanks. > Francisco Gonzalez > > > Cause : java.lang.ClassNotFoundException: > org.argouml.uml.diagram.traceability.ui.MACMASTraceabilityDiagram > at > org.tigris.gef.persistence.pgml.PGMLHandler.initDiagram(PGMLHandler.java:112 ) > at > org.tigris.gef.persistence.pgml.PGMLHandler.<init>(PGMLHandler.java:72) > at > org.tigris.gef.persistence.pgml.InitialHandler.startElement > (InitialHandler.java:62) > at > com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(Ab stractSAXParser.java:533) > at > com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.startElement( > XMLDTDValidator.java :798) > at > com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanS tartElement(XMLDocumentFragmentScannerImpl.java:878) > at > com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$ContentDispat cher.scanRootElementHook > (XMLDocumentScannerImpl.java:1157) > at > com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$Fragm entContentDispatcher.dispatch(XMLDocumentFragmentScannerImpl.java:1794) > at > com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanD ocument > (XMLDocumentFragmentScannerImpl.java:368) > at > com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Con figuration.java:834) > at > com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse > (XML11Configuration.java:764) > at > com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:14 8) > at > com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractS AXParser.java:1242) > at > javax.xml.parsers.SAXParser.parse(SAXParser.java:375) > at > org.tigris.gef.persistence.pgml.PGMLStackParser.readDiagram(PGMLStackParser. java:150) > at > org.tigris.gef.persistence.pgml.PGMLStackParser.readDiagram > (PGMLStackParser.java:119) > at > org.argouml.persistence.DiagramMemberFilePersister.load(DiagramMemberFilePer sister.java:67) > at > org.argouml.persistence.UmlFilePersister.doLoad(UmlFilePersister.java:355) > at > org.argouml.persistence.ZargoFilePersister.doLoad(ZargoFilePersister.java:34 1) > at > org.argouml.ui.ProjectBrowser.loadProject(ProjectBrowser.java:1231) > at > org.argouml.uml.ui.ActionReopenProject.actionPerformed > (ActionReopenProject.java:86) > 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:1000) > at > javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI .java:1041) > at > java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:231) > at java.awt.Component.processMouseEvent > (Component.java:5488) > at > javax.swing.JComponent.processMouseEvent(JComponent.java:3126) > at java.awt.Component.processEvent(Component.java:5253) > at java.awt.Container.processEvent(Container.java:1966) > at > java.awt.Component.dispatchEventImpl(Component.java:3955) > at > java.awt.Container.dispatchEventImpl(Container.java:2024) > at > java.awt.Component.dispatchEvent(Component.java:3803) > 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:1774) > at > java.awt.Component.dispatchEvent(Component.java:3803) > at > java.awt.EventQueue.dispatchEvent(EventQueue.java:463) > at > java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.ja va: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) > ------- > Full exception : org.argouml.persistence.OpenException : > java.lang.ClassNotFoundException: > org.argouml.uml.diagram.traceability.ui.MACMASTraceabilityDiagram > at > org.argouml.persistence.DiagramMemberFilePersister.load(DiagramMemberFilePer sister.java:74) > at org.argouml.persistence.UmlFilePersister.doLoad > (UmlFilePersister.java:355) > at > org.argouml.persistence.ZargoFilePersister.doLoad(ZargoFilePersister.java:34 1) > at > org.argouml.ui.ProjectBrowser.loadProject(ProjectBrowser.java:1231) > at > org.argouml.uml.ui.ActionReopenProject.actionPerformed > (ActionReopenProject.java:86) > 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:1000) > at > javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI .java:1041) > at > java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:231) > at java.awt.Component.processMouseEvent > (Component.java:5488) > at > javax.swing.JComponent.processMouseEvent(JComponent.java:3126) > at java.awt.Component.processEvent(Component.java:5253) > at java.awt.Container.processEvent(Container.java:1966) > at > java.awt.Component.dispatchEventImpl(Component.java:3955) > at > java.awt.Container.dispatchEventImpl(Container.java:2024) > at > java.awt.Component.dispatchEvent(Component.java:3803) > 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:1774) > at > java.awt.Component.dispatchEvent(Component.java:3803) > at > java.awt.EventQueue.dispatchEvent(EventQueue.java:463) > at > java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.ja va: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: java.lang.ClassNotFoundException : > org.argouml.uml.diagram.traceability.ui.MACMASTraceabilityDiagram > at > org.tigris.gef.persistence.pgml.PGMLHandler.initDiagram(PGMLHandler.java:112 ) > at org.tigris.gef.persistence.pgml.PGMLHandler.<init>( > PGMLHandler.java:72) > at > org.tigris.gef.persistence.pgml.InitialHandler.startElement(InitialHandler.j ava:62) > at > com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(Ab stractSAXParser.java > :533) > at > com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.startElement(XML DTDValidator.java:798) > at > com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanS tartElement(XMLDocumentFragmentScannerImpl.java > :878) > at > com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$ContentDispat cher.scanRootElementHook(XMLDocumentScannerImpl.java:1157) > at > com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$Fragm entContentDispatcher.dispatch > (XMLDocumentFragmentScannerImpl.java:1794) > at > com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanD ocument(XMLDocumentFragmentScannerImpl.java:368) > at > com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse > (XML11Configuration.java:834) > at > com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Con figuration.java:764) > at > com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java > :148) > at > com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractS AXParser.java:1242) > at > javax.xml.parsers.SAXParser.parse(SAXParser.java:375) > at > org.tigris.gef.persistence.pgml.PGMLStackParser.readDiagram > (PGMLStackParser.java:150) > at > org.tigris.gef.persistence.pgml.PGMLStackParser.readDiagram(PGMLStackParser. java:119) > at > org.argouml.persistence.DiagramMemberFilePersister.load(DiagramMemberFilePer sister.java > :67) > ... 31 more > java.lang.ClassNotFoundException: > org.argouml.uml.diagram.traceability.ui.MACMASTraceabilityDiagram > at java.net.URLClassLoader$1.run(URLClassLoader.java:200) > at java.security.AccessController.doPrivileged (Native > Method) > at > java.net.URLClassLoader.findClass(URLClassLoader.java:188) > at java.lang.ClassLoader.loadClass(ClassLoader.java:306) > at > sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268) > at java.lang.ClassLoader.loadClass(ClassLoader.java:251) > at > java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319) > at java.lang.Class.forName0(Native Method) > at java.lang.Class.forName(Class.java :164) > at > org.tigris.gef.persistence.pgml.PGMLHandler.initDiagram(PGMLHandler.java:105 ) > at > org.tigris.gef.persistence.pgml.PGMLHandler.<init>(PGMLHandler.java:72) > at > org.tigris.gef.persistence.pgml.InitialHandler.startElement > (InitialHandler.java:62) > at > com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(Ab stractSAXParser.java:533) > at > com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.startElement( > XMLDTDValidator.java :798) > at > com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanS tartElement(XMLDocumentFragmentScannerImpl.java:878) > at > com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$ContentDispat cher.scanRootElementHook > (XMLDocumentScannerImpl.java:1157) > at > com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$Fragm entContentDispatcher.dispatch(XMLDocumentFragmentScannerImpl.java:1794) > at > com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanD ocument > (XMLDocumentFragmentScannerImpl.java:368) > at > com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Con figuration.java:834) > at > com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse > (XML11Configuration.java:764) > at > com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:14 8) > at > com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractS AXParser.java:1242) > at > javax.xml.parsers.SAXParser.parse(SAXParser.java:375) > at > org.tigris.gef.persistence.pgml.PGMLStackParser.readDiagram(PGMLStackParser. java:150) > at > org.tigris.gef.persistence.pgml.PGMLStackParser.readDiagram > (PGMLStackParser.java:119) > at > org.argouml.persistence.DiagramMemberFilePersister.load(DiagramMemberFilePer sister.java:67) > at > org.argouml.persistence.UmlFilePersister.doLoad(UmlFilePersister.java:355) > at > org.argouml.persistence.ZargoFilePersister.doLoad(ZargoFilePersister.java:34 1) > at > org.argouml.ui.ProjectBrowser.loadProject(ProjectBrowser.java:1231) > at > org.argouml.uml.ui.ActionReopenProject.actionPerformed > (ActionReopenProject.java:86) > 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:1000) > at > javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI .java:1041) > at > java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:231) > at java.awt.Component.processMouseEvent > (Component.java:5488) > at > javax.swing.JComponent.processMouseEvent(JComponent.java:3126) > at java.awt.Component.processEvent(Component.java:5253) > at java.awt.Container.processEvent(Container.java:1966) > at > java.awt.Component.dispatchEventImpl(Component.java:3955) > at > java.awt.Container.dispatchEventImpl(Container.java:2024) > at > java.awt.Component.dispatchEvent(Component.java:3803) > 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:1774) > at > java.awt.Component.dispatchEvent(Component.java:3803) > at > java.awt.EventQueue.dispatchEvent(EventQueue.java:463) > at > java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.ja va: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) > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
