Java-Beispielprojekt

www.altova.com Dieses Kapitel drucken Vorherige Seite Eine Ebene nach oben Nächste Seite

Startseite >  Referenz für Programmierer > Applikations-API > Übersicht > Programmiersprachen > Java >

Java-Beispielprojekt

Das Authentic Desktop-Installationspaket enthält ein Java-Beispielprojekt, das Sie im Java-Ordner des Ordners API Examples finden:

 

Windows 7, Windows 8, Windows 10

C:\Benutzer\<Benutzername>\Dokumente\
Altova\Authentic2019\AuthenticExamples\API\

Dieser Ordner enthält Java-Beispiele für die Authentic Desktop API. Sie können das Beispielprojekt mit Hilfe der Batch-Datei BuildAndRun.bat, direkt über die Befehlszeile testen oder Sie können es in Eclipse kompilieren und ausführen. Anleitungen dafür finden Sie weiter unten.

 

 

 

 

Dateiliste

Der Ordner für die Java-Beispiele enthält alle zum Ausführen des Beispielprojekts erforderlichen Dateien. Diese Dateien sind unten aufgelistet. Wenn Sie eine 64-Bit-Version der Applikation verwenden, enthalten einige Dateinamen  _x64. Diese Dateinamen sind mit (_x64) gekennzeichnet.

 

AltovaAutomation(_x64).dll

Java-COM Bridge: DLL-Teil

AltovaAutomation.jar

Java-COM Bridge: Java-Bibliotheksteil

AuthenticAPI.jar

Java-Klassen der Authentic Desktop API

RunAuthenticDesktop.java

Java-Beispielquellcode

BuildAndRun.bat

Batch-Datei zum Kompilieren und Ausführen des Beispielcodes über die Befehlszeile. Es wird ein Ordner benötigt, in dem sich die Java Virtual Machine als Parameter befindet.

.classpath

Hilfedatei Eclipse-Projekt

.project        

Eclipse-Projektdatei

Authentic_JavaDoc.zip

Javadoc Datei, die die Hilfedokumentation für die Java API enthält

 

 

 

Funktionen in diesem Beispiel

In diesem Beispielprojekt wird Authentic Desktop gestartet und einige Operationen wie das Öffnen und Schließen von Dokumenten werden ausgeführt. Authentic Desktop bleibt danach geöffnet. Sie müssen die Applikation manuell schließen.

 

Start Authentic Desktop: Startet Authentic Desktop, das als Automation Server registriert ist, oder aktiviert das Programm, wenn Authentic Desktop bereits ausgeführt wird.
Open example files: Navigiert zu einem der mit Authentic Desktop installierten Beispieldokumente und öffnet es.
Iterieren durch und Ändern des Ansichtsmodus: Wechselt von der Ansicht aller offenen Dokumente in die Textansicht. Im Code wird auch gezeigt, wie man durch offene Dokumente iteriert.
Iteration, Validierung und Ausgabeparameter: Validiert das aktive Dokument und zeigt das Ergebnis in einem Meldungsfeld an. Im Code wird gezeigt, wie Ausgabeparameter verwendet werden.
Event-Behandlung: Zeigt, wie XMLSpy Events behandelt werden.
Shutdown Authentic Desktop: Beendet Authentic Desktop.

 

Sie können das Beispiel beliebig modifizieren und es ausführen.

 

 

Ausführen des Beispiels über die Befehlszeile

Um das Beispiel von der Befehlszeile aus auszuführen, öffnen Sie ein Eingabeaufforderungsfester, gehen Sie zum Ordner Java des Ordners API Examples (Pfad siehe oben) und geben Sie folgende Zeile ein:

 

 buildAndRun.bat "<Path-to-the-Java-bin-folder>"

 

Der Java Binary-Ordner muss von einer JDK 1.5 oder höheren Version auf Ihrem Rechner sein.

 

Drücken Sie die Eingabetaste. Der Java-Quellcode in RunAuthenticDesktop.java wird kompiliert und anschließend ausgeführt.

 

 

 

Laden des Beispiels in Eclipse

Öffnen Sie Eclipse und wählen Sie den Befehl Import | Existing Projects into Workspace um die Eclipse-Projektdatei (.project) im Ordner Java des Ordners API Examples (Pfad siehe oben) zu Eclipse hinzuzufügen. Daraufhin wird das Projekt RunAuthenticDesktop in Ihrem Package Explorer oder Navigator angezeigt.

 

