Aktualisierungen / Updates1
Wenn Sie Ihre Installation des TRANSCONNECT® Developer Studios auf die Version 2.3.3 aktualisieren möchten, gehen Sie wie im Folgenden beschrieben vor.
- Schließen Sie das Developer Studio
- Installieren Sie das TRANSCONNECT®-Update auf Version 2.3.3
- Öffnen Sie die Datei „…/TRANSCONNECT/eclipse/eclipse.ini“ und entfernen Sie in der Zeile unter „-VM“ den Pfadabschnitt „/jre“.
- Starten Sie das Developer Studio
- Wählen Sie im Menü „Fenster->Benutzervorgaben“
- Navigieren Sie zum Punkt „Installieren/Aktualisieren->Websites mit verfügbarer Software“
- Drücken Sie „Hinzufügen“ und geben Sie den Namen „Nebula“ und die URL https://download.eclipse.org/nebula/releases/2.3.0/ ein->OK
- Drücken Sie „Hinzufügen“ und geben Sie den Namen „2019-12“ und die URL https://download.eclipse.org/releases/2019-12/ ein->OK
- Prüfen Sie, dass die Updateseite Ihres TRANSCONNECT-Servers in der Liste vorhanden ist. Falls nicht, fügen Sie die URL http://ihrhostname:8080/update
- Schließen Sie den Einstellungsdialog mit „OK“.
- Wählen Sie im Menü „Hilfe“ -> „Auf Updates prüfen“.
- Aufgrund der installierten Komponenten des Eclipse BIRT Projektes, welches wir ab Version 2.3.3 nicht mehr mit ausliefern, kommt es im erscheinenden Dialog zu folgender Fehlermeldung, die durch Problemdetails konkretisiert wird:
- Cannot complete the install because of a conflicting dependency.
- Der einfachste Weg dieses Problem zu umgehen, ist das Update für „BIRT Chart Framework“ zu deselektieren, bevor man mit „Weiter“ fortfährt.
- Der Update-Dialog wird mittels „Weiter“ bzw. am Ende „Fertigstellen“ abgeschlossen.
- Eventuelle Anmeldeaufforderungen können abgebrochen werden.
- Beantworten Sie die Warnung bei der Installation mit „OK“ und die Neustartabfrage mit „Ja“.
- Beim Neustart erscheint eine Information über eine „Ältere Arbeitsbereichsversion“. Wählen Sie die Option „…nicht erneut anzeigen“ und bestätigen Sie mit „Continue“.
- Bei (Nicht-)Bedarf können die Komponenten des Eclipse BIRT Projektes sowie der Activiti Eclipse BPMN Designer nachträglich deinstalliert werden.
Implementierung eigener TRANSCONNECT Komponenten1
Bei der Entwicklung von eigenen Adaptern oder zeitgesteuerten Aufgaben müssen die Parameter, welche der spätere Anwender konfigurieren soll, mit Metadaten beschrieben werden. Für jeden Parameter kann optional ein Validator angegeben werden, der die eingegebenen Werte überprüft. Für einige Datentypen können darüber hinaus noch weitere Einschränkungen getroffen werden, was die Auswahlmöglichkeit von Werten betrifft (Subtypen). Zur Laufzeit wird der vom Anwender konfigurierte Wert dem Adapter oder der zeitgesteuerten Aufgabe übergeben.
Beispiel 1, Definition der Parameter im Adapter:
com.company.tc.adapter.impl.AdapterFactory
@Override protected Map<String,PropertyMetaData> getConnectionProperties( String subtype, boolean outbound ) { Map<String,PropertyMetaData> meta = new HashMap<>(); meta.put( PROPERTY_MYPROP, new PropertyMetaData( Messages.PROPERTY_NAME, // name Messages.PROPERTY_DESC, // description String.class, // type "default value", // default value true, // required property null ) ); // no validator return meta; }
Beispiel 2, Definition der Parameter für eine zeitgesteuerte Aufgabe:
com.sqlgmbh.tc.sample.wf.QueryDatabase
@Override public Map<String,PropertyMetaData> getMetadata() { Map<String,PropertyMetaData> meta = new HashMap<>(); meta.put( PROPERTY_MYPROP, new PropertyMetaData( Messages.PROPERTY_NAME, // name Messages.PROPERTY_DESC, // description String.class, // type "default value", // default value true, // required property new Validator.EMailValidator( false ) ) ); // only mail addresses allowed return meta; }
Beispiel 3, Übergabe der konfigurierten Werte an einen Adapter:
com.company.tc.adapter.impl.OutboundConnection
protected OutboundConnection( ConnectionSpec spec, OutboundAdapter adapter, String prefix ) { String value = spec.getString( PROPERTY_MYPROP ); }
Beispiel 4, Übergabe der konfigurierten Werte an eine zeitgesteuerte Aufgabe:
com.sqlgmbh.tc.sample.wf.QueryDatabase
@Override public void setProperties( Map<String,Serializable> properties ) { String value = (String) properties.get( PROPERTY_MYPROP ); }
Für die Parameter werden die folgenden Datentypen und Validatoren unterstützt.
Java Datentyp für Metadaten | mögliche Validatoren | mögliche Subtypen | Java Datentyp der Werte zur Laufzeit |
---|---|---|---|
java.lang.String | com.sqlag.tc.metadata.Validator.StringValidator com.sqlag.tc.metadata.Validator.DatetimeValidator com.sqlag.tc.metadata.Validator.EMailValidator com.sqlag.tc.metadata.Validator.FileMaskValidator com.sqlag.tc.metadata.Validator.HostnameValidator com.sqlag.tc.metadata.Validator.IPValidator com.sqlag.tc.metadata.Validator.PathValidator com.sqlag.tc.metadata.Validator.PathWithSelectionGUIValidator com.sqlag.tc.metadata.Validator.RegexValidator com.sqlag.tc.metadata.Validator.UrlValidator com.sqlag.tc.metadata.Validator.EnumValidator com.sqlag.tc.metadata.Validator.NamedEnumerationValidator |
- | java.lang.String |
java.lang.Integer | com.sqlag.tc.metadata.Validator.NumberValidator com.sqlag.tc.metadata.Validator.PortValidator com.sqlag.tc.metadata.Validator.EnumValidator com.sqlag.tc.metadata.Validator.NamedEnumerationValidator |
- | java.lang.Integer |
java.lang.Long | com.sqlag.tc.metadata.Validator.NumberValidator com.sqlag.tc.metadata.Validator.PortValidator com.sqlag.tc.metadata.Validator.EnumValidator com.sqlag.tc.metadata.Validator.NamedEnumerationValidator |
- | java.lang.Long |
java.util.Date | - | - | java.util.Date |
java.lang.Boolean | - | - | java.lang.Boolean |
boolean | - | - | java.lang.Boolean |
com.sqlag.tc.repository.SecureProperty (verdeckte Eingabe, verschlüsselt gespeichert) |
com.sqlag.tc.metadata.Validator.SecureStringValidator | - | java.lang.String |
com.sqlag.tc.repository.container.adapter.InstanceConfig | - | String mit Klassenname des Adapters: "com.sqlag.tc.adapter.mqtt.AdapterFactory" "com.sqlag.tc.adapter.oftp.AdapterFactory" "com.sqlag.tc.adapter.osci.AdapterFactory" "com.sqlag.tc.adapter.pdf.AdapterFactory" "com.sqlag.tc.adapter.plc.AdapterFactory" "com.sqlag.tc.adapter.snmp.AdapterFactory" "com.sqlag.tc.adapter.plc.AdapterFactory" "com.sqlag.tc.adapter.plc.AdapterFactory" "com.sqlag.tc.adapter.plc.AdapterFactory" "com.sqlgmbh.tc.adapter.cmd.AdapterFactory" "com.sqlgmbh.tc.adapter.domino.AdapterFactory" "com.sqlgmbh.tc.adapter.edifact.AdapterFactory" "com.sqlgmbh.tc.adapter.email.AdapterFactory" "com.sqlgmbh.tc.adapter.file.AdapterFactory" "com.sqlgmbh.tc.adapter.gdv.AdapterFactory" "com.sqlgmbh.tc.adapter.hl7.AdapterFactory" "com.sqlgmbh.tc.adapter.http.AdapterFactory" "com.sqlgmbh.tc.adapter.jdbc.AdapterFactory" "com.sqlgmbh.tc.adapter.jms.AdapterFactory" "com.sqlgmbh.tc.adapter.ldap.AdapterFactory" "com.sqlgmbh.tc.adapter.ldt.AdapterFactory" "com.sqlgmbh.tc.adapter.office.AdapterFactory" "com.sqlgmbh.tc.adapter.plugin.AdapterFactory" "com.sqlgmbh.tc.adapter.sap.AdapterFactory" "com.sqlgmbh.tc.adapter.soap.AdapterFactory" |
javax.resource.cci.ConnectionFactory |
com.sqlag.tc.repository.container.resource.FileResource | - | com.sqlag.tc.repository.container.resource.Resources.ResourceTag.XmlDocument com.sqlag.tc.repository.container.resource.Resources.ResourceTag.StxDocument com.sqlag.tc.repository.container.resource.Resources.ResourceTag.XsltDocument com.sqlag.tc.repository.container.resource.Resources.ResourceTag.XmlSchema |
com.sqlgmbh.tc.wf.XMLResource |
com.sqlag.tc.repository.container.resource.FileResource | - | - | com.sqlgmbh.tc.wf.Resource |
com.sqlag.tc.repository.container.certificate.Certificate | - | - | com.sqlag.tc.repository.container.certificate.Certificate (getReferencedContainer()) |
com.sqlag.tc.repository.container.certificate.PrivateKey | - | - | com.sqlag.tc.repository.container.certificate.PrivateKey (getReferencedContainer()) |