shop Site map Contact Us
Home Page Product Info Training Download Support Resources Resources Testimonials NM Services NM About Us NoMagic UML Forum What's New
For information in Japanese, click here
Contact support
Sales and Licensing
FAQ
Subscribe to mailing lists
Installing and running
Upgrading to new version
Upgrading to new version
AndroMDA Compatibility
JVM List
|



-----
FAQ

Installation, Running
Performance
Java Virtual Machine (JVM)
Save, Load, Import, Export
Projects migration to UML 2
UML/Diagramming
Printing
Code Engineering
Features
Integrations
Teamwork Server
Modules
Floating License
ParaMagic Plugin
Cameo DataHub
MagicDraw RSXConverter
MagicDraw RConverter
Interchange with Other Tools
Plugins
Documentation/Help
Older Versions
Unlock Keys
Users Profiles
Purchase
Other issues


-----

Installation, Running

-----

After installing MagicDraw on the Mac OS with Java (1.6.0_17), default Look & Feel does not function and the Mac menu bar is gone.

In order to fix the problem with the menu bar after java update on the Mac OS, you need to open /.magicdraw/16.6/data/global.opt and change the string ?com.apple.laf.AquaLookAndFeel? to ?apple.laf.AquaLookAndFeel?.

When I saving project after I have upgraded Magicdraw to v16.6 I get a save error.

Save error appears saving project with modules when MagicDraw v16.6 is installed on top of MagicDraw v15.0 or earlier (using autoupdate functionality). This problem occurs because one or more old resource descriptors from MagicDraw v15.0 or earlier are corrupted.

To prevent MagicDraw project save error you need to install MagicDraw v16.6 to a new location ? to a new and empty folder, for example, ?MagicDraw UML 16.6?. Note that on the first MagicDraw startut you can import MagicDraw environment options from previous MagicDraw installations.

You may download MagicDraw UML 16.6 from your personal or company profile on www.magicdraw.com, also to obtain unlock keys.

Latest Java update on Mac OS Snow Leopard is not compatible with old MagicDraw versions.

This problem has been fixed starting from 16.5 SP3. Service pack enables application work with latest Java update on Mac OS. We suggest you to download MagicDraw UML 16.5 SP4 or 16.6 from your personal area on our website www.magicdraw.com

Note: It is important to make project backup's before opening them with the higher version MagicDraw application in order to minimize update risk.

Alternatively you can use work around for this issue with older MagicDraw versions:

Please define older JAVA version in mduml.properties ( < magicdraw_install_dir > /bin/ ) file and work with that JAVA version (for example version 1.5.0 or previous 1.6.0).

You can download java installation from:
http://wiki.oneswarm.org/index.php/OS_X_10.6_Snow_Leopard

Note: Installation instructions can be found at the same web site.
Note: Java 1.5 installation on Snow Leopard rely on an untrusted gzip file.

Update of JAVA 1.6.0.13 for Mac OS causes the disappearing menu.

We have found that update of JAVA 1.6.0.13 for Mac OS triggers the problem with disappearing MagicDraw menu. This issue is fixed in 16.5 SP3. Also we suggest two workarounds:

1. You need to define older JAVA version in mduml.properties (<magicdraw_install_dir>/bin/ ) file and work with that JAVA version (for example version 1.5.0 or previous 1.6.0).

2. You need to change Look & Feel style by editing global.opt file. Note: This problem does not exist on Metal Look & Feel.

Steps how to do that:
*Shutdown MagicDraw application;
*Go to < user_home > ./magicdraw/ < magicdraw_version > /data/;
*Open global.opt file with text editor;
*Find LOOK_AND_FEEL_CLASS propertyID.
*Replace tag < value > apple.laf.AquaLookAndFeel < /value > with new one:
< value > javax.swing.plaf.metal.MetalLookAndFeel < /value >
*Save file;
*Start MagicDraw application.

When I run the exe file I get a warning: Please select another location to extract the installer to:.

This error occurs when you have a corrupted installer file. Please download the file and install again.

How to update MagicDraw to new version?

You may find all the information about updating to new version at www.magicdraw.com, Support section -> Updating to New Version

After the install, the MagicDraw cannot be launched or it just appears on the screen and dissapears or hangs.

Start MagicDraw with system property no.printer.lookup=true. In the /bin/mduml.properties file to the line'JAVA_ARGS=' append additional part -Dno.printer.lookup=true.

If you still experience problems, please write to support@magicdraw.com.

How to run MagicDraw under Unix after installation?

Run mduml file, which is located in MagicDraw installation directory, bin folder.

The installation was on a network disk where the user has read only rights. Is it possible to change paths on the local disk area where the user has writing rights?

MagicDraw can use user home directory to store user configuration files. This is enabled by default on Unix systems.
You should edit mduml.properties file to enable this. Please open mduml.properties file from the bin directory and edit the line to:
JAVA_ARGS=-Xmx600M -DLOCALCONFIG=true

I ran into a trouble when installing MagicDraw:
Launching installer...
Exception in thread "main" java.lang.NoClassDefFoundError: com/zerog/lax/LAX

In most cases such error appears when installer file is truncated or corrupted.
Please try to download an installer again.

Another option is that /usr/bin/java is an old version java. To check which java is used by installer, set environment variable LAX_DEBUG and launch installation again.
By default installer first uses java found in /usr/bin. But there is possibility to use specific VM when launching the installer. Please add parameter LAX_VM to launcher and second parameter path to java executable, here is an example (assuming that java is in /opt/j2sdk1.5.0_03):
./MD_UML_105_unix.sh LAX_VM /opt/j2sdk1.5.0_03/bin/java

After the download the installer cannot be launched or it just appears on the screen and vanishes

Please check if the file is not truncated. You can see the exact file size at the download page.

In our company the storage of user home directory is limited. How to force to keep configuration files in other directory?

You can save configuration files in the MagicDraw installation directory or on your chosen directory. To store MagicDraw configuration files in MagicDraw installation directory add argument into JAVA_ARGS line in file mduml.properties (this file is in <MagicDraw installation directory>/bin):
JAVA_ARGS=-DLOCALCONFIG=false

To store MagicDraw configuration files to your chosen location
1. In the <User home directory>/.magicdraw/<version> folder, create file named magicdrawredirect.
2. In the created file, type absolute path where MagicDraw configuration and auxiliary files will be saved, for example: C:\<directory name>.

NOTE: If there is defined to store files in MagicDraw installation directory (see the section "To store MagicDraw configuration files in MagicDraw installation directory" above), files will not be stored to your chosen location.

On the Macintosh, MagicDraw points out error at startup:
java.lang.NullPointerException
at sun.java2d.SunGraphicsEnvironment.getAvailableFontFamilyNames(SunGraphic sEnvironment.java:327)
at sun.java2d.SunGraphicsEnvironment.getAvailableFontFamilyNames(SunGraphic sEnvironment.java:359)
at com.nomagic.actions.SetFontFaceAction.(SetFontFaceAction.java)
at com.nomagic.actions.SetFontAction.(SetFontAction.java)
...

Based on messages from the Apple java-dev mailing archive, a lot of people who use Java 1.4.1 on Mac have experienced similar problems. Someone suggested this had to do with bitmap fonts in a Classic install in "/System Folder/Fonts". And it seems that renaming "/System Folder/Fonts/" to "/System Folder/Fonts.not/" or something else and rebooting your machine can solve the problem.

I installed MagicDraw and it ran. Worked fine. I shut down my machine, started today, and MagicDraw won't start ?!?

This problem is Install Anywhere related and appears when you uninstall previous version of MagicDraw and then, without restarting your computer, install another MagicDraw in the same directory.
We would suggest to uninstall MagicDraw, restart your computer, and then install MagicDraw again.

MagicDraw UML does not start on Mac OS after QuickTime 7.2 update

This is a known issue in Intel based Mac OS with QuickTime 7.2 update that causes most of the Power PC applications to refuse to start. This problem hounts some Java apps too, and sometimes MagicDraw UML refuses to start from the icon created by the installer. Although it is possible to start MagicDraw from command line (look for classpath and JVM flags from Indo.plit file).

There is available one solution that fixes the Power PC apps and also the MagicDraw from here: http://mactip.blogspot.com/2007/07/dependent-dylib-is-not-prebound.html

The fix involves some command-line and text editor usage, but it's relatively simple and it works.

What is the best way to reinstall MagicDraw on new computer or the same one after formatting.

No special steps are needed. Uninstall MagicDraw using standard MagicDraw uninstall engine before formatting hard drive or moving to new machine.
Afterwards install fresh installation on new machine.

MagicDraw installer or MagicDraw is not started on Linux OS

