Objetivo

O objetivo deste documento é descrever a utilização de Webservices, mostrar e explicar todos seus métodos, disponibilizar exemplos de classes que utilizam esses Webservices e mostrar exemplos de geração de stubs que são necessários para que os client’s possam se comunicar com o serviço.

Criar Stubs

Os stubs são necessários para que os client’s que utilizam os métodos dos Webservices possam se comunicar com o serviço.

Para criar um stub é necessário que o serviço do Fluig esteja inicializado. Depois de iniciar o serviço, deve-se abrir o Prompt de comando e utilizar a sintaxe: wsimport -d <output_directory> <wsdl_url>, onde output_directory é o diretório onde o stub será criado e wsdl_url é a url de acesso ao serviço. Após isso, basta apertar Enter e o resultado aparecerá conforme mostra a figura 1. 

 

Figura 1: Exemplo de criação de stub

 

 

 No quadro 1, é mostrado o comando necessário para criação de stubs de cada serviço disponível no Fluig.

 

Webservices

Comando

ECMAttributionMecanismService

wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMAttributionMecanismService?wsdl

ECMBusinessPeriodService

wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMBusinessPeriodService?wsdl

ECMCardIndexService

wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMCardIndexService?wsdl

ECMCardService

wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMCardService?wsdl

ECMColleagueGroupService

wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMColleagueGroupService?wsdl

ECMColleagueReplacementService

wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMColleagueReplacementService?wsdl

ECMColleagueService

wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMColleagueService?wsdl

ECMCompanyService

wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMCompanyService?wsdl

ECMCustomFieldsService

wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMCustomFieldsService?wsdl

ECMDashBoardService

wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMDashBoardService?wsdl

ECMDataServiceService

wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMDataServiceService?wsdl

ECMDatasetService

wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMDatasetService?wsdl

ECMDocumentService

wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMDocumentService?wsdl

ECMFavoritesService

wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMFavoritesService?wsdl

ECMFolderService

wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMFolderService?wsdl

ECMGlobalParamService

wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMGlobalParamService?wsdl

ECMGroupService

wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMGroupService?wsdl

ECMOutstandingService

wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMOutstandingService?wsdl

ECMReportService

wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMReportService?wsdl

ECMSearchDocumentService

wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMSearchDocumentService?wsdl

ECMSignalService

wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMSignalService?wsdl

ECMTokenService

wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMTokenService?wsdl

ECMWorkflowEngineService

wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMWorkflowEngineService?wsdl

ECMWorkflowRoleService

wsimport -d C:\Webservices\tmp http://<SERVER>:<PORT>/webdesk/ECMWorkflowRoleService?wsdl

Quadro 1: Comandos para criação de stubs

 

Considerações Métodos de Update

Para os métodos de update que recebem objetos complexos (DocumentDto, ColleagueDto, GroupDto, etc) é obrigatório passar todos os campos do objeto alterado. Os campos não informados serão substituídos por branco, nulo ou zero, dependendo do seu tipo.

Para evitar esta situação, sugerimos sempre utilizar os métodos get para recuperar o objeto, efetuar as alterações nos campos necessários e enviá-lo para o método update.

 

ECMAttributionMecanismService

Webservices responsável por realizar operações referentes aos mecanismos de atribuição cadastrados no Fluig. Pode ser utilizado para pesquisar os mecanismos de atribuição de uma determinada empresa.

Métodos 

No quadro 20, é mostrado todos os métodos disponíveis na classe ECMAttributionMecanismService.

getAttributionMecanism

Retorna os mecanismos de atribuição da empresa.

 

Método:

getAttributionMecanism(String user, String password, int companyId)

 

Parâmetros:

  • user: login do colaborador;
  • password: senha do colaborador;
  • companyId: código da empresa;

 

Retorno: AttributionMecanismDto[].

Quadro 20: Métodos da ECMAttributionMecanismService

 

Exemplo de utilização

 

No diretório de documentação do Fluig na pasta Documentos de Customização\Arquivos Adicionais\Exemplos Webservices\ExemplosAttributionMecanismService é disponibilizada a classe AttributionMecanismServiceClient.java, esta exemplifica a utilização de todos os métodos da classe AttributionMecanismService.



ECMBusinessPeriodService

Webservices responsável por realizar operações referentes aos expedientes cadastrados no Fluig. Pode ser utilizado para pesquisar os expedientes de uma determinada empresa.


Métodos

No quadro 19, é mostrado todos os métodos disponíveis na classe BusinessPeriodService.

 

getBusinessPeriods

Retorna os expedientes da empresa.

 

Método:

getBusinessPeriods(String user, String password, int companyId)

 

Parâmetros:

  • user: login do colaborador;
  • password: senha do colaborador;
  • companyId: código da empresa;

 

Retorno: BusinessPeriodDto[].

Quadro 19: Métodos da BusinessPeriodService

 

Exemplo de utilização

No diretório de documentação do ECM na pasta Documentos de Customização\Arquivos Adicionais\Exemplos Webservices\ExemplosBusinessPeriodService é disponibilizada a classe BusinessPeriodServiceClient.java, esta exemplifica a utilização de todos os métodos da classe BusinessPeriodService.


ECMCardIndexService

Webservices responsável por realizar operações referentes aos fichários cadastrados no ECM.

Métodos

No quadro 21, é mostrado todos os métodos disponíveis na classe CardIndexService.

 

 

createSimpleCardIndex

Criação simples de um formulário.

 

Método:

createSimpleCardIndex (String user, String password, int companyId, int parentDocumentId, String publisherId, String documentDescription, String cardDescription, AttachmentArray attachments, CardEventDtoArray customEvents)

 

