Você pode definir um manipulador para um campo de um formulário.
Esse manipulador é definida como scripts em BeanShell e será executada imediatamente antes que o valor de um campo renderizado for editado.
O script de manipulação de um campo pode acessar os dados do próprio campo apenas. No script o valor do campo será acessado como um variável com o nome do campo ou com o nome padrão "value".
Abaixo um exemplo de um script de manipulação, que formata o valor, de um campo do tipo String com o nome "cpf":
O script de manipulação serve basicamente pra manipular o valor do campo e esse valor pode ser manipulado atribuindo-se um novo valor para uma variável com o nome do campo (como no exemplo acima) ou através do retorno do próprio script.
Alguns campos do formulário possuem propriedades específicas e elas podem ser acessadas no script de manipulação. Esses campos são:
Organization
Representa uma unidade de organização no diretório do Blazon, que pode ser de um dos tipos: ORGANIZATION, DEPARTMENT ou COST_CENTER
User
Representa um usuário do diretório do Blazon.
List
Representa uma lista de valores com seus respectivos rótulos.
Username
Representa um nome de usuário no Blazon.
Cada um desses campos apresenta propriedades específicas, são elas:
name
Contém o nome da organização selecionada no campo.
type
Contém o tipo da organização selecionada no campo.
identifier
Contém o identificador da organização selecionada no campo.
displayName
Contém o nome de apresentação do usuário do Blazon selecionado no campo.
username
Contém o nome de usuário do usuário do Blazon selecionado no campo.
identifier
Contém o identificador do usuário do Blazon selecionada no campo.
label
Contém o rótulo do item da lista selecionado no campo.
value
Contém o valor do item da lista selecionado no campo.
username
Contém o nome de usuário selecionado no campo.
value
Contém o nome de usuário selecionado no campo.
Como definido acima, o campo do tipo "Organization" contem 3 propriedades específicas: name, type e identifier.
Abaixo um exemplo de como um script de manipulação pode usar uma dessas propriedades:
Os scripts de manipulação de campo possuem à disposição 3 serviços que permitem acesso às informações do diretório do Blazon para efetivação de algumas manipulações.
Esses serviços são os mesmos serviços disponíveis para os scripts de manipulação do formulário e estão documentados na página: