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:
- Esta documentação é destinada ao desenvolvedor
...
- cliente e parceiro do fluig que deseja consumir interna e externamente os recursos disponíveis na API Pública e no componente SDK.
- As operações na API Pública estão disponíveis através de chamadas REST, que são consumidas via HTTP.
- 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:
- Incluir as configurações do servidor do nexus no Maven para realizar o download de artefatos de dependência. (settings.xml)
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 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 FluigAPIfluigAPI.
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 fluigAPI
Auto Completar Eventos da fluigAPI
...
Este serviço permite visualizar no Studio Este novo serviço, permite ao usuário visualizar no studio, uma lista com todos os métodos disponíveis no fluigAPI, digitando . 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 (, fluigAPI.getWorkflowService() por exemplo), o o usuário poderá também listar os métodos deste retorno(, como fluigAPI.getWorkflowService().createObervation()). É
Também é possível também criar facilmente criar os objetos que são utilizados nos métodos.
Para isso, basta digitar, por exemplo, new ProcessObservationVO e apertar acionar CTRL + Espaço que o plugin vai irá alterar o trecho automaticamente para new com.fluig.sdk.api.workflow.ProcessObservationVO();Faça o download a partir do update.fluig.com diretamente no studio.
Avisoinfo | ||
---|---|---|
| ||
Serviço Este serviço está disponível a partir da Atualização 1.5.13. |
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 da plataforma. Siga os procedimentos do Guia de atualização fluig Studio para atualizar o plugin. |