User FAQ

Where to get ArgoUML?
You can download the latest stable release from the home page of the ArgoUML project website:http://argouml.tigris.org/

All other releases can be found at: http://argouml-downloads.tigris.org/

Is there a manual?
Yes, there is a Quick Guide and User Manual (for v0.24).

Where can I discuss ArgoUML usage with other users?
A Users' forum is available here. There is also a Users' mailing list which is available on the ArgoUML site. See the list home page.

What versions of UML are supported?
ArgoUML versions through version 0.18.1 support UML 1.3. Beginning with version 0.20 in early 2006, ArgoUML began supporting UML 1.4. We don't have plans for the support of UML 2.0 in the immediate future, but it is a goal as the standard is completed and software components that support it (model repository, OCL, etc) become available.

Is there commercial support for ArgoUML?
Not currently. Companies such as Gentleware and Genuitec have created commercial derivatives of ArgoUML, but these are independent and have separate code bases.

How do I install ArgoUML?
The easiest way to get started is to click on the Java Web Start link on our home page. If you need a different style of installation, you can find more information in Quick Guide Chapter 2.

Where can I discuss ArgoUML usage with other users?
A Users' mailing list is available on the ArgoUML site. See the list home page.

Can I use ArgoUML for "large" projects?
Yes. But be sure to increase the default heap space, when you have more than about 50 modelelements. You can increase the heap space for any Java application by starting that application from the command prompt and doing the likes of:

java -jar -Xmx512m argouml.jar

OS X: How can I access the context sensitive menus?
Press the Apple Key together with the mouse button

OS X 10.2: How can I get ArgoUML to work?
ArgoUML will not work out-of-the-box on MacOSX 10.2 for people who have the Apple Developer Tools installed, because those tools install Java 1.4.1. There is a workaround, though: Apple leaves the 1.3.1 java engine installed, but in an obscure place. You can run ArgoUML from the Terminal window by typing

% /System/Library/Frameworks/JavaVM.framework/Versions/1.3.1/Commands/java -jar argouml.jar

