Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "MoDisco/Components/JEE/EjbJar/Documentation/0.9"
Line 46: | Line 46: | ||
[[Image:MoDisco_EjbJar_XMI_OpenWith.png|frame|center|Opening an Ejb Jar model]] | [[Image:MoDisco_EjbJar_XMI_OpenWith.png|frame|center|Opening an Ejb Jar model]] | ||
+ | |||
+ | ===Discoverer API=== | ||
+ | |||
+ | Each MoDisco discoverer responds to a normalized interface and can be called programmatically (see org.eclipse.modisco.infra.discovery.core.IDiscoverer<T>). | ||
+ | |||
+ | First, add the following plug-in dependencies to your project ('''Require-Bundle''' in your Manifest.MF): | ||
+ | * org.eclipse.modisco.jee.ejbjar | ||
+ | * org.eclipse.modisco.jee.ejbjar.discoverer | ||
+ | * org.eclipse.modisco.infra.discovery.core | ||
+ | |||
+ | You can easily discover an EjbJar model programmatically. For example: | ||
+ | <source lang="java"> | ||
+ | EjbJarDiscoverer2 discoverer = new EjbJarDiscoverer2(); | ||
+ | discoverer.discoverElement(xmlFile, monitor); | ||
+ | Resource ejbJarModel = discoverer.getTargetModel(); | ||
+ | </source> | ||
+ | |||
+ | To have a monitor to pass to the <code>discoverElement</code> method, you can either call the discoverer in an Eclipse Job, or pass a new NullProgressMonitor if you don't need progress reporting. | ||
+ | |||
+ | As an example, you may checkout the code from project org.eclipse.modisco.jee.ejbjar.discoverer.tests. | ||
== Source Repository == | == Source Repository == |
Revision as of 09:42, 30 March 2011
MoDisco |
Website |
Download |
Community |
Mailing List • Forums |
Bugzilla |
Open |
Help Wanted |
Bug Day |
Contribute |
Browse Source • Project Set File |
Contents
Ejb-Jar Discoverer
The goal of the Generic Ejb-Jar Discoverer plug-in is to allow generic extractions of information from an ejb-jar.xml file, without the need for a metamodel dedicated to a conforming Document Type Definition(DTD) or XML Schema Description (XSD).
Details
Considering ejb-jar.xml files conforming to DTD or XSD, it will be more convenient to have some dedicated metamodels to manipulate information. However, the Generic EjbJar Discoverer is an alternative for miscellaneous ejb-jar.xml files.
This plug-in aims at analyzing any ejb-jar.xml file by providing a model describing the information found. Supported versions are JEE 1.2, 1.3, 1.4, 5, and 6.
Moreover, it allows to serialize the xml file back from the model. Thus, some M2M transformation might be used jointly to upgrade some xml files.
User manual
The plug-in provides the user with a contextual menu to easily create models.
To create the model of your configuration file, right-click on the file in the Eclipse Package Explorer view, and select Discovery > Discoverers > Discover JEE ejb-jar.xml:
A discovery parameters dialog opens to let you specify the parameters of the discovery:
- Set SERIALIZE_TARGET to true if you want to save the model to a file
- You can define TARGET_URI to the location of a file in your workspace. If it is not defined and SERIALIZE_TARGET is true, a model file will be created in the project.
Beware: the file will be overwritten if it already exists!
Once launched, a progress dialog will appear as soon as the operation begins. Depending on the size of your application, the reverse engineering process might take some time to complete:
At the end of the process, the newly created model file is added to the root of your project if you set SERIALIZE_TARGET to true:
And the model is opened in the default model browser if you selected Open model in editor after discovery:
The EjbJar XMI files (with a filename ending in ".xml_ejbjar.xmi" by convention) can be opened in any model browser:
Discoverer API
Each MoDisco discoverer responds to a normalized interface and can be called programmatically (see org.eclipse.modisco.infra.discovery.core.IDiscoverer<T>).
First, add the following plug-in dependencies to your project (Require-Bundle in your Manifest.MF):
- org.eclipse.modisco.jee.ejbjar
- org.eclipse.modisco.jee.ejbjar.discoverer
- org.eclipse.modisco.infra.discovery.core
You can easily discover an EjbJar model programmatically. For example:
EjbJarDiscoverer2 discoverer = new EjbJarDiscoverer2(); discoverer.discoverElement(xmlFile, monitor); Resource ejbJarModel = discoverer.getTargetModel();
To have a monitor to pass to the discoverElement
method, you can either call the discoverer in an Eclipse Job, or pass a new NullProgressMonitor if you don't need progress reporting.
As an example, you may checkout the code from project org.eclipse.modisco.jee.ejbjar.discoverer.tests.
Source Repository
All the source code is stored in the Eclipse public source repository:
- metamodel : https://dev.eclipse.org/svnroot/modeling/org.eclipse.mdt.modisco/plugins/trunk/org.eclipse.modisco.jee.ejbjar
- discoverer : https://dev.eclipse.org/svnroot/modeling/org.eclipse.mdt.modisco/plugins/trunk/org.eclipse.modisco.jee.ejbjar.discoverer
MoDisco | |
Components | Infrastructure: KDM · SMM · GASTM · Model Browser · Discovery Manager · MoDisco Workflow · Query Manager · Facet Manager · Metrics Visualization Builder · KDM Source Extension Technologies: Java · JEE · EjbJar · WebApp · XML Use Cases: Simple Transformation Chain · Model Filter |
Help | Installation · SVN |
Project | API Policy · Retention Policy · Project Plan · metrics · Accessibility Guidelines · Capabilities Disablement |