MagicDraw installer may not be started or MagicDraw itself may not be started, because of changes in default system Java. In this case when starting installer or MagicDraw, no GUI appears or when starting from command line the following message is displayed:
Configuring the installer for this system's environment... No Java virtual machine could be found from your PATH environment variable. You must install a VM prior to running this program.
We would suggest the following solution:

  • Change your default system Java to recommended. Recommended Java Virtual Machine is Sun's JDK 1.6.0_10 for Linux.
  • After some Ubuntu update, the Ubuntu Java overrides default Sun Java and default system Java becomes Ubuntu Java. To start the MagicDraw installer, Ubuntu-restricted-extras should be installed. For more information about installing the Ubuntu-restricted-extras, see the Ubuntu website: https: //help.ubuntu.com/community/RestrictedFormats .

Diagram printing is not working on Linux OS

The problem is related with the Linux cups package update.
This problem is Sun Java bug and description of this problem is published in the Java Bug Database: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6633656. To solve diagram printing problem we would suggest to use 1.6.0_10 JVM or later, because this issue is solved in these java versions.
If you can not use the 1.6.0_10 JVM or later, other possible solution would be the following:
1.Open the file /etc/cups/printers.conf
2.Before each line with the text </Printer>, add the following line:
Options orientation-requested 3

For more information about solving this problem, see the Ubuntu bug database: https://bugs.launchpad.net/ubuntu/+source/sun-java6/+bug/156191/comments/18.
You can also use the workaround for diagram printing and print the diagram in the following way:
1.Export diagram as Image. To do this from the File menu choose Save as Image.
2.Open exported image and print it.
For more information about saving diagram as images see MagicDraw UserManual.pdf, Working with Diagrams > Saving as Image section.

MagicDraw is not started on Windows Vista

If you are using the recommended java version and MagicDraw can be started only under Administrator privilegies, the possible reason can be the Windows Vista User Access Control (UAC) restrictions. You can try to turn off the UAC and then to start MagicDraw.
For more information about turning off the UAC, see the Microsoft Windows website: http://windowshelp.microsoft.com/Windows/en-US/Help/58b3b879-924d-4e08-9358-c316055d3eae1033.mspx.


-----

Performance

-----

Using a nvidia 8240 agp adapter in dual monitor mode any part of the display past the first 1/3 of the second monitor does not display correctly. Using ASUS nvidia 8240 delux latest driver. Also tried the nvidia latest driver with the same result.

Try to start MagicDraw without direct draw, and edit JAVA_ARGS the line in the MagicDrawUML/bin/mduml.properties file by adding -Dsun.java2d.noddraw=true.

The line should look like: JAVA_ARGS=-Xmx600M -XX\:PermSize\=40M -XX\:MaxPermSize\=200M -Dsun.java2d.noddraw=true.

When I attempt to open certain file dialog boxes, it takes several minutes for the file dialog to open.

We noticed such behavior under Windows NT when mapped network drives are present, but a portion of them are offline. Try disconnecting all offline drives.

Sometimes when running the program the OutOfMemory error occurs.

If you are running the Sun's JVM, set the following java properties in your mduml.properties file: in the line JAVA_ARGS=-Xmx600M, change the number of heap size '600' to maximal heap size in megabytes.

For example:
JAVA_ARGS=-Xmx800M
This sets java heap size to 800 megabytes.

If you get exception "java.lang.OutOfMemoryError: PermGen space" please, check if PermSize is specified in mduml.properties file.

The JAVA_ARGS line should look like:
JAVA_ARGS=-Xmx600M -XX\:PermSize\=40M -XX\:MaxPermSize\=150M

If PermSize is specified in mduml.properties file and the same problem still appears, the MaxPermSize should be increased. PermSize is part of heap size, so MaxPermSize should always be smaller than heap size specified with Xmx parameter.
For example:
JAVA_ARGS=-Xmx600M -XX\:PermSize\=40M -XX\:MaxPermSize\=200M

Sometimes when running the program the StackOverflowError occurs.

If you are running the Sun's JVM, set the following java properties in your mduml.properties file: to the line JAVA_ARGS=-Xmx600M, append the string -Xss[stack size]

For example:
JAVA_ARGS=-Xmx600M -Xss2M
This sets java stack size to 2 megabytes.

The menu fonts are corrupted when MagicDraw is in Japanese mode.

It appears when MagicDraw is run with Windows Look and Feel. Please change Look and Feel to Metal (Options main menu -> Look and Feel -> Metal).


-----

Java Virtual Machine (JVM)

-----

How to install Java 1.5 on Mac OS X 10.6 Snow Leopard?

In order to install Java 1.5 on Mac OS X 10.6 Snow Leopard, please follow these steps.

Execute the following commands in the terminal:
1. Get the java 5 that was included in 10.5 "leopard" and unpack:

cd /tmp/
curl -o java.1.5.0-leopard.tar.gz
http://www.cs.washington.edu/homes/isdal/snow_leopard_workarou nd/java.1.5.0-leopard.tar.gz.
tar -xvzf java.1.5.0-leopard.tar.gz

2. Move it to your System java folder (password needed):

sudo mv 1.5.0 /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0-leopard

3. Tell OS X that java 5 actually is java 5:

cd /System/Library/Frameworks/JavaVM.framework/Versions/
sudo rm 1.5.0
sudo ln -s 1.5.0-leopard 1.5.0
sudo rm 1.5
sudo ln -s 1.5.0 1.5

After these commands, Java 1.5 will be installed. You can check Java 1.5 on Java Preferences dialog (open "/Applications/Utilities/Java Preferences.app")

Change the properties to use Java 1.5 32-bit on MagicDraw. Open file "mduml.properties", which is located in < MagicDraw installation folder > /bin and change path in line JAVA_HOME=.
The line should look like:
JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/1.5/Home

I would like to increase java heap size that MagicDraw would run faster with larger models. I have 12 GB of RAM.

You can change the java maximum heap size (-Xmx) in your < MagicDraw installation directory > /bin/mduml.properties file, in the line:
JAVA_ARGS=-Xmx800M

The maximum theoretical heap limit for the 32-bit JVM is 4G. Due to various additional constraints such as available swap, kernel address space usage, memory fragmentation, and VM overhead, in practice the limit can be much lower. On most modern 32-bit Windows systems the maximum heap size will range from 1.4G to 1.6G. On 32-bit Solaris kernels the address space is limited to 2G. On 64-bit operating systems running the 32-bit VM, the max heap size can be higher, approaching 4G on many Solaris systems.

On 64-bit VMs, you have 64 bits of addressability to work with resulting in a maximum Java heap size limited only by the amount of physical memory and swap space your system provides.

More information about OutOfMemory problems you can find in readme.html by ?OutOfMemory problem? paragraph. This file is located in < MagicDraw installation folder > .

How to change JVM version?

Change line in file mduml.properties (this file is in bin folder): JAVA_HOME =<path to new JDK>

NOTE: Integrated MagicDraw runs on the JVM specified by the IDE. In order to change JVM, you need to modify startup properties for the IDE, MagicDraw integrates with. If you are running MagicDraw integrated with IDE, read the appropriate readme.html for specific integration, which can be found in <MAGICDRAW installation directory>/integrations/<IDE directory>.

How do I know what version of JVM I am running?

You may find this information in the About window (Help menu -> About)
or
If you have Sun's or IBM's JVM, enter the following in the command prompt: java -version.

There are problems when using JVM 1.6 with MagicDraw v14.0 and previous.

The problems are usually related with opening/creating projects. The recommendation is to use JVM 1.5 for MagicDraw v14.0 and previous.

I want to check which JVM is used for installation under Linux.

You can watch installation process by setting environment variable LAX_DEBUG to value 1 before starting installation.


-----

Save, Load, Import, Export

-----

How to migrate existing projects to the new MagicDraw version?

You should copy all contents from old version projects folder to new version projects folder. If projects do not show up, copy the complete projects directory into the same location by creating all new projects and then importing the latest .xml.zip file.

I am trying to import an XMI 1.1 file with MagicDraw. I got a load error "Wrong XMI version : MagicDraw supports only Unisys XMI 1.0"

Up to MagicDraw 10.0 version, XMI v1.0, v.1.1 and v1.2 load, save and import is supported.
Beginning with MagicDraw 10.0 XMI 2.1 is supported. And only model load from XMI 1.0 - 1.2.
But if you are trying to open an Unisys XMI 1.1 (XMI v1.1 with Unisys extensions), it is not supported by MagicDraw, only Unisys XMI 1.0 can be loaded.

Are there any recommendations for saving diagram as image?

It is not recommended to use the following fonts for diagram saving as .eps, .emf, and .wmf:
Default, Dialog, DialogInput, Monospaced, SansSerif, and Serif.

