Serviços disponíveis numa validação de um formulário

As validações de um formulário, são definidas de fato, com base em scripts BeanShell.

Esses scripts serão executados pelo Blazon no momento de salvar os dados de um formulário que foi previamente renderizado.

Assim você pode implementar validações sobre os dados do formulário. Juntamente com essa funcionalidade o Blazon disponibiliza 3 serviços injetados no sistema de execução dos scripts que permitem algumas operações sobre os dados do diretório do Blazon.

Os serviços são:

ServiçoDescrição

accountService

Permite operações de busca sobre as contas do diretório do Blazon.

userService

Permite operações de busca sobre os usuários do diretório do Blazon.

organizationService

Permite operações de busca sobre as organizações

do diretório do Blazon.

Cada um dos serviços acima citados disponibilizam uma interface com algumas operações.

Serviço de contas (accountService)

As operações do serviço "accountService", são:

OperaçãoDescrição

Boolean existAccount(Map<String, Object> params);

À partir de um conjunto de parâmetros, verifica a existência de uma conta no diretório do Blazon.

Serviço de usuários (userService)

As operações do serviço "userService", são:

OperaçãoDescrição

List<Map<String, String>> findUsers(Map<String, Object> params);

À partir de um conjunto de parâmetros retorna uma lista de usuários do diretório do Blazon.

Boolean existUser(Map<String, Object> params);

À partir de um conjunto de parâmetros, verifica a existência de um usuário no diretório do Blazon.

Serviços de organizações (organizationService)

As operações do serviço "organizationService", são:

OperaçãoDescrição

Boolean existUserInOrganization(String username, String organizationName, String type);

Com base no nome de usuário, nome da organização e tipo da organização, verifica se um usuário faz parte de uma organização.

List<Map<String, String>> findOrganizations(Map<String, Object> params);

À partir de um conjunto de parâmetros retorna uma lista de organizações do diretório do Blazon.

List<Map<String, String>> findOwners(String organizationName, String type);

Com base no nome da organização e no tipo da organização, retorna a lista de donos/gerentes da organização.

Exemplo de um script de validação

Abaixo tem-se um exemplo de um script de validação usando algumas operações dos serviços disponibilizados:

params = new java.util.HashMap();
params.put("cpf",cpf);
existUser = userService.existUser(params);
if(existUser) {
	owners = organizationService.findOwners(organization.name, organization.type);
	if(owners == null || owners.isEmpty()) {
		return "O cpf " + cpf + " já esta cadastrado na base.";
	} else {
		return "O cpf " + cpf + " já esta cadastrado na base. Procure o " + owners.get(0).get("displayName") + " para que ele verifique.";
	}
	return false;
} else {
	return true;
}