Consumindo WebService Rest autenticado por cookies, através de Dataset

Problema:

Como faço para me manter autenticado dentro do dataset do Fluig?

Detalhes:

Estou trabalhando com um formulário do Fluig, neste formulário necessário que o Fluig busque de um ERP os dados de clientes através do CPF dele.

Primeiramente eu cadastrei um serviço no Fluig. Com o serviço cadastrado, foi criado um Dataset que realiza duas chamadas à este serviço: - Chamada 1: No método de Login. Em: /resources/login?username=super&password=super - Chamada 2: Na busca do Cliente. Em: /resources/clientes?search=123456789012&page......

Caso eu acessa a URL de login via browser, ele retorna um token e cria um cookie na sessão. Com isso ele se mantem autenticado e na segunda chamada ele retorna um JSON com os dados do cliente.

No Dataset do Fluig não estou conseguindo me manter autenticado. Como o ERP utiliza o JBoss4, até onde sei, não é possível utilizar da autenticação OAuth, Tentei realizar a autenticação Basic, mas também não é contemplada pelo webservice. Logo o que resta é me manter autenticado pelos cookies/sessão. Porém, por mais que eu consiga realizar o login, eu não consigo na segunda chamada passar o token ou o cookie.

compartilhar
  • Você deve fazer essa consulta utilizando o Web Service SOAP de Dataset, que precisa de credenciais de admin para acesso a dados: http://lab.fluig.com/webdesk/ECMDatasetService?wsdl Utilizar cookies/sessão não é uma boa saída porque você vai depender do tempo de expiração desses componentes.

    Peter Angelo   20 de Dec de 2018
  • Mas o meu problema não está em consumir o dataset. A comunicação Fuig <-> Dataset ocorre normalmente

    Meu problema é a comunicação Dataset <-> ERP. Onde eu tenho apenas um web-service Rest que exige o cookie/sessão para autenticação

    Carlos A. Armiliato   20 de Dec de 2018
  • Oi Carlos, eu nunca passei por esse cenário, mas por acaso tu tentou fazer o consumo via HTTP mesmo? Puro do JAVA com url connection e etc? Usando os métodos padrão do JAVA você consegue setar qualquer HEADER na conexão http. Talvez consiga passar o cookie assim.

    Rafael Vanat   20 de Dec de 2018
  • Rafael, o Dataset do Fluig aceita código Java nativo? Não faz muito tempo que estou desenvolvendo com o Fluig, então não sabia disso. Porém, se ele aceita, acredito que consigo resolver meu problema desta forma

    Carlos A. Armiliato   20 de Dec de 2018
  • Roda a engine de Script Rhino, não é 100% como no JAVA, por exemplo as variáveis não são tipadas. Você faria (por exemplo) só um var conn = new java.net.URLConnection(url). Mas estando a classe no classpath carregado você consegue usar, você usa ela com o nome completo (pacote + classe). Como orientação geral, certifique-se sempre de fechar conexões e stream, e nunca use threads.

    Rafael Vanat   20 de Dec de 2018
Mostrar todos os 8 comentários>
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do fluig Forum!

0 resposta

Não é a resposta que estava procurando? Procure outras perguntas com as tags datasets webservice rest autenticacao ou faça a sua própria pergunta.