Personalização avançada > Atualizar suas tarefas personalizadas
  
Atualizar suas tarefas personalizadas
Se foram criadas tarefas personalizadas no PTC Navigate 1.4 ou anterior, WindchillConnectorThing.processJSONRequest era o centro de toda a execução da API REST. A abordagem do conector é guiada por URL REST. Com o novo conector Integration Runtime, que tem base no WindchillSwaggerConnector, a abordagem é guiada por serviço. Como resultado, a fim de migrar suas tarefas para o novo conector, é necessário predefinir um serviço no conector para o URL REST específico que está sendo usado. Siga os passos recomendados abaixo para substituir a API processJSONRequest.
* 
Se a tarefa personalizada foi criada usando tarefas do Info*Engine, assim como serviços REST, veja também o próximo tópico, Atualizar uma tarefa personalizada que tenha tarefas do Info*Engine
1. Use o ptc-windchill-integration-connector, a nova coisa conectora do Integration Runtime que é incluída com o Windchill Extension, ou crie seu próprio conector e use o WindchillSwaggerConnector como referência do template de coisa. Ao atualizar, recomenda-se duplicar o conector predefinido ptc-windchill-integration-connector e personalizar o conector duplicado. Caso contrário, você irá perder seu conector personalizado.
2. Crie um serviço para o operationType e o URL que são usados nas chamadas da API processJSONRequest no conector.
Se forem necessárias mais informações sobre a criação de serviços, comece com o tópico da Ajuda do ThingWorx "Thing Services"
3. No serviço, liste todos os queryParams como nas versões anteriores do ThingWorx Navigate. Certifique-se de que os nomes de param correspondam exatamente aos nomes esperados pelo serviço.
4. Se houver solicitações POST, adicione estes itens à seção queryParams:
a. Token CSRF. Para obter um token, execute o serviço no conector Security_Get_CSRF.
b. param de dados (JSONObject). Em versões anteriores, este era um param separado nas chamadas de processJSONRequest.
5. Certifique-se de que o conector seja uma coisa que pode ser identificada por nome:
Thing connector = (Thing)EntityUtilities.findEntity(connector,ThingworxRelationshipTypes.Thing);
6. Inicie o serviço na coisa do conector:
InfoTable serviceResult = connector.processServiceRequest(serviceName,params);
7. Use WindchillServicesConnector.InvokeService(operationType,serviceName,queryParams) como referência e Util API para o uso de qualquer API ou tarefa personalizada.