Histórico da Página
Informações | ||
---|---|---|
| ||
Esta página foi revisada para considerar as novas configurações de server do fluig para a atualização 1.6. Caso possua uma atualização anterior do fluig escolha a aba da versão 1.5.13 e anteriores nesta página. |
Índice
Índice | ||||||
---|---|---|---|---|---|---|
|
Objetivo
Para utilizar os recursos do componente SDK, existem alguns pré-requisitos e exigências a serem seguidos, como:
...
- As operações no componente SDK estão disponíveis após configuração do fluig-sdk-api no classpath da aplicação dessa forma, através de um ServiceLocator, é realizada a chamada ao serviço desejado.
Consumindo um
...
Serviço na API Pública
Para utilizar um serviço da API Pública, deve ser utilizado o protocolo OAuth de autenticação, que através das chaves ConsumerKey Consumer Key, ConsumerSecret Consumer Secret, configurados no OAuthConsumer é OAuth App é gerado através do OAuthProvider OAuth Provider com um novo TokenAccess Token Access e um TokenSecret Token Secret.
- O client deve ser desenvolvido para suportar autenticação OAuth 1.0a.
Consumindo um Serviço do Componente SDK a partir de Eventos de JavaScript
...
Informações | ||
---|---|---|
| ||
Este recurso está disponível para eventos javascript de Workflow (que podem ser encontrados aqui) e também para Eventos Sociais (que podem ser encontrados aqui). |
Exemplos para Utilização do Componente SDK via Eventos de JavaScript
...
Exemplo 1
Bloco de código | ||||
---|---|---|---|---|
| ||||
function beforeTaskCreate(colleagueId){
log.info(fluigAPI.getUserService().getCurrent());
} |
Exemplo 2
Bloco de código | ||||
---|---|---|---|---|
| ||||
function beforeStateEntry(sequenceId) { if (sequenceId == 4) { var groupService = fluigAPI.getGroupService(); var cardData = hAPI.getCardData(getValue("WKNumProces")); var groupId = hAPI.getCardValue("groupId"); var users = new java.util.ArrayList(); var it = cardData.keySet().iterator(); while(it.hasNext()) { var field = it.next(); if (field.startsWith("userName__")) { var user = cardData.get(field); if (!groupService.containsUser(groupId, user)) { users.add(user); } } } if (!users.isEmpty()) { groupService.addUsers(groupId, users); } } } |
Informações | ||
---|---|---|
| ||
Veja também o exemplo de uma aplicação web utilizando o fluig SDK através do artefato web-sdk. Diponível no git.fluig. |
Consumindo um
...
Serviço no
...
Componente SDK
...
Para utilizar o recursos do componente SDK, existem alguns pré-requisitos e exigências a serem seguidos, como:
...
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
<?xml version="1.0" encoding="UTF-8"?> <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"> <mirrors> <mirror> <id>nexus</id> <mirrorOf>*</mirrorOf> <name>Fluig Nexus Repository.</name> <url>http://nexus.fluig.com/content/groups/public</url> </mirror> </mirrors> </settings> |
...
- Configurar o componente fluig-sdk-api no classpath.
- No caso de criação de um novo projeto WEB ou Widget, seguir o seguinte padrão de projeto Maven fluigsdk.sample.
- O novo projeto Maven deve ter por padrão as seguintes configurações no pom.xml:
Deck of Cards | ||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||
|
- Se atentar para as configurações padrão de autenticação e security-role localizadas no jboss-web.xml e web.xml conforme abaixo:
Deck of Cards | ||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||
|
- No arquivo web.xml:
Deck of Cards | |||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||||||||||||||||
|
- Realizar lookup do serviço via ServiceLocator. Seguir padrão da Super Classe fluigAPI.
Serviços
...
Disponíveis no
...
Componente SDK
...
...
Exemplo para Instanciar Serviço do SDK
...
Veja a seguir o exemplo para a chamado ao serviço no SDK:
Bloco de código | ||||
---|---|---|---|---|
| ||||
private UserService getUserServiceSDK() throws SDKException { return new FluigAPI().getUserService(); } |
Consumindo um Serviço do Componente SDK a partir de Eventos de JavaScript
Informações | ||
---|---|---|
| ||
Este recurso está disponível para eventos javascript de Workflow (que podem ser encontrados aqui) e também para Eventos de Personalização Social (que podem ser encontrados aqui). |
...
Auto Completar Eventos da fluigAPI
...
Este serviço permite visualizar no Studio uma lista com todos os métodos disponíveis no fluigAPI. Digitando "fluigAPI." e em seguida apertando o atalho CTRL + Espaço, a lista de métodos será apresentada.
Por exemplo, ao usar um método com retorno, por exemplo, fluigAPI.getWorkflowService(), o o usuário poderá listar os métodos deste retorno, como fluigAPI.getWorkflowService().createObervation().
Também é possível criar facilmente os objetos que são utilizados nos métodos.
Para isso, basta digitar, por exemplo, new ProcessObservationVO e acionar CTRL + Espaço que o plugin irá alterar o trecho automaticamente para new com.fluig.sdk.api.workflow.ProcessObservationVO();
Informaçõeswarning | ||
---|---|---|
| ||
Este serviço está disponível a partir da Atualização 1.5.13 da plataforma. Siga os procedimentos do Guia de atualização fluig Studio para atualizar o plugin. |
Exemplos para Utilização do Componente SDK via Eventos de JavaScript
Exemplo 1
Bloco de código | ||||
---|---|---|---|---|
| ||||
function beforeTaskCreate(colleagueId){
log.info(fluigAPI.getUserService().getCurrent());
} |
Exemplo 2
Bloco de código | ||||
---|---|---|---|---|
| ||||
function beforeStateEntry(sequenceId) {
if (sequenceId == 4) {
var groupService = fluigAPI.getGroupService();
var cardData = hAPI.getCardData(getValue("WKNumProces"));
var groupId = hAPI.getCardValue("groupId");
var users = new java.util.ArrayList();
var it = cardData.keySet().iterator();
while(it.hasNext()) {
var field = it.next();
if (field.startsWith("userName__")) {
var user = cardData.get(field);
if (!groupService.containsUser(groupId, user)) {
users.add(user);
}
}
}
if (!users.isEmpty()) {
groupService.addUsers(groupId, users);
}
}
} |
Informações | ||
---|---|---|
| ||
Veja também o exemplo de uma aplicação web utilizando o fluig SDK através do artefato fluig-sdk-api. Diponível no git.fluig. |