Wählen Sie das Projekt aus und klicken Sie anschließend auf Run as | Java Application um das Beispiel auszuführen.

 

Anmerkung:Sie können einen Klassennamen oder eine Methode der Java API auswählen und F1 drücken, um Hilfe zu dieser Klasse oder Methode zu erhalten.

 

 

Java-Quellcode

Im Folgenden finden Sie den mit Kommentaren versehenen Java-Quellcode aus der Beispieldatei RunAuthenticDesktop.java.

 

 

01 // Access general JAVA-COM bridge classes

02 import com.altova.automation.libs.*;

03

04 // Access AuthenticDesktop Java-COM bridge

05 import com.altova.automation.AuthenticDesktop.*;

06 import com.altova.automation.AuthenticDesktop.Enums.SPYViewModes;

07

08 /**

09  * A simple example that starts AuthenticDesktop COM server and performs a view operations on it.

10  * Feel free to extend.

11  */

12 public class RunAuthenticDesktop

13 {

14   public static void main(String[] args)

15   {

16     // An instance of the application.

17     Application authenticDesktop = null;

18

19     // Instead of COM error-handling, use Java exception mechanism.

20     try

21     {

22       // Start AuthenticDesktop as COM server.

23       authenticDesktop = new Application();

24       // COM servers start up invisible so we make it visible

25       authenticDesktop.setVisible(true);

26

27       // Locate samples installed with the product.

28       String strExamplesFolder = System.getenv("USERPROFILE") + "\\My Documents\\Altova\\Authentic2012\\AuthenticExamples\\";

29      

30       // Open two files from the product samples.

31       authenticDesktop.getDocuments().openFile(strExamplesFolder + "OrgChart.pxf", false);

32       authenticDesktop.getDocuments().openFile(strExamplesFolder + "ExpReport.xml", false);

33      

34       // Iterate through all open documents and set the View Mode to 'Text'.

35       for (Document doc:authenticDesktop.getDocuments())

36         if ( doc.getCurrentViewMode() != SPYViewModes.spyViewText)

37           doc.switchViewMode(SPYViewModes.spyViewText);

38

39       // An alternative iteration mode is index-based. COM indices are typically zero-based.

40       Documents documents = authenticDesktop.getDocuments();

41       for (int i = 1; i <= documents.getCount(); i++)

42       {

43         Document doc = documents.getItem(i);

44        

45         // Validation is one of the few methods that have output parameters.

46         // The class JVariant is the correct type for parameters in these cases.

47         // To get values back mark them with the by-reference flag.

48         JVariant validationErrorText = new JVariant.JStringVariant("");     validationErrorText.setByRefFlag();

49         JVariant validationErrorCount = new JVariant.JIntVariant(0);      validationErrorCount.setByRefFlag();

50         JVariant validationErrorXMLData = new JVariant.JIDispatchVariant(0);  validationErrorXMLData.setByRefFlag();

51         if (!doc.isValid(validationErrorText, validationErrorCount, validationErrorXMLData))

52           System.out.println("Document " + doc.getName() + " is not wellformed - " + validationErrorText.getStringValue());

53         else

54           System.out.println("Document " + doc.getName() + " is wellformed.");

55       }

56      

57       // The following lines attach to the document events using a default implementation

58       // for the events and override one of its methods.

59       // If you want to override all document events it is better to derive your listener class

60       // from DocumentEvents and implement all methods of this interface.

61       Document doc = authenticDesktop.getActiveDocument();

62       doc.addListener(new DocumentEventsDefaultHandler()

63       {

64         @Override

65         public boolean onBeforeCloseDocument(Document i_ipDoc) throws AutomationException

66         {

67           System.out.println("Document " + i_ipDoc.getName() + " requested closing.");

68          

69           // Allow closing of document

70           return true;

71         }

72       });

73       doc.close(true);

74       doc = null;

75        

76       System.out.println("Watch AuthenticDesktop!");

77     }

78     catch (AutomationException e)

79     {

80       // e.printStackTrace();

81     }

82     finally

83     {

84       // Make sure that AuthenticDesktop can shut down properly.

85       if (authenticDesktop != null)

86         authenticDesktop.dispose();

87

88       // Since the COM server was made visible and still is visible, it will keep running

89       // and needs to be closed manually.

90       System.out.println("Now close AuthenticDesktop!");

91     }

92   }

93 }

 


© 2019 Altova GmbH