When exporting image to EMF and pasting to Mac Word, error message "Image is corrupted" appears .

This is a know problem of Mac Word. Still we don't know when it will be fixed.

We are seeing the following error loading our model: Failed to load Windows configuration. Reseting to default.

This is known problem. Your model and diagrams are ok, the only thing, which could not be restored, is layout of MagicDraw windows inside application. Such things can happen when project is saved and then loaded on computers which has different resolution or different windows management system.
Usually this error does not appear any more after save and load. If it still exists after save/load, please send us md.log file from the user home/.magicdraw directory (the info about where the MagicDraw configuration files are located, you may find in the About screen).

When I save a diagram to .emf image and try to insert this image file to my OpenOffice document I only get empty image.

Such problem really exists and will be fixed in future releases.
As a workaround we suggest to save your diagrams as SVG and then use free Inkscape editor (http://www.inkscape.org/) to export diagrams as hi-res png.

How can I copy a diagram from one MagicDraw project into another one?

Use project import feature. After importing a project you will have to remove unnecessary elements by hand. If the imported project is very large, it will not be very convenient. Thus, large project should be divided into logical modules and only specific modules with needed diagrams should be imported.


-----

Projects migration to UML 2

-----

Can I open older MagicDraw files?

With MagicDraw 10.0 or later version you can open all projects, created with previous MagicDraw versions. After opening projects, created before MagicDraw 10.0 version, they will be converted to UML2.

What XMI version supports MagicDraw?

Since MagicDraw 10.0 version, XMI 2.1 standard for UML2 is supported.

What will happen with my old projects on MagicDraw Teamwork Server?

After opening teamwork projects with MagicDraw 10.0 version or later, they will be converted to UML2 data following the same instructions as for regular MagicDraw projects.

Can I import all teamwork projects versions?

Using manual update of Teamwork Server and importing all projects from earlier Teamwork Server version, all versions will be imported, but only latest project version will be converted into UML2, all old versions (history) will remain based on UML 1.4. It will be possible to open any old version only in read-only mode. More information about projects migration you may find at MagicDraw Migration to UML2 Manual http://www.magicdraw.com/main.php?ts=navig&cmd_show=1&menu=downl oad_manual


-----

UML/Diagramming

-----

Is there a way I can find all items in the containment tree that are not used in any diagram? This would be useful to tidy up models.

You can easily find elements that are not used in any diagram using MagicDraw Find functionality.

Select command Find... from the main Edit menu to invoke Find dialog. Then specify search scope (we do not recommend to search in the whole Data package, as elements from modules will be found), and select checkboxes "Search data unused in diagrams" and "Load diagrams and unloadable modules".
Elements that are not used in any diagram will be displayed in the Search tab in model browser.

Is there a way to automatically display links when element with relations is dragged onto the diagram?

To automatically discover relations on elements drag?n?drop - go to Options -> Environment -> Diagram -> Editing -> and change Display paths on element drop to true.

I would like to specify that a string has maximum length 8 or that an account number has only 14 numbers. How do I specify this?

"Type Modifier" property should be used. Open property specification window, switch to the "Expert" property displaying mode, and define value (for example - 14) there.

How to do a loop with a conditional in sequence diagram?

You may model loops and conditions using fragments.
Use Combined fragment with operator "loop" for iteration notation and add another one Combined Fragment with operator "alt" for conditional messages grouping inside loop.

Does your tool support bidirectional associations (arrow at each end or no arrows)?

MagicDraw allows you to show navigability arrow only on one end of an association path. When both ends are "navigable," MagicDraw simply suppresses that information and arrows are not visible.

If I add a class to a class diagram and begin typing its name with the prefix of the already existing class, the name will be automatically completed.
How to tell MagicDraw that it has made the correct assumption and that I would like to accept its choice?

Go with the arrows to the desired class name and press Enter.

Is there any way to get a sequence diagram from a communication diagram?

Currently there is no way to generate a sequence diagram from a communication diagram, or vice versa.

Communication diagram is kind of Interaction Diagram and reuses some UML elements from Sequence Diagram, but is very limited. Most of advanced Sequence Diagram elements can't be reflected in Communication Diagram. It includes all kinds of CombinedFragments, Gates, Nested activations, Sequence of messages and more, so even theoretically Communication Diagram can't be equal to Sequence Diagram.

Currently we try to gather information what would be the benefits of this feature. We would be very grateful if you could share your opinion with us.

For non automatic elements reuse - Communication Diagram can be generated inside the same Interaction (as Sequence Diagram). In this case Lifelines can be reused by simply drag'n'drop them from Interaction directly to communication diagram.

How do I associate a state diagram with a certain class?

There are two ways:
1. Drag and drop a state diagram on the selected class in the browser.
2. Choose the "State Diagram" command from the class shortcut menu in the browser tree.

How do I connect interface to port with Interface Realization relation?

Port must have type specified. Only after that provided interfaces can be specified. This is because port can't provide interfaces itself, port type does (Interface Realization relation is created between type of the port and Interface, it can't be connected to Port, because port is not Classifier). Port type can be also class like port_impl.

I have a class which has a realization relationship to an interface. When I use this class in a sequence diagram (as the receiver of a message), I cannot select the operation, which is part of the interface.

Class must implement all operations from interface first. From the class shortcut menu, choose Tools->Implement/Override Operations or implement all operations manually.

I have two diagrams on which the same pair of classes appears. On one of the diagrams an association is displayed between this pair, but not on the other. How can I get this association to appear on the other diagram?

Please use Related Elements > Display Paths shortcut menu command.

I have no possibility to display the names of transitions in the State Machine diagram. The option "show name" in the context menu of the transition doesn't work.

The name of the transition (the value of the name property) is never shown in diagram - this has no semantic meaning. Instead, you can specify e.g. a signal, that triggers the transition. In this case the name of the trigger is displayed. If trigger name is not specified, signal name is displayed. If start typing on a transition, the signal with the name is typed will be created Automatically and the trigger will reference that signal.

A trigger defines types of events that can initiate a transition between states. An event is anything that can happen in a system: signal sent by some behavior, a call to a specific operation, reaching a point in time, a change in values within the system, etc. In other words, the formally defined list of possible events is enough for modeling state machine transitions using UML. A transition has to know of some event (indirectly), it cannot be fired by a trigger alone.

Transition signature defined in section 15.3.14 of UML 2.2 is as follows:

<transition > ::= [ <trigger > [',' <trigger >]* ['[' <guard-constraint >']'] ['/' <behavior-expression >]]

However, trigger is a non-terminal and its production rule is described in section "13.3.31 Trigger" (UML 2.2):

<trigger > ::= <call-event > | <signal-event > | <any-receive-event > | <time-event > | <change-event >

Production rules for call-event, signal-event, any-receive-event, time-event and change-event are described in sections 13.3.6, 13.3.25, 13.3.1, 13.3.27, 13.3.7 respectively:

<call-event > ::= <name > ['(' [ <assignment-specification >] ')']
<signal-event > ::= <name > ['(' [ <assignment-specification >] ')']
<any-receive-event > ::= 'all'
<time-event > ::= <relative-time-event > | <absolute-time-event >
<relative-time-event > ::= 'after' <expression >
<absolute-time-event > ::= 'at' <expression >
<change-event > ::= 'when' <expression >

As can be seen, trigger names are never used in transition labeling. Instead, names of the referenced elements are used.

Symbols in diagrams come out as squares instead of characters (Chinese, Japanese, Thai,....):

  • Since not every font supports characters (whether Chinese, Japanese, Thai or any other), the symbol font should be changed to one that supports such characters. To change a particular symbol font:
    1. Select Symbol on the diagram.
    2. Right-click to access the symbol?s shortcut menu and choose Symbol(s) Properties.
    3. Change the Font property in the Properties dialog box, for example, from Arial to Webdings, or any other font that supports particular characters. Characters will then be displayed instead of squares.
    To change a particular symbol font for a whole project:
    1. Go to the Options menu -> Project in MagicDraw Application.
    2. In the Project Options dialog box, Symbols properties styles -> Default -> Diagram section change the Font property.
  • In addition, when setting your computer, the language for non-Unicode programs should be set to Chinese or Japanese or Thai or any other character-based language. For example, under Windows XP, select Control Panel, click the Regional and Language Options tab, then the Advanced tab and select the character-based language (Chinese or Japanese....)
  • If squares are displayed instead of Thai or Japanese characters, change the Language option in the Environment Options dialog and select Thai or Japanese.
  • The same problem with squares displayed instead of characters is known to happen:
    • if Metal Look and Feel applications are set.
    • when a Java version earlier than 1.5.0 Java is used.


-----

Printing

-----

