cancel
Showing results for 
Search instead for 
Did you mean: 

Custom Export Marshaller

gant
Champ in-the-making
Champ in-the-making
Hi,

I tried to write a custom Export Marshaller following the user guide to see how it works:
1. Created new Eclipse Plug-in project
2. Added the extension point to my plugins.xml
3. Subclassed AbstractExportMarshaller
4. Exported the plugin with the "install"-Method

The plugin seems to be deployed, since i get asked if i want to install unsigned content and i have to restart eclipse.

Then I created a new project and modelled a diagram. Then I saved the diagram. .activiti, .bpmn20.xml and .png files are generated but not my file.

Checked the eclipse properties section to enable the select the appropriate save-options. Under additional formats, I can't select ".myFormat", it isn't an option there.

Has anybody hints about what I'm doing wrong, or what I'm missing?

<?eclipse version="3.7"?>
<plugin>
   <extension
      point="org.activiti.designer.eclipse.extension.export.ExportMarshaller">
      <ExportMarshaller class="my.company.MyExportMarshaller">
      </ExportMarshaller>
   </extension>
</plugin>

Since my marshallDiagram() method starts like this, and the problem is not displayed in the problem view, i think, it's not called at all:
@Override
   public void marshallDiagram(Diagram diagram, IProgressMonitor monitor) {

      this.monitor = monitor;
      this.diagram = diagram;

      // Clear problems for this diagram first
      clearMarkers(getResource(diagram.eResource().getURI()));
      addProblemToDiagram(diagram, "Start Export", null);

Regards,
michael

P.S. I'm sing Eclipse Indigo and Activiti Designer 5.8
1 REPLY 1

tiesebarrell
Champ in-the-making
Champ in-the-making
gant,

looks like you have the most important parts setup correctly. The easiest way to check whether your Marshaller is detected is to debug the method org.activiti.designer.eclipse.util.ExtensionPointUtil.getActiveExportMarshallers() and then perform a save to trigger the breakpoint. If your Marshaller is not in the list of detected ones, you probably have either some config wrong or the bundle isn't actually active or something. Since it's not in the preferences either, that's likely the case.