Erweiterte Anpassung > Benutzerdefinierte Aufgaben aktualisieren
  
Benutzerdefinierte Aufgaben aktualisieren
Wenn Sie benutzerdefinierte Aufgaben in PTC Navigate 1.4 oder früher erstellt haben, stand WindchillConnectorThing.processJSONRequest im Zentrum jeder REST API Ausführung. Der Ansatz für den Konnektor was REST URL-gesteuert. Mit dem neuen Integration Runtime Konnektor, basierend auf WindchillSwaggerConnector, ist der Ansatz dienstgesteuert. Infolgedessen, müssen wir, um Ihre Aufgaben zu dem neuen Konnektor zu migrieren, für die spezifische von Ihnen verwendete REST URL einen Dienst auf dem Konnektor vordefinieren. Führen Sie die nachfolgenden empfohlenen Schritte aus, um die API processJSONRequest zu ersetzen.
* 
Wurde Ihre benutzerdefinierte Aufgabe mit Hilfe von Info*Engine Aufgaben sowie REST-Diensten erstellt, vergleichen Sie das nächste Thema, Benutzerdefinierte Aufgabe mit Info*Engine Aufgaben aktualisieren.
1. Verwenden Sie entweder ptc-windchill-integration-connector, das neue Runtime Integration Konnektor-Ding, das in Windchill Extension enthalten ist, oder erstellen Sie Ihren eigenen Konnektor und verwenden Sie WindchillSwaggerConnector als Dingvorlagen-Referenz. Wir empfehlen, bei einer Aktualisierung unseren standardmäßigen Konnektor ptc-windchill-integration-connector zu duplizieren und diesen duplizierten Konnektor anschließend anzupassen. Andernfalls verlieren Sie Ihren eigenen angepassten Konnektor.
2. Erstellen Sie einen Dienst für operationType und die URL, welche für processJSONRequest API-Aufrufe an den Konnektor verwendet werden.
Weitere Informationen zum Erstellen von Diensten finden Sie im englischen ThingWorx Hilfe-Thema "Thing Services".
3. Führen Sie alle queryParams im Dienst auf, so wie in vorherigen Versionen von ThingWorx Navigate. Stellen Sie sicher, dass die Namen für Parameter genau mit den Namen, die der Dienst erwartet, übereinstimmen.
4. Sollten Sie POST-Anfragen haben, fügen Sie diese Elemente dem Abschnitt queryParams hinzu:
a. CSRF-Token. Führen Sie den Dienst auf dem Konnektor Security_Get_CSRF aus, um ein Token zu erhalten.
b. Parameter "Daten (JSONObject)". In vorherigen Versionen war dies ein Parameter in den Aufrufen processJSONRequest.
5. Stellen Sie sicher, dass es sich bei dem Konnektor um ein Ding handelt, das durch einen Namen identifiziert werden kann.
Thing connector = (Thing)EntityUtilities.findEntity(connector,ThingworxRelationshipTypes.Thing);
6. Starten Sie den Dienst auf dem Konnektor-Ding:
InfoTable serviceResult = connector.processServiceRequest(serviceName,params);
7. Verwenden Sie WindchillServicesConnector.InvokeService(operationType,serviceName,queryParams) als Referenz und die util-API für die Verwendung von benutzerdefinierten APIs oder Aufgaben.