Windows: How can I get ArgoUML to load when I double-click on a model file?
On Windows XP, (don't try this on Vista!) the trick is to do things in two steps. First, open Windows Explorer and find a .zargo file, and then right-click on it. You should get the normal Windows menu, including an Open or Open With option. At this point, give a description for the file like "ArgoUML Model", and tell Windows to use Notepad to open the file. That's not what you want to do ultimately, but it does get Windows to accept the .zargo extension as representing a valid file type. Now close, and then reopen Windows Explorer. If you are using a version of Windows prior to XP go to the Explorer menu and select View->Options. For XP you would use Tools->Folder Options. You should get a two (or more) tabbed dialog. Click the "File Types" dialog and then scroll through the list for the Description you gave - in this example "ArgoUML Model". Click to select that file type, and then click the "Edit" button.

Now, click on the "Open" action and then the "Edit" button there. You will then get a dialog that has a line for entering in the application action that will have a line for using Notepad to open the file. Replace that line with:

"C:\Program Files\Java\j2re1.4.1_01\bin\javaw.exe" -jar "c:\ArgoUML\argouml.jar" "%L"

Substitute your path to your JavaW.exe and ArgoUML.jar files if they aren't located where specified above. Click OK, then click OK, then click OK (three buttons on three different levels of the dialog).

You can now double-click on your model and have ArgoUML instantly loaded.

On Windows Vista, you do the following:


 * Create a batch file "runargo.bat" in your ArgoUML directory which looks something like this:

replacing "C:\ArgoUML" as appropriate.
 * Associate your .zargo files with this batch file (just double-click a .zargo file and follow the instructions).

Unix/Linux: I cannot start because of an java.net.UnknownHostException
ArgoUML uses the Java method InetAddress.getLocalHost to get the IP address of the local machine to use in constructing a unique identifier on all elements that are to be created in that instance of ArgoUML. This works for networked machines and for stand alone-machines. However there are cases when the TCP/IP configuration is wrong where this does not work. Make sure that 'hostname' returns a valid name on your machine and that there is an IP address for this name in your /etc/hosts file or DNS. The solution is, fix your network configuration.

If you want to suggest a better explanation or a fix within ArgoUML for this, go through the java.net.InetAddress and find out what really happens in this case.

Linux: Why does ArgoUML fail to start with an exception in the GUI components?
Many Linux distributions bundle GCJ (The GNU Compiler for the Java™ Programming Language) which, as of April 2006, doesn't provide sufficient functionality to run Java Swing applications such as ArgoUML. You can check on the current status of GCJ at http://gcc.gnu.org/java/status.html Please install a supported Java run-time on your system.

Linux: Does ArgoUML work with GCJ, GIJ, or GNU Classpath?
Not as of April 2006.

What is Java Web Start?
It is a way to download and install and launch Java applications with a single click and have the updated automatically when new versions are available. Java Web Start is included with recent Java Runtime Environments include Java 1.4.2 and Java 5/1.5.

For more information, see the Java Web Start product page.

How do I install Java Web Start?
If you have a recent JRE (Java 1.4 or later), you probably don't need to, but if you do, see the installation instructions on the Sun web site: Java Web Start. In particular, note that Mozilla and Netscape 6.x users must take an additional step to register the helper application in your browser preferences.

Web Start returns a Bad MIME Type error. What's wrong?
This is from the Lopica Unofficial JWS FAQ. This is a very common problem and most likely caused by Web Start's failed attempt to automatically detect your proxy settings. The "Bad MIME Type" error displayed by Web Start is somewhat confusing as it should really be a "Resource Not Found" error.

Your proxy will send back an error page either in HTML or plain text instead of the requested JNLP descriptor if it fails to get the JNLP descriptor requested by Web Start.

You can change your proxy settings for Web Start manually by starting the Application Manager and using the Preference panel. (Select File|Preferences to get there.)

Proxy Settings:

The certificate has expired.
Yeah, sorry about that. You are probably running an old release of ArgoUML that we have not signed again with the new certificate or we have messed up by making a release with an old certificate. For now, just click the "Start" button that proceeds with the expired certificate.

The certificate cannot be authenticated
Yeah, sorry about that. The security in Java Web Start relies on certificates that are signed by known and trusted root certificates and authorities. To acquire such a certificate you need to have a registered company that owns the certificate and you need to pay some money to get it... For the ArgoUML project we don't have a company around that can own the certificate so we don't achieve the security to the level that the Java Web Start is designed to do. That is the reason you get a warning every time you download a new version. The next question is about how you avoid the warning.

How to trust upcoming Java Web Start deliveries?
For the impatient: Download "argouml-linus-2.cer" Use keytool to import the certificate to jre/javaws/cacerts (Give password: changeit) keytool -import -alias linus@tigris.org -file argouml-linus-2.cer -keystore cacerts

Verify the fingerprints
If you are somewhat "security aware" and would like to understand what you are doing Be sure you are linked to the tigris.org ArgoUml-server, e.g. by putting "http://argouml.tigris.org/servlets/ProjectDocumentList" into the adressline of your browser. ( To be honest you can't be sure that it is not a fake what you are seeing unless tigris.org will supply a https://argouml.tigris.org ) Download "argouml-linus-2.cer". ( The self signed certificate of the public key that Linus Tolke uses to make the ArgoUML releases. You must trust that it was put there by Linus Tolke and that it has not been compromised on the tigris server or while moving it from the tigris server to your computer. ) Before the release 0.23.3 the certificate was called "argouml-linus-1.cer". Note one of the hashcodes: MD5: 88:B9:BB:BE:B8:53:F8:97:FC:B4:AE:9F:E2:2F:21:50 SHA1: 1C:5D:60:B3:77:29:94:4A:1F:BE:B0:0E:D5:D9:66:63:9B:EC:E5:E6 that are published together with the file on tigris.org. Be sure to get it from there!

The old certificate had the hash codes MD5: F1:A9:ED:79:88:91:19:31:AA:69:EE:A0:8F:AF:4A:43 SHA1: B5:F4:02:AC:7D:34:FF:61:D4:56:CF:AE:10:F8:1D:B9:24:AB:DF:AA

Import the certificate to your local installation of Java Web Start. You can do that - for example - performing these steps: In a terminal window (DOS-Box) change to your Java Web Start folder, usually this would be $JAVA_HOME/jre/javaws (%JAVA_HOME%\jre\javaws)

Enter keytool -import -alias linus@tigris.org -file argouml-linus-2.cer -keystore cacerts

If you are asked for the password enter the default "changeit" or the appropriate one that you have assigned to your local JKS-keystore of Java Web Start named "cacerts".

You will be asked wether you trust this certificate or not. Compare the locally generated hashcodes (fingerprints) shown to that read from tigris.org (see step 3). If the fingerprints match and you decide to trust the whole chain of Linus Tolke, Tigris, your internet connection, and your computer enter "Yes" in your language.

That's it! Now you should not see a message like "Failed to verify the authenticity of this certificate. No assertions can be made of the origin or validity of the code. It is highly recommended not to install and run this code." Now you are trusting the updates from ArgoUML issued by Linus Tolke using this certificate.

If you notice that the September 2004 certificate ("argouml-linus-1.cer") expired in November 2006, that was the reason Linus Tolke created a new certificate (in October 2006) and the fingerprints for the new certificate are different. The new certificate ("argouml-linus-2.cer") expires in March 2012 and then a new certificate will be created then unless something has happened that changes this. If Linus Tolke will let someone else do the release work and sign the Java Web Start releases with a new key the key will change. In both of these cases you will have to do this all over again to trust the new certificate.

Further readings:


 * Keytool documentation
 * Java Web Start FAQ
 * Java Web Start whitepapers
 * Java Web Start for developers

Other problems.
If you have any other problem with JWS, please: check for existing bug reports and add a comment to one of them, or report it as a new bug. Thanks.

How do I know what diagram I'm working on?
The name of the current diagram is displayed in the Title bar of the ArgoUML application window. How can I sort the artifacts in the Navigation Pane, for example sort all of my Actors? That is not currently supported.

How do I arrange my diagram elements?
There are several ways to easily and elegantly move diagram elements. Select the elements you want to move. By holding down the control key you can select several.

Now hit your arrow keys. Your elements move a little with every key stroke.

If you also hold down the shift key, they move a bit faster.

Or click on the broom button, move your mouse to the diagram pane, right click and hold. Now moving your mouse side ways (or up and down) will align elements.

There also is the menu item Arrange where you can align, group or nudge (move a little bit) elements.

Why don't the sequence diagrams work?
You are probably using an old version of ArgoUML. Upgrade to ArgoUML 0.20 or later. I'm trying to change the ordering of the links in the sequence diagram. How do I do that? That is not currently supported.

How do I create a diagram?
If you are trying to create a Sequence, Statechart, Activity, or Collaboration diagram, you need to have an appropriate model element selected for the diagram to be associated with. If you just want to experiment with different diagram types, the easiest thing to do is create an empty Class on the Class Diagram and select it to enable the other diagram buttons.

How does the note tool in the tool bar work?
Click on your target class. Then click on the note icon. ArgoUML will generate the link automatically. You can also right click on an element in the diagram to add a note as well.

Be aware that your note will not appear in the source code documentation tab but it will appear in the diagram view of the navigation pane (the left pane tree view).

What is the easiest way to enter data into attributes and methods window for classes?
Click direct class properties pane and start typing.

Where can I find some sample ArgoUML models?
There are some models at: Most of these are incomplete, so if you'd like to to do more work on them or create additional examples, the contribution would be welcome. XMI and other formats
 * Diagrams from UML Distilled
 * Diagrams from UML 1.3 specification (chapter 2 only)
 * Diagrams from UML 1.4
 * Diagrams from O'Reilly Nutshell book

Why won't my XMI file load?
There are several possible reasons for ArgoUML to be unable to load your file. Some of them include: Proprietary vendor format - Some tools write non-standard XMI files either by default or always. Here are some tips for getting standard files from a few known tools:
 * Wrong UML/XMI version - ArgoUML supports UML 1.3 or 1.4 stored in XMI 1.0, 1.1, or 1.2 files. It's native format is UML 1.4, so that's the best version to choose if you have a choice. Similarly XMI 1.1 or 1.2 will provide the best information transfer. Versions of UML greater than 1.4 and versions of XMI greater than 1.2 are not supported.
 * Poseidon - Turn off the option Save with diagram data in the Export Project to XMI dialog.
 * MagicDraw - Turn on the Rich XMI option on the Save As dialog and select either XMI 1.1 or XMI 1.2. Also, if your project references any external modules such as the Magic Draw profile, you'll need to import those so that ArgoUML can reference them. Right click on the module in the explorer pane and select Modules->Import.
 * Enterprise Architect - Select do not export UML diagrams and do not enable full EA Roundtrip. (Thanks to user "Roel" for this information)

If the ArgoUML error message complains about an unknown element named 'UML:Diagram' (generated while loading non-standard Poseidon files and perhaps others), you may be able to get the file to load by turning on the ArgoUML user preference to ignore Diagram elements on user preference Settings dialog (ArgoUML 0.21.1 or later).

Does ArgoUML save XMI files?
Yes. ArgoUML versions through 0.18.1 will export XMI 1.0 files containing models conforming to the UML 1.3 metamodel. Beginning with ArgoUML 0.20, XMI 1.2 files are exported conforming to the UML 1.4 metamodel. XMI files can be exported separately and they are also included in the zipped .zargo file where they can be extracted using the 'jar' command.

How do I import an .xmi into ArgoUML and what formats are known to be supported?
The Import XMI File option on the Tools or File menu (depending on your version) can be used to import an XMI file from another tool. No diagram data is included in the XMI file for UML versions prior to UML 2.0, so you will only get the model data, not any diagrams. UML 1.3/XMI 1.0 is the only format supported through ArgoUML 0.18.1. Beginning with 0.20, ArgoUML can read UML 1.3 & 1.4 in XMI 1.0, 1.1, and 1.2 formats. It only writes UML 1.4/XMI 1.2.

Interoperability with other modeling tools has improved over time, but still continues to be problematic in some cases. XSLT can be used to correct some problems and you can find examples included in the ArgoUML source. There are also commercial solutions available from companies such as MetaIntegrations.

Currently ArgoUML exports to XMI version 1.0 only, why?
Through ArgoUML 0.18.1 only UML 1.3/XMI 1.0 is exported. Beginning with 0.20, only UML 1.4/XMI 1.2 is exported, although both UML 1.3 and 1.4 are read as well as all of XMI 1.0, 1.1, and 1.2. The UML 1.4/XMI 1.2 combination should be interoperable with many more tools than UML 1.3/XMI 1.0, but if you need a different version, you'll have to use a separate tool to do the conversion.

Can ArgoUML read an MDL file generated by Rational Rose?
No. MDL is a Rational Rose-specific format. You are much better off getting Rose to export an XMI file. Rose has an XMI Add-in that can create XMI format from an MDL file. It may move as the IBM site is reorganized, but you may be able to find version 1.3.6 here. If that doesn't work this might take you to a page of Rose add-ins that you can search. There's also a technote describing the various versions of this add-in.

I have a project where I need to add tags to attributes. How do I do that?
Open the zargo file with any zip application and you'll find the XMI inside. If you want to convert it to XSD then go to http://xmlmodeling.com/ (Dave Carlson's site) and convert the XMI there.

I have a Gentleware project. How do I convert it to ArgoUML?
When Poseidon was first created from ArgoUML it was possible to manually convert projects, but the two tools have diverged too much to make this practical any more.

Export an XMI file from Poseidon and import it to ArgoUML like you would from any other modelling too.

How can I print my diagrams?
Select a diagram, then go to File->Export Diagrams. You can generate gif, postscript, eps or .svg format.

What does SVG stand for?
Scalable Vector Graphics. It's a standard of the World Wide Web Consortium (W3C). Find out more at the www.w3.org.

How do I save my diagram as .SVG?
First: select .svg as the file type. Second: type the name of the file as you like with the .svg tag at the end. Example myumldiagram.svg

Can I save my diagram as EPS with a preview image?
No.

Can I output my entire project as an HTML?
No.

Can I save just part of a diagram?
No. You will have to edit the image after saving.

Does ArgoUML generate an XMI document?
Yes, models can be saved in XMI format (without the graphical information). It is also one of the files zipped into the .zargo file, which can be unpacked with the Java jar utility or a Zip utility.