Sempre que se efetua uma integração via chamada rest/ajax é possível configurá-la para que a widget aguarde, ou não, o término do processamento no servidor. Salvo quando existe a real necessidade de se esperar pelo retorno da chamada, é recomendado que sempre se faça a integração de forma assíncrona. Abaixo estão dois exemplos de chamada remota (uma para ajax e outra para rest):

Ajax

	chamadaRemotaAjax : function() {
		$.ajax({
			async: true,
			type: "GET",
			url: "url-do-servico-a-ser-consumido",
			success : function(data) {
				// código omitido
			},
			error: function (msg){
				// código omitido
			}
		});
	}

Onde:

ElementoDescrição
async:Determina que a chamada seja feita de forma assíncrona (true) ou síncrona (false)
success:Código a ser executado quando a função retorna com sucesso
error:Código que tratará eventuais erros no processamento remoto

REST

	chamadaRemotaRest : function() {
        WCMSpaceAPI.PageService.UPDATEPREFERENCES(
            {
                async: true,
                success: function (data) {
                    // código omitido
                },
                fail: function (xhr, message, errorData) {
                    // código omitido
                }
            },
			this.instanceId,
			preferences
        );
	}

Onde:

ElementoDescrição
async:Determina que a chamada seja feita de forma assíncrona (true) ou síncrona (false)
success:Código a ser executado quando a função retorna com sucesso
fail:Código que tratará eventuais erros no processamento remoto

Componente visual para chamadas assíncronas

Muitas vezes a execução remota de um código demora muito tempo, deixando o usuário com dúvidas sobre o sucesso ou falha do comando enviado ao servidor. Pensando nisso, a plataforma Fluig disponibilizou uma forma para que haja um elemento que visualmente indique que algo está sendo processado. A documentação complete a respeito de sua utilização pode ser encontrada aqui