When I try to print, I get a warning dialog that says "No print service found." I am able to print with other applications as well as from the command line of a terminal window.

Problem is that the default server address in CUPS 1.2 is a domain socket, which Java does not support. They will be implementing a fix for that. At current time you can force your Java applications to use IP instead of domain sockets. Create/update an /etc/cups/client.conf file containing:

ServerName localhost

Page setup dialog doesn't list large media size on Linux

Add "-Dmagicdraw.pageSetupDialog=true" property at JAVA_ARGS in mduml.properties file, located in MagicDraw install root, "bin" directory. It will enable magicdraw page setup dialog in which media size could be customized manually by typing size in inches.

Page margins are returned incorrectly from the Page Setup dialog

Add "-Dmagicdraw.pageSetupDialog=true" property at JAVA_ARGS in mduml.properties file, located in MagicDraw install root, "bin" directory. It will enable magicdraw page setup dialog in which paper margins could be customized.

MagicDraw crashes or some text is messed up when printing a diagram.

Try to add "-Dsun.java2d.print.shapetext=true" property at JAVA_ARGS in mduml.properties file, located in MagicDraw install root, "bin" directory.


-----

Code Engineering

-----

Do you have an edition of MagicDraw that can parse a set of Java files and create the corresponding class diagram?

MagicDraw Professional Java Edition possesses reverse engineering capability for Java. You may also reverse descriptors and will get a model describing your Enterprise Java Beans.
More information about MagicDraw editions you may find at www.magicdraw.com/editions.php

Does MagicDraw allow to import current Java source code, alter the OO model and create modified source code?

Yes, it does. We call this "round-trip engineering". You can reverse your source code, make changes in the model and regenerate it back without losing already coded parts (e.g. method bodies). You must use the code engineering set (the MagicDraw name for a collection of classes for code engineering). If you only do framework generation (Ctrl+G), you will receive only the generated framework (all other information will be lost), so be accurate at this point.

What is the difference between the Quick Reverse and the general one?

Performing the Quick Reverse you may instantly add new model elements or merge with the created ones in your model; you don't need to create a new Round Trip Set. Use it if you don't want to use code generation on the reverse code constantly.

How to import certain Java types?

Choose the 'New From Template' command from the 'File' menu. You may also reverse the needed Java classes and import them to the project.

Is there any way I can import an existing jar-file so that the classes from this file will be usable in the project ?

You can use bytecode engineering set for reversing class files placed in your jar. Right click on "Code Engineering sets" node in browser, "New -> Java bytecode" and then edit created code engineering set by adding class files from jar file. Execute "Reverse" action on created code engineering set and classes will be created in model.

When I reverse engineer my project, there are a number of classes that are referenced in my code that cannot be found and are placed in the "Default" package. All of the classes are found in .jar files that my code depends on. I have checked the box that tells the reverse engineer to look in the classpath for classes. Is there somewhere in magicdraw where I should set the classpath?

You need to add your jar's in Java language options at "Options-> Project-> Code engineering-> Java Language Options".

Is it possible to reverse QT library?

Since MagicDraw 12.1 SP2, you may reverse QT library.
To reverse QT library using MagicDraw 12.1 SP2, you should add the following macro into MagicDraw > Options->Project... C++ Language Options ... Use explicit macros (these macros are included into MagicDraw starting from v12.5 )
// QT
#define Q_AUTOTEST_EXPORT
#define Q_CLASSINFO(name, value)
#define Q_COMPAT_EXPORT
#define Q_CORE_EXPORT
#define Q_CORE_EXPORT_INLINE inline
#define Q_D(Class)
#define Q_DECL_IMPORT
#define Q_DECLARE_ASSOCIATIVE_ITERATOR(map)
#define Q_DECLARE_BUILTIN_METATYPE(TYPE, NAME)
#define Q_DECLARE_EXTENSION_INTERFACE(IFace, IId)
#define Q_DECLARE_FLAGS(Flags, enum)
#define Q_DECLARE_INTERFACE(IFace, IId)
#define Q_DECLARE_METATYPE(txt)
#define Q_DECLARE_MUTABLE_SEQUENTIAL_ITERATOR(c)
#define Q_DECLARE_MUTABLE_ASSOCIATIVE_ITERATOR(c)
#define Q_DECLARE_OPERATORS_FOR_FLAGS(Flags)
#define Q_DECLARE_PRIVATE(Class)
#define Q_DECLARE_PUBLIC(Class)
#define Q_DECLARE_SEQUENTIAL_ITERATOR(name)
#define Q_DECLARE_SHARED(name)
#define Q_DECLARE_TYPEINFO(TYPE, FLAGS)
#define Q_DECL_DEPRECATED
#define Q_DISABLE_COPY(Class)
#define Q_DUMMY_COMPARISON_OPERATOR(c)
#define Q_ENUMS(x) #define Q_FLAGS(x)
#define Q_GADGET #define Q_GUI_EXPORT
#define Q_GUI_EXPORT_INLINE inline
#define Q_INLINE_TEMPLATE
#define Q_INTERFACES(x)
#define Q_NETWORK_EXPORT
#define Q_NOREPLY
#define Q_OBJECT
#define Q_OPENGL_EXPORT
#define Q_OUTOFLINE_TEMPLATE inline
#define Q_OVERRIDE(text)
#define Q_PRIVATE_SLOT(d, signature)
#define Q_PROPERTY(text)
#define Q_Q(Class)
#define Q_REQUIRED_RESULT
#define Q_SCRIPTABLE
#define Q_SIGNALS protected
#define Q_SLOTS
#define Q_SQL_EXPORT
#define Q_SVG_EXPORT
#define Q_TESTLIB_EXPORT
#define Q_TYPENAME typename
#define Q_XML_EXPORT
#define QDBUS_EXPORT
#define QDESIGNER_COMPONENTS_EXPORT
#define QDESIGNER_EXTENSION_EXPORT
#define QDESIGNER_SDK_EXPORT
#define QDESIGNER_SHARED_EXPORT
#define QDESIGNER_UILIB_EXPORT
#define QDESIGNER_WIDGET_EXPORT
#define QDOC_PROPERTY(text)
#define QT_ASCII_CAST_WARN
#define QT_ASCII_CAST_WARN_CONSTRUCTOR
#define QT_ASSISTANT_CLIENT_EXPORT
#define QT_BEGIN_HEADER
#define QT_DEPRECATED
#define QT_DEPRECATED_VARIABLE
#define QT_DEPRECATED_CONSTRUCTOR
#define QT_END_HEADER
#define QT_FASTCALL
#define QT_FT_BEGIN_HEADER
#define QT_FT_END_HEADER
#define QT_MOC_COMPAT
#define QT_MODULE(name)
#define QT_STATIC_CONST static const
#define QT_STATIC_CONST_IMPL const
#define QT_TR_NOOP(x)
#define QT_TRANSLATE_NOOP(scope, x)
#define slots
#define signals protected

// Microsoft extension
#define __forceinline inline
#define CALLBACK
#define LRESULT void
#define _ENTRY(p1, p2, p3, p4) p1

While Reversing Oracle database I got the following error. Any idea?

Data reading error: ORA-06502: PL/SQL: numeric or value error
LPX-00210: expected '<' instead of 'n'
ORA-06512: at "SYS.UTL_XML", line 0
ORA-06512: at "SYS.DBMS_METADATA_INT", line 3296
...

There is a bug in Oracle 9 METADATA package.
Solution can be to reverse with user having all privileges or applying latest patch to Oracle 9.x.
As a workaround is to export database to DDL file and reverse with MagicDraw.


-----

Features

-----

Is there any way that I can access elements from other projects?

Since MagicDraw Version 7.0, partitioning functionality is presented in MagicDraw. Now it is possible to reuse project module by reference in another project.
Also MagicDraw Teamwork Server is available, which enables team collaboration.

How to open console together with the MagicDraw application?

Edit file mduml.properties in bin directory. Change line CONSOLE=false to line CONSOLE=true

Does MagicDraw support model consistency between all diagrams?

MagicDraw supports metamodel relation (consistency) between class and interaction (sequence and communication) diagrams: it reflects all the operations of the class in the message call action list. Classifier can be assigned to any lifeline. Class operations can be selected in the triggers in the state/activity diagrams.

How to copy a diagram into the Windows clipboard and paste into a Word doc?

Choose the 'Copy as EMF' or 'Copy as JPG' command from the 'Edit' menu.

We are editing different diagrams in the same model, which is held in the CVS repository.Although working in different areas of the model, we keep getting unmergible files from the repository whenever we update our working versions from CVS after the other has committed.

