Execução de serviço externo

Qualquer sistema que deseja consumir um WebService que está sendo disponibilizado através do serviço externo, basta seguir as orientações abaixo:


Os serviços externos devem ser configurado por um administrador do sistema no MentorWeb, seguindo as orientações conforme descrito na parte de cadastro de serviço externo.

Fluxo

Segurança

Para realizar a execução do serviço externo é necessário possuir um token de integração esse token é gerado a partir da chamada de outro webservice, conforme exemplo abaixo:

         Exemplo em PHP
           $request = new HttpRequest();
           $request->setUrl('http://dominio/MentorWebG5/rest/servicoexterno/token/disciplinaMatriculada');
           $request->setMethod(HTTP_METH_GET);
 
           $request->setHeaders(array(
             'senha' => '1',
             'usuario' => 'edu'
           ));
           try {
             $response = $request->send();
             echo $response->getBody();
           } catch (HttpException $ex) {
             echo $ex;
           }
         Exemplo em Java
           OkHttpClient client = new OkHttpClient();
 
           Request request = new Request.Builder()
             .url("http://dominio/MentorWebG5/rest/servicoexterno/token/disciplinaMatriculada")
             .get()
             .addHeader("usuario", "edu")
             .addHeader("senha", "1")
             .build();
 
           Response response = client.newCall(request).execute();

O retorno da requisição para o token será sempre uma “string” com o valor do token.

         Exemplo em PHP:
           $request = new HttpRequest();
           $request->setUrl('http://dominio/MentorWebG5/rest/servicoexterno/execute/disciplinaMatriculada');
           $request->setMethod(HTTP_METH_POST);
 
           $request->setHeaders(array(
             'token' => '0505d673d084e1fb7ebc6b2e109f698ba09269f5',
             'content-type' => 'application/json'
           ));
 
           $request->setBody('{"ingressoId":99,"periodoLetivoId":1}');
 
           try {
             $response = $request->send();
             echo $response->getBody();
           } catch (HttpException $ex) {
             echo $ex;
           }
         Exemplo em Java:
           OkHttpClient client = new OkHttpClient();
 
           MediaType mediaType = MediaType.parse("application/json");
           RequestBody body = RequestBody.create(mediaType, "{\"ingressoId\":99,\"periodoLetivoId\":1}");
           Request request = new Request.Builder()
             .url("http://dominio/MentorWeb/rest/servicoexterno/execute/disciplinaMatriculada")
             .post(body)
             .addHeader("content-type", "application/json")
             .addHeader("token", "0505d673d084e1fb7ebc6b2e109f698ba09269f5")
             .build();
 
           Response response = client.newCall(request).execute();

Observação: Toda requisição ao serviço externo gera log com informações do usuário, data/hora, ip e parâmetros.
O retorno do serviço, sempre será em formato “json”. Ele varia conforme cada serviço. Mas, todos os serviços tem como retorno o campo “Resultado”. Este campo, pode estar dentro de uma coleção ou não. Isso é específico de cada serviço.
Abaixo um exemplo de retorno com sucesso (dentro de uma coleção):

Abaixo um exemplo de retorno com erro (fora de uma coleção):