Parâmetros:

  • user: login do colaborador;
  • password: senha do colaborador;
  • companyId: código da empresa;
  • parentDocumentId: numero do formulário.
  • publisherId: código do autor
  • documentDescription: descrição
  • cardDescription: nome
  • descriptionField: descrição
  • attachments: arquivo anexo
  • customEvents: eventos

 

Retorno: WebServiceMessageArray [].

createSimpleCardIndexWithDataset

Criação simples de um formulário com datasets.

 

Método:

createSimpleCardIndexWithDataset (String user, String password, int companyId, int parentDocumentId, String publisherId, String documentDescription, String cardDescription, String datasetName, AttachmentArray attachments, CardEventDtoArray customEvents)

 

Parâmetros:

  • user: login do colaborador;
  • password: senha do colaborador;
  • companyId: código da empresa;
  • parentDocumentId: numero do formulário.
  • publisherId: código do autor
  • documentDescription: descrição
  • cardDescription: nome
  • descriptionField: descrição
  • dataset: nome do dataset
  • attachments: arquivo anexo
  • customEvents: eventos

 

Retorno: WebServiceMessageArray [].

createSimpleCardIndexWithDatasetPersisteType

Criação simples de um formulário com datasets determinando o tipo da persistência (Ficha ou Lista).

 

createSimpleCardIndexWithDatasetPersisteType (String user, String password, int companyId, int parentDocumentId, String publisherId, String documentDescription, String cardDescription, String datasetName, AttachmentArray attachments, CardEventDtoArray customEvents, Integer persistenceType)

 

Parâmetros:

  • user: login do colaborador;
  • password: senha do colaborador;
  • companyId: código da empresa;
  • parentDocumentId: numero do formulário.
  • publisherId: código do autor
  • documentDescription: descrição
  • cardDescription: nome
  • descriptionField: descrição
  • dataset: nome do dataset
  • attachments: arquivo anexo
  • customEvents: eventos
  • persistenceType: tipo da persistência que será utilizada.

 

Retorno: WebServiceMessageArray [].

getActiveCardIndex

Retorna o formulário ativo.

 

Método:

getActiveCardIndex (String user, String password, int companyId, int documentId, String colleagueId)

 

Parâmetros:

  • user: login do colaborador;
  • password: senha do colaborador;
  • companyId: código da empresa;
  • documentId: número do formulário.
  • colleagueId: número do usuário.

 

Retorno: DocumentDtoArray [].

getAttachmentsList

Retorna a lista de anexos do formulário.

 

Método:

getAttachmentsList (String user, String password, int companyId, int documentId)

 

Parâmetros:

  • user: login do colaborador;
  • password: senha do colaborador;
  • companyId: código da empresa;
  • documentId: numero do formulário.

 

Retorno: StringArray [].

getCardIndexContent

Retorna o conteúdo de um formulário.

 

Método:

getCardIndexContent (String user, String password, int companyId, int documentId, String colleagueId, int version, String nomeArquivo)

 

Parâmetros:

  • user: login do colaborador;
  • password: senha do colaborador;
  • companyId: código da empresa;
  • documentId: numero do formulário.
  • colleagueId : matrícula do colaborador para a verificação de permissão nos formulário.
  •  version: número da versão do formulário.
  • nomeArquivo: nome do arquivo anexo

 

Retorno: byte[].

getCardIndexesWithoutApprover

Retorna os fichários sem aprovadores que o colaborador tenha permissão.

 

Método:

getCardIndexesWithoutApprover(String user, String password, int companyId, String colleagueId)

 

Parâmetros:

  • user: login do colaborador;
  • password: senha do colaborador;
  • companyId: código da empresa;
  • colleagueId : matrícula do colaborador para a verificação de permissão nos fichários.

 

Retorno: DocumentDto[].

getCustomizationEvents

Retorna os eventos do formulário.

 

Método:

getCustomizationEvents (String user, String password, int companyId, int documentId)

 

Parâmetros:

  • user: login do colaborador;
  • password: senha do colaborador;
  • companyId: código da empresa;
  • documentId: numero do formulário.

 

Retorno: CardEventDtoArray [].

getFormFields

Retorna os campos do formulário.

 

Método:

getFormFields(String user, String password, int companyId, int documentId)

 

Parâmetros:

  • user: login do colaborador;
  • password: senha do colaborador;
  • companyId: código da empresa;
  • documentId: numero do formulário.

 

Retorno: String[].

updateSimpleCardIndex

Atualização simples do formulário.

 

Método:

updateSimpleCardIndex (String user, String password, int companyId, int documentId, String publisherId, String cardDescription, String descriptionField, AttachmentArray attachments, CardEventDtoArray customEvents)

 

Parâmetros:

  • user: login do colaborador;
  • password: senha do colaborador;
  • companyId: código da empresa;
  • documentId: numero do formulário.
  • publisherId: código do autor
  • cardDescription: nome
  • descriptionField: descrição
  • attachments: arquivo anexo
  • customEvents: eventos

 

Retorno: WebServiceMessageArray [].

updateSimpleCardIndexWithDataset

Atualização simples do formulário com datasets.

 

Método:

updateSimpleCardIndexWithDataset (String user, String password, int companyId, int documentId, String publisherId, String cardDescription, String descriptionField, String datasetName, AttachmentArray attachments, CardEventDtoArray customEvents)

 

Parâmetros:

  • user: login do colaborador;
  • password: senha do colaborador;
  • companyId: código da empresa;
  • documentId: numero do formulário.
  • publisherId: código do autor
  • cardDescription: nome
  • descriptionField: descrição
  • datasetName: nome do dataset
  • attachments: arquivo anexo
  • customEvents: eventos

 

Retorno: WebServiceMessageArray [].