In MagicDraw, the following options are available for sharing model for simultaneous work:
1. Model decomposition functionality is available in MagicDraw. Now it is possible to reuse project module in another project.
2. MagicDraw Teamwork Server. This product is fully optimized for working with UML model.
3. Since MagicDraw version 12.5, Teamwork Server integration with ClearCase and SVN is presented.
CVS is an options just for storing, not sharing.

Is there any plugin to make automatically the UML2 transformation without having to make File->Export->To UML2 from the user interface?

Just go to "Options->Environment->EMF UML2 (vx.x) XMI Options", and change the option "Export Model to EMF UML2 XMI on project save" The project will be exported on project saving.


-----

Integrations

-----

uml2ecore transformation of openArchitectureWare framework does not work on Linux, Mac OS

Symptom: you get the following error when doing uml2ecore transformation:
797 INFO CompositeComponent - Generator.contraintsEtc: generating 'org::openarchitectureware::util::uml2ecore::templates::files::root FOR ecoreModel' => directory 'meta/' 7823 ERROR WorkflowRunner - org/openarchitectureware/util/uml2ecore/templates/files.xpt: unexpected char: 0xFFFD (Note, that char may be different, e.g. on Mac, unexpected char: 0xB4 is encountered)

Cause: uml2ecore transformation contains a bug, which precludes it from working on systems, where default file encoding is non standard. For example on Ubuntu v7.04 (Feisty Fawn) default encoding is UTF-8; Mac OS X, MacRoman encoding is used bu default. This causes transformation to fail, because files.xpt template file in the transformation plugin is encoded in ISO-8859-1.
This bug is not a bug in MagicDraw, but a bug in openArchitectureWare. This bug is acknowledged and tracked in oAW bug list: https://bugs.eclipse.org/bugs/show_bug.cgi?id=177956 This bug is present in oAW v4.1.2. Currently we do not know, when this issue will be fixed.

Workaround:
1) locate the uml2ecore plugin jar file. This file is usualy /plugins/org.openarchitectureware.util.uml2ecore_4.1.2.v20070314.jar (note that version numbers/dates may be slightly different in your install). Backup this file somewhere, we will be editing it.
2) inside this jar archive, locate uml2ecoreWorkflow.oaw file, open it in editor and scroll to the bottom.
3) locate the oaw.xpand2.Generator invocation component (id="Generator.contraintsEtc"), and add additional tag inside. Here is the final result you should get:
<workflow>
.....
<component id="Generator.contraintsEtc" class="oaw.xpand2.Generator" skipOnErrors="true">
<metaModel idRef="mm.emf"/>
<globalVarDef name="addNameAttribute" value="${addNameAttribute}"/>
<expand value="org::openarchitectureware::util::uml2ecore::templates::files::root FOR ecoreModel"/>
<genPath value="${outputPath}"/>
<fileEncoding value="ISO-8859-1"/><!-- This is the additional tag -->
</component>
</workflow>
4) update jar archive with this new version of uml2ecoreWorkflow.oaw file
5) restart Eclipse.
uml2 ecore transformation should now run cleanly.

MagicDraw windows are not redrawed properly running within Eclipse

If you have specified property "-Dsun.java2d.d3d=false" in "eclipse.ini", try to remove it or set the "true" value.

MagicDraw integrated with Eclipse cannot be started

Sometimes when starting MagicDraw from Eclipse, MagicDraw is not started. This problem can appear after MagicDraw version update. The solution is to launch Eclipse with the -clean parameter first time when this problem appears:
eclipse -clean

Out of memory errors with MagicDraw and Eclipse

Some JVMs put restrictions on the total amount of memory available on the heap. If you are getting OutOfMemoryErrors while running Eclipse, the VM can be told to let the heap grow to a larger amount by passing the -vmargs command to the Eclipse launcher. For example, the following command would run Eclipse with a heap size of 512MB:
eclipse [normal arguments] -vmargs -Xmx512M [more VM args]

Some JVMs have restrictions on permanent generation memory, which can be exceeded in integration. In order to increase permanent generation memory size, you need to specify additionaly -XX:MaxPermSize (use it for Sun JVM). For example, the following command would run Eclipse with a permanent generation memory size of 128MB:
eclipse [normal arguments] -vmargs -XX:MaxPermSize=128M [more VM args]

After unintegration, Eclipse cannot be started with new integrated MagicDraw

After unintegration, old directory is still remembered by Eclipse. The solution is to unintegrate Eclipse from MagicDraw, then start Eclipse, close it, and only then integrate with new MagicDraw version and launch again.

I am trying to install MagicDraw and use Eclipse integration in Japanese, but menu fonts are corrupted.

Please, try to add such line -DdefaultFont=true in eclipse.ini file after vmargs.

The lines should look like:
-vmargs
-DdefaultFont=true

Diagrams or Browser tabs are frozen because of modal dialog appearance.

The solution is to close and reopen Diagram View or Browser tabs in all Eclipse perspectives.

With what version of IntelliJ IDEA integrates MagicDraw?

MagicDraw integrates with IntelliJ IDEA 4.X or later

Do you plan to link with any of the popular IDEs/source code tools?

Yes. We currently have integrations with Eclipse 3.1 or later (JDT or Java IDE), JBuilder 8.0, 9.0, X, 2005, 2006, 2007, 2008, IBM RAD 7.0, IBM RAD 7.5, BEA WebLogic Workshop v9.2, v10.1, v10.2, Netbeans 6.0 or later, Sun Java Studio 8, Sun ONE Studio 5 (works only up to MagicDraw 10.5 version), IntelliJ IDEA 4.5 or later.

How to integrate MagicDraw with JBuilder?

1. Go to /integrations/jbuilder and start the install program. The tool will ask to specify JBuilder and MagicDraw installation directories.
2. Click Integrate, to start an integration process.
3. Start JBuilder in a usual way. After a successful integration, MagicDraw application will be started together with JBuilder application. Every JBuilder project has one MagicDraw project. This project is saved as magicdraw.xml.zip in the JBuilder project directory.

Does MagicDraw Standard edition integrate with Eclipse?

Yes, MagicDraw Standard edition, as well as Professional integrates with Eclipse, WSAD, JBuilder, Sun One Studio, and NetBeans without any problems. The difference is that the Standard edition itself has no code engineering functionality but this does not have any impact to the integration.

Do MagicDraw integrations with IDEs support Java 5.0 code engineering?

Since MagicDraw 10.5 version, integration with Eclipse supports Java 5.0 code engineering.
Since MagicDraw 15.0 version, integration with NetBeans and JBuilder supports Java 5.0 code engineering also.

Does MagicDraw support Eclipse integration within OSX?

Since MagicDraw version 12.5, Eclipse and MagicDraw works together on Mac OS X with JVM 1.6.0.

Automatic search in combo boxes is not working. I'm using MagicDraw integrated with IntelliJ.

You should modify the idea.properties file in the IntelliJ: idea.popup.weight property set to medium. After editing it should look like that: idea.popup.weight=medium

I get an error when trying to perfom CVS operations in MagicDraw. I use a local cvs repository at home. Does MagicDraw support a CVSROOT of the form "/my/cvsroot"?

MagicDraw CVS integration supports only pserver connection type.

MD v15.5, oAW 4.3 and Eclipse 3.4 integration. Try to run oAW sample as oAW workflow. The exceptions appears in console and sample fails to run.
5 INFO WorkflowRunner -
Exception in thread "main" java.lang.ExceptionInInitializerError
at org.openarchitectureware.uml2.Setup.(Setup.java:42)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

The problem is outdated Xerces library, used by MagicDraw. Please remove this library (it is not necessary, because java 1.5/1.6 already has XML parsing in the standard install).

There is also a workaround. Please specify the-Djavax.xml.parsers.SAXParserFactory=com.sun.org.apache.xerces.internal.jaxp. SAXParserFactoryImpl parameter for the Java when running the workflow. This will force the script to use Java'a default implementation instead of one brought in by MagicDraw.


-----

Teamwork Server

-----

How to upgrade the Teamwork Server?

Instructions how to upgrade teamwork server:
1. Stop the Teamwork Server.
2. Remove NT service from the teamwork server (if it was added).
3. Install a new version of the Teamwork Server and run it.
4. When the Import configuration dialog box appears, provide earlier version installation directory, to import configurations from it. 5. Select checkbox Import all projects in order to import teamwork projects from earlier Teamwork Server version.
6. Start new Teamwork Server (add NT service if needed).
7. Install new client version.
8. Uninstall old Teamwork Server.

Newer version install will not detect nor uninstall older one service. Projects should be imported manually. Project server and client version should be the same and cannot be mixed up. Also we recommend to use the same JVM version for server an client.

Importing projects from previous Teamwork Server version.

