Direcionando chamadas API para servidores específicos

O aplicativo fornece a capacidade de rotear chamadas de API customizadas para um determinado servidor ou grupo de servidores quando essas APIs são chamadas remota ou localmente.

Sobre esta tarefa

Para ativar isso, os servidores e o protocolo devem ser especificados no arquivo yifclient.properties e nas APIs necessárias. O terminal é o servidor configurado ou um protocolo que é usado para rotear as chamadas de API.

Se o cliente XAPI é configurado para diversas URLs, uma tentativa de conexão é feita para cada servidor no grupo sucessivamente. Se a conexão funcionar, mas algo mais falhar, nenhum outro servidor será tentado e uma exceção será lançada.

Para direcionar chamadas de API para um servidor ou um grupo de servidores específico, execute as etapas a seguir:

Procedimento

  1. Especifique o atributo endpoint no arquivo yifclient.properties no diretório <runtime_sandbox>/resources/. Modifique o arquivo yifclient.properties para incluir a declaração e o uso do terminal no seguinte formato:
    endpoint.Server_Name.apifactory.protocol=HTTP 
    endpoint.Server_Name.httpapi.url=http://server:port/context_root/
    interop/InteropHttpServlet
    Para configurar o cliente XAPI para diversas URLs, defina o grupo como uma lista separada por vírgula:
    endpoint.Server_Name.httpapi.url=http://server1:port1/context_root1/
    interop/InteropHttpServlet,http://server2:port2/context_root2/
    interop/InteropHttpServlet... 

    A expressão endpoint.Server_Name especifica um servidor com o nome Server_Name. Por exemplo, endpoint.INBOXSERVER cria um terminal com o nome INBOXSERVER. É possível designar propriedades para o nome do terminal, que tem precedência sobre qualquer outra propriedade designada.

    O protocolo configurado para o terminal é HTTP, conforme especificado na linha: endpoint.Server_Name.apifactory.protocol=HTTP

    As configurações especificadas na segunda linha, endpoint.Server_Name.httpapi.url, são usadas para conexão com o servidor especificado no terminal.

  2. Configure um protocolo a ser utilizado para conectar-se ao servidor especificado. Os protocolos, como HTTP, HTTPS, EJB, LOCAL, AUTO, são nomes de terminal reservados. Se qualquer um deles for configurado para o terminal, o sistema usará as configurações de conexão padrão (conforme aplicável) para rotear as chamadas de API.
  3. Para cada API, especifique o terminal a ser utilizado:
    yfs.api.apiname.endpoint=ENDPOINT

    A API, então, chama o(s) servidor(es) especificado(s) no atributo de terminal.

    Nota: se um terminal não estiver configurado para uma API, ele usará o servidor padrão (local) ou um geral configurado para todas as APIs. A propriedade configurada no nível da API tem precedência sobre outras propriedades comuns.