If you had previous Teamwork Server version with projects stored, it is possible to import them automatically using MagicDraw GUI or perform manual migration.
To import projects using GUI
1. After installation is complete and Teamwork Server is launched first time, the Import Configuration dialog box opens.
2. Path to the previous Teamwork Server installation, which was found in your computer, is specified in the Location text box. You can change this path by clicking ?...? button.
3. Select the Import all projects check box for projects transfer to the newest Teamwork Server version.
4. Click Import.

To import projects manually
Copy Projects directory with all its files from previous Teamwork Server installation directory, to the new /Projects directory.
NOTE Follow the instructions in dialog boxes to update profiles during project import.

If server is started on SVN/ClearCase repository.
2. Open Administrator's Console, trigger project export. Choose the directory to dump the data to. Chose the permanent directory (not some temporary directory) - this will be the directory in which server will subsequently operate.
3. In Administrator's Console, reconfigure server for work with Built-In repository; specify the directory where you dumped projects as a directory to work with.
4. Restart server, to use new repository.
5. Projects are now in a new, Built-In repository.

I cannot find the Teamwork Server menu, although I see it in the docs.

You should have an evaluation MagicDraw version or a commercial/academic license (not demo) in order to access Teamwork Server menu.

On log back into Teamwork Server after MagicDraw application crash, server complains that the user is already logged in.

After MagicDraw application crash please wait about 5 min and try to connect.
Another solution is to restart Teamwork Server. After restart all users will be disconnected.

How to start the Teamwork Server on startup of Redhat Linux as service?

Please update TEAMWORK_HOME variable in attached script file (TEAMWORK_HOME="/teamwork/MagicDraw_Teamwork_Server/bin") according to your installation path bin dir.

Copy the "teamwork" service script to /etc/init.d.

Then as a root enable the "teamwork" service for runlevel 3 using following commands:

cd /etc/rc3.d
ln -s ../init.d/teamwork S99teamwork

RedHat based Linux distrubutions the service run levels may be configured using "chkconfig" command.

You may test the "teamwork" service using "service" command.
Use "service teamwork start" command to start MagicDraw Teamwork Server
Use "service teamwork stop" command to stop MagicDraw Teamwork Server
Use "service teamwork status" command to check if MagicDraw Teamwork
Server is running.

How to connect to the Teamwork Server via ssh?

1. Stop the Teamwork Server.
2. Edit run_server_nogui.properties file by adding -Djava.rmi.server.hostname=localhost to the line JAVA_ARGS. This prevents from direct connecting from client to server (skipping ssh tunnel).
3. Start the Teamwork Server using run_server_nogui.exe.
4. On the client side, run command line: ssh -L 1099:host:1099 user@host. Host here is a hostname of the Teamwork Server.
5. Run a client. For a server address, use localhost:1099.

Limitation of such configuration is that all clients should use ssh tunneling.

I cannot login to the Teamwork Server, although installation has been successful.

Please try to add such line to the Teamwork Server/data/muserver.properties file:
java.rmi.server.hostname=teamwork.server.com, where teamwork.server.com is the ip of the computer of the Teamwork Server.


-----

Modules

-----

Do you support dynamic loading of modules?

Yes, module can be loaded/unloaded by the user at (almost) any time during the work process. Also module usage has a parameter which governs if module should be loaded at project load time: "always load" means module is loaded with project "auto-load" and "auto-load with prompt" module is not loaded, but MagicDraw tries to guess when user would need module contents (e.g. when user runs search in the entire model) and loads module then.
"manual load" means module is not loaded - user can load it later.

Do you support editing a referred module inside a project?

Yes, MagicDraw supports both read-only and read-write modes for module usage. Usage of read-write modules is a bit tricky, especially if we have modules nested in one another and with circular dependencies between one another. When partitioning always refer to Modules dialog (Options>Modules) as your friend and guide.


-----

Floating License

-----

MagicDraw Floating license Server and Teamwork Server v15.0 running on Windows 2003 Server as service has to be started after every reboot to make it work. How to avoid this?

Please copy the msvcr71.dll to the <Server>/lib. This DLL is installed under <Server Install>\jre\bin.

I've got MagicDraw running on two PC's but when I tried to install it on another I get a "Not connecting to license server" error message.

Use the text name of the license server instead the actual IP address.

I am unable to add NT service.

You must have administrator rights to add an NT service.

Do we need to install a new version of the floating license server, or can we use an old one with new version clients?

Since MagicDraw v12.0, Floating License server supports 12.0 and higher MagicDraw clients versions.
For example FL v14.0 can work with v. 12.0, v12.5, and v14.0 clients.

How to connect to the Floating License Server via SSH?

1. Stop the Floating License Server.
2. Edit run_server_nogui.properties file by adding -Djava.rmi.server.hostname=localhost to the line JAVA_ARGS. This prevents from direct connecting from client to server (skipping ssh tunnel).
3. Start the FLoating License Server using run_server_nogui.exe.
4. On the client side, run command line: ssh -L 1099:host:1099 user@host. Host here is a hostname of the Floating License Server.
5. Run a client. For a server address, use localhost:1099.

Limitation of such configuration is that all clients should use ssh tunneling.

Where can I download the floating license server, which I've purchaced?

Login with the purchaser's username and password, click on license list, and download from there (or get keys from there).


-----

ParaMagic Plugin

-----

What is Parametrics?

Parametrics functionality allows SysML model-builders to include mathematical formulas as part of the model. Parametrics is part of the OMG SysML 1.0 specification.

What are Parametrics used for?

Parametrics insures data consistency within the SysML model and provides the potential for simulating model performance and comparing against system requirements. Possible usage areas:

  • Engineering projects: calculate cost, weight or power budgets, vehicle speed, component strength, and others.
  • Computer systems, calculate message traffic levels, database capacity needs, system availability, and others.
  • Business systems, calculate manpower needs or time to delivery.


Anything from ?ballpark? estimates and ?sanity? checks to detailed optimization, trade studies and sensitivity analysis can be organized throughout the development process.

What is ParaMagic?

ParaMagic is a plugin for MagicDraw that extracts the parametric relationships in a SysML model, exports them to a mathematical solver program, and uploads the calculation results back into the SysML model. It handles simulation execution, solver management, and some display functions.

How does ParaMagic work?

ParaMagic creates a constraint network from the parametric model using constraint graph and ?Composable Object? algorithms developed at the Georgia Institute of Technology. ?Acausal? networks often make it possible to solve the model in multiple directions, swapping inputs and outputs in the different model instances or at runtime. For example, calculate the weight of a system from its individual components, or calculate the weight allowance for a specific component from the overall system weight budget.

What mathematical solvers does ParaMagic link to?

ParaMagic uses Mathematica from Wolfram Research or MATLAB from The MathWorks or a combination of the two. Solving standard mathematical equations embedded as constraints in SysML parametric diagrams requires Mathematica. Using MATLAB, constraints are written as external calls on MATLAB functions or scripts. Existing simulation models, functions and templates in MATLAB, Simulink or Mathematica can be incorporated directly into SysML models.

How does the ParaMagic-Excel link work?

ParaMagic allows data to be transferred between a SysML model instance and one or more Excel spreadsheets by creating a mapping between instance values and worksheet cells. The user can import initial data from spreadsheets into a model instance and, after running the simulation, export results to Excel for reports, graphing and further processing. Excel is not used by ParaMagic as a mathematical solver, however, so Mathematica and/or MATLAB is still required.

Can I use ParaMagic with UML, UPDM (DoDAF/MoDAF), or business process modeling languages?

The official specifications for these other profiles do not explicitly include Parametrics, but, in MagicDraw, SysML features can be linked to these kinds of models and ParaMagic simulations can be incorporated easily.

How does ParaMagic do requirements checking?

Quantitative requirements can be formulated as constraint statements, e.g. If(actual_weight < required_weight, Then Result = True, Else Result = False) and incorporated in parametric diagrams. Every time the parametric simulation is executed, the constraint statement provides a clear answer for whether the requirement is being met. Integrating a requirements management tool like Cameo Req+ with MagicDraw and ParaMagic provides a powerful approach to creating, tracing and verifying requirements.

How does ParaMagic differ from SysML simulations approaches?

Multiple approaches have been proposed, including code generation from state machine and activity diagrams and generation of Simulink models from SysML. Each approach has its applications, but ParaMagic provides a simple, flexible process with links to multiple solvers and data sources. Rather than being the best tool for creating a complex simulation of a small piece of a SysML model, it helps ties together system capabilities at the global level.

How can I learn more about ParaMagic?

Download evaluation copies of MagicDraw, the SysML, and ParaMagic plugins. Go through the demonstration models with help of ParaMagic tutorials. Free access to Mathematica as a web service from No Magic Inc. is available over the Internet during the evaluation period.

ParaMagic needs Java 1.6 to run correctly. Can it run with Java 1.5?

ParaMagic plugin uses specific Java 1.6 features and is not compatible with Java 1.5.

For MacOS, you may download java 1.6 update from Apple page (direct link is
http://www.apple.com/downloads/macosx/apple/application_updates/ja vaformacosx105 update1.html). Please note that this java is only for 64-bit Mac OS (as Mac Book Pro can have both 32 and 64 bit operating systems). For 32-bit Mac OS X, users can install SoyLatte JDK to run ParaMagic. For details on SoyLatte, go to: http://landonf.bikemonkey. org/static/soylatte/

I have the ParaMagic plugin for MagicDraw. How do I access Mathematica to solve parametric equations?

There are three ways for ParaMagic to access Mathematica:
1. Mathematica is installed locally (on the same computer or a networked drive).
2. Mathematica is installed on an internal network as a web services provider. We can provide a web services interface for installation.
3. Evaluation configuration. ParaMagic (as initially installed) is set to access a NoMagic server copy of Mathematica for a 30 day evaluation period. After this, switch to method 1 or 2.


-----

Cameo DataHub

-----

DataHub 3.0 does not support detection and synchronization of changes to entity stereotypes

When a synchronized entity is given a new stereotype, it will be treated as a new entity in DataHub and the eventual associations previously tied to it are lost. No Magic Inc. is working on a Service Pack for DataHub 3.0 that will address and solve this limitation. Per current plans, the Service Pack will be released in mid-May 2009. Until the Service Pack is available, users can avoid the occurrence of this issue by not changing the stereotypes of entities after these have been imported in DataHub and associations created. Please note that the auto-numbering feature of SysML 16.5 plugin for MagicDraw UML adds new stereotypes to the SysML entities. Therefore these entities, if already imported in DataHub, will be treated as new ones after re-numbering.


-----

MagicDraw RSXConverter

-----

What is MagicDraw RSXConverter?

MagicDraw RConverter is a tool to convert IBM? Rational? Software Architect (RSA) or IBM? Rational? Software Modeler (RSM) file format (*.emx, .epx, .efx) to MagicDraw-supported file format (*.mdxml).

The installation process seems to be complete, but I do not see any changes in my RSA/RSM.

Run Eclipse with the -clean option to solve this problem.

eclipse -clean

or modify eclipse.ini by adding the following line

-clean

to always start Eclipse with the -clean option.

Why does the conversion stop with the message ?Cannot convert string "" to a double??

This could occur when the model file of RSA/RSM might not supply complete data for the conversion process. Most cases are caused by the element on the diagram.
To solve this problem, elements need to be relocated to get new coordinates.
Currently known elements are:
Separator line inside Alt Combined Fragment needs to be adjusted.

Why the label/text on the relationship is not in a correct position?

You can correct the label/text position for every relationship on the diagram by:

1. Select all elements in the diagram (press Ctrl + A).
2. Right Click on the diagram.
3. Select Paths.
4. Select Reset Labels Position.


-----

MagicDraw RConverter

-----

What is MagicDraw RConverter?

MagicDraw RConverter is the tool to convert Rational Rose project (.mdl) to MagicDraw's readable file (.xml).

What is the limitation for the evaluation of RConverter?

The evaluation version of MagicDraw RConverter is 30 days with the ability to convert up to 50 elements.

Is that possible to use MagicDraw RConverter on Mac or Linux?

No, MagicDraw RConverter is designed to run on Windows platform (tested on Window XP service pack 2).

Is it possible for RConverter to convert IBM Rational Software Modeler without any constraints?

No, it is not possible. RConverter can only be used for Rational Rose 2003 model conversion. To convert RSA/RSM models, you will need to use RSXConverter.

What is the data format after conversion?

MagicDraw 9.0 XMI. Such file can be opened with latest MagicDraw version.

Is that possible for RConverter to convert IBM Rational Software Modeller without any constraints?

No, it is not possible. RConverter can be used only for Rational Rose 2003 model converting.

How long does it take to convert the large model?

It depends on the project size. For jdk1.4 APIs which contain about 3,000 classes, MagicDraw RConverter spent about 4 hours to convert (tested on Pentium4 2.8 MHz, RAM 512 Mbytes).


-----

Interchange with Other Tools

-----

How can I import IBM Rational Software Architect/Modeler files?

MagicDraw RSXConverter is an eclipse plugin deployed in an RSA/RSM enviroment for exporting an RSA/RSM file format (*.emx, .efx, .epx) to a MagicDraw readable file format (.mdxml). You can download an evaluation version of MagicDraw RSXConverter at http://www.magicdraw.com in download section.

I would like to find out whether it is possible to view a .vsd document in MagicDraw or even convert the .vsd file to MagicDraw format?

There is a Visio plug-in that allows you to export to XMI 1.0. This format is supported by MagicDraw.

Where I can find Export for Unisys XMI operations?

The MagicDraw 10.0 version or later does not have Export As Unisys XMI commands.
Unisys XMI is for UML 1.3, MagicDraw 10.0 or later uses UML2 metamodel.

How can I import Borland Together files with MagicDraw 10.0 or later version?

To import Borland Together files you need to open XMI file with MagicDraw 9.5 version, save and then open with MagicDraw 10.0 or later version.

How can I import IBM Rational Rose files?

MagicDraw RConverter is the tool to convert Rational Rose project (.mdl) to MagicDraw's readable file (.xml). You can download MagicDraw RConverter Evaluation version at http://www.magicdraw.com in the download section.

How to import Enterprise Architect 7.0 file to MagicDraw?

There are two ways to migrate model.

First and the only way to migrate model and diagrams is to export into XMI 1.0 for UML 1.3 (Unisys Extensions).
These XMI and UML formats are old ones and supported by MagicDraw v9.5:
1. Open exported file as a new project with MagicDraw 9.5.
2. Save this project and open it with newest MagicDraw version.

Since MagicDraw 10.0 we have moved from UML 1.4 metamodel to UML2. It is a significant change. Conversion from Old UML into new UML wizard will appear.

Detailed explanations and instructions of migration of projects from previous MagicDraw versions to MagicDraw 12.0 can be found in MagicDraw Migration to UML2 Manual.

Second way is to migrate model without diagrams by exporting project from Enterprise Architect as XMI 2.1 for UML 2.0 and importing by MagicDraw (versions 10.0 to current). In this case no UML 1.3 -> UML2 conversion is needed.


-----

Plugins

-----

SysML 16.5 SP2 has a modification of MD_customization_for_SysML.mdzip how to update MD_customization_for_SysML.mdzip in our Teamwork Server and successfully work with it?:

1. Login with appropriate right, preferable 'Administrator'.
2. Remove MD_customization_for_SysML.mdzip from your Teamwork Server.
3. Create a new SysML project.
4. Add the newly-created SysML project to Teamwork.
5. In the Add Project to Teamwork Settings dialog, select the Local Modules tab.
6. Ensure that the Action for MD_customization_for_SysML.mdzip is Add to Teamwork.
7. Click the Add button in the Add Project to Teamwork Settings dialog.
MD_customization_for_SysML.mdzip will be automatically updated in your Teamwork.

I have created my own MagicDraw plugin with customer diagram, profile, templates and samples. How do I pack them to share for multiple users through MagicDraw Resources Manager.

Resource Manager needs more information which is stored in resource descriptor. It must know what files were installed because it must be able to perform uninstall operation.

I have attached our free form custom diagram. It would be best if you will look through this sample and I'll describe main rules for descriptor writing. You will find descriptor file in "data/resourcemanager/MDR_Custom_Diagram_Free_Form_1513_descriptor.xml".

- xml tag < resourceDescriptor >
- "id" is most important. It must be unique. To prevent duplicates in future use "22**", for example "2201".

- "name" must be unique between all MagicDraw resources.
- "type" must be one of: "Custom Diagram", "Plugin", "Profile", "Sample", "Template".
- < version > is your resource version
- < requiredResource > will be needed only if your resource depends on other resources.
- < instalation > defines files which will be installed. Do not use "*.*" (all files in directory) in common directories like " < MagicDraw install root > /samples" because uninstalling your resource will remove all files from this directory!
- each < file > tag defines one file which must be copied to "MagicDraw root" directory.
Descriptor file must be placed in your resource zip file in directory "data/resourcemanager" whith specific naming. Name of descriptor file is formed from values from < resourceDescriptor > tag: "MDR_ < type > _ < name > _ < id > _descriptor.xml", all spaces in names is replaced by underscore symbol "_".

Resource sample you may find
here.

How to set up Eclipse for plug-in development?

1. Create Java Project.
2. Include all *.jar files from "MagicDraw\lib" folder into Project Build Path. Exclude "md_commontw_api.jar" and "md_commontw.jar".
3. Write plug-in. Start from main Plug-in class by extending "com.nomagic.magicdraw.plugins.Plugin".
4. Create Plug-in descriptor file "plugin.xml".
5. Make clean plug-in directory in MagicDraw plug-ins directory (./plugins/<your plug-in name>), copy "plugin.xml" to it. Do not copy any binaries to MagicDraw plug-ins directory or they will have conflicts with your binaries in Eclipse.
6. Create new Debug configuration to run Application.
7. select "Project" your plug-in project.
8. search for Main class, select "com.nomagic.magicdraw.Main".
9. add "-Xmx600M -XX\:PermSize\=40M -XX\:MaxPermSize\=150M" to Arguments.
10. Apply changes.

More details can be found in "Plug-ins" section of MagicDraw manual ?OpenAPI UserGuide.pdf?

Hints:
- don't forget to include all sub folders from "MagicDraw\lib" into your Build Path;
- create jar file from Eclipse: use "Export / JAR file";
- you wouldn't have to copy files each time if you will select destination jar file already in "MagicDraw\plugins" folder;
-save jar file description to build jar file later;

Is DoDAF Plugin 2.0 compatible with DoDAF Plugin 1.0?

DoDAF Plugin 2.0 is not compatible with DoDAF Plugin 1.0. Projects, created with DoDAF Plugin 1.0, cannot be opened with DoDAF Plugin 2.0 and vice versa.

Where can I find any detailed SysML/DoDAF documentation?

If you have installed SysML/DoDAF plugin, you should find the SysML/DoDAF user's guide in the MagicDraw installation directory, manual folder. Also you may download this user's guide from MagicDraw website (Download > Download manual).


-----

Documentation/Help

-----

Where can I find documentation about working with MagicDraw, MagicDraw integrations, floating license server, and teamwork server?

All MagicDraw documentation is located in MagicDraw installation directory, manual folder. Also you may download it from the www.magicdraw.com.

The Java documentation, delivered with MagicDraw contains only some package.html files.

You may download full MagicDraw OpenAPI javadoc at http://www.magicdraw.net/files/javadoc.zip

When invoking Help>Contents the program hangs.

The "Help" may not be started because another application is using "Help" port. You may see this in the helpserver.log file, which is located in MagicDraw installation directory. If the server port is already in use, the java.rmi.server.ExportException appears in this file. To change Help port, you need to invoke the "Environment Options" dialog from the "Options" main menu. On the appeared dialog, "General" tab change the "Help Server Port", submit changes and try to invoke Help again.

Where can I find MagicDraw configuration files (md.log and several other files)?

By default MagicDraw configuration and auxiliary files are stored in the user home directory
User home directory/.magicdraw/version.
Information about this location you may find in the MagicDraw About screen, Info tab (Help->About->Environment)


-----

Older Versions

-----

When installing MagicDraw on Fedora Core 5, Suse 10.1, and later :error while loading shared libraries error appears

There are two ways to solve it:
1. Use no install version.
2. Modify install script file. Example with MD_UML_115_unix.sh:
cat MD_UML_115_unix.sh | sed 's/export LD_ASSUME_KERNEL/#xport LD_ASSUME_KERNEL/g' > MD_UML_115_unix.sh2; mv MD_UML_115_unix.sh2 MD_UML_115_unix.sh

I'm trying to run MagicDraw UML 3.5.1, but when I launch the application I get the error message "Can't read/write to main.ini"

When launching MagicDraw UML Version 3.5.1 or 3.6, you get the error message "Can't read/write to main.ini", contact support@magicdraw.com. We will send you a new main.ini file.


-----

Unlock Keys

-----

I have downloaded MagicDraw demo. Where do I get the unlock key?

Unlock key is sent to you automatically by email (to the e-mail address which you provided registering to www.magicdraw.com).

How to unlock MagicDraw vesion 12.0 and later?

After downloading MagicDraw, you will get an unlock key file to your mailbox.
1. Save this unlock key file, into the local file system before starting MagicDraw.
2. When starting MagicDraw for the first time you will be asked to browse for the unlock key file. Click the "..." button and select the file from the directory you saved the file.
3. System will automatically activate MagicDraw and you will be able to use it.

I'm unable to unlock MagicDraw. "Key or user name is invalid!" message appears.

Make sure that MagicDraw UML software and unlock key are the same version. If you install the latest software, you must get the latest version unlock keys.

I have just bought two MagicDraw machine-licenses. I've received only one unlock key. Is this ok if I use the same key for the two installations on different machines?

You are eligible to enter the same key in the multiple installations, according to the number of products you have bought. Note, that only invoices of purchased software indicate the number of licenses that you can use.


-----

Users Profiles

-----

What if I forgot my profile password?

Use our reminder service - enter your email and click the Send password button. New password will be generated and sent by email.

Where can I change my profile data (user name, company name, etc.)?

Login to our web site http://www.magicdraw.com/personal_profile.php with your username and password, click on Edit Personal Information right-side menu selection and edit your details.

Is my personal information secure at www.magicdraw.com?

Yes, it is. Even having the username/password, the intruder won't be able to access the credit card information since we don't keep any credit card data in the database. Shopping cart works via HTTPS, therefore, it is impossible to sniff any data.


-----

Purchase

-----

Will I receive my software on CD?

We don't have our software on CD. We deliver products electronically.

Why do I need customer profile, why cannot I go to the shopping cart and order the software directly?

The registration operation and customer profile help us to make sure that you get customer support and discounts when purchasing our products later. Customers purchased software (unlock keys and installation files) also is stored under his/her personal profile.

How do I get the product updates? Where do I download the newest software?

Notifications about updates will be sent by email. The newest software will be automatically added to your personal download area: http://www.magicdraw.com/personal_profile.php

Bought one MagicDraw Floating license a month ago; and bought one more Floating license yesterday. I would like to know how can I add additional Floating license to the Floating license server.

First of all open "key.txt" file located in floating license server installation directory. Then remove key from this file and restart server. After that enter new license key for floating license server. All keys you can re-obtain from your personal download area, by clicking button "Send Unlock Keys": http://www.magicdraw.com/personal_profile.php

I would like to receive notifications about the releases of new MagicDraw versions or service packs.

If you want to subscribe to any of existing MagicDraw mailing list, please login to our web site http://www.magicdraw.com/personal_profile.php with your username and password. Click on "Mailing List' right side menu selection, check appropriate checkbox and click the Update button.

Where is my MagicDraw purchase information stored?

Purchased MagicDraw UML software installation files and unlock keys are stored under your personal profile. In order to download it, login to our web site http://www.magicdraw.com/personal_profile.php with your username and password, click on License List right-side menu selection.


-----

Other issues

-----

How do I merge completely different projects that have no common history into one project (possibly by choosing only certain parts that should be merged)?

Merge functionality can be employed for this. Choose the Tools -> Project Merge menu item, specify the source project (the project from which you want to port changes), the target project (the project to which you want to port changes), and an empty ancestor project. Then press the Merge button and you will be provided with the standard Merge dialog, which allows you choosing which changes should be merged-in.

Icons in project are cut, only part of the SVG icon is displayed.

Starting from MagicDraw v15.0 we have updated svg icons interpreter, fixing number of issues and interpreting svg format more precisely. Interpreting such svg properties as viewBox. How ever those interpreted parameters should be described correctly. Common discrepancy is that viewBox parameter in icon is described in points and icons width and height in pixels. This gives misalignment and only part of the icon is displayed.

In order to fix this in svg icon:
Open svg icon with XML editor. for example UltraEdit.
Find viewBox property and remove pt signs from hight and width. It was viewBox="0 0 215.9pt 279.4pt" should be viewBox="0 0 215.9 279.4".
Save icon.
Open with MagicDraw, problem with only half icon visible should be fixed.

In order to fix this problem in MagicDraw project (if project has stereotypes in it and those stereotypes are using icons):
Unzip project if it is in *.mdzip extension in order to get *xml extension.
Open project with XML editor.
Find symbols line 70 74 22 20.
Remove 70 74 // this is hex code of ?pt?, because svg icons existing in project are hold in hex format.
Save project.
Open with MagicDraw, problem with only half icon visible should be fixed.

|
Login
Contact Person
Registration
Request For Sales

Download Manual
Pricing
Editions
Online Demo
Download Patch

Best Design and Modeling Tool
Jolt Productivity Winner
Best Database Tool
Jolt Productivity Winner
Best Java Modeling Tool
Best Team Development Tool
OMG Member












Contact Us  |  Shop  |  Product Feedback  |  Print this
Last Modified Monday, 28-December-2009 8:00:00 PST

Copyright © 2000-2010  No Magic, Inc.  All Rights Reserved