+9 votos
200 visitas
Estamos implementando uma integração entre o sistema Benner e o sistema SAP. A integração será feita através de Web Service. Estamos considerando utilizar o Web Service de Integração.

A dúvida neste caso fica por conta se este tipo de integração realiza o login através de sessão, ou deverá ser utilizado um ID "Token" para validar o mesmo. Se for através de sessão, esta integração possui um tempo em que o login expira, ou cada chamada ao Web Service exige que seja realizado novo login?

Além disso, o outro sistema irá consumir este Web Service utilizando Java. Isso é possível?

(Dúvida enviada pelo Willian da MetalSystem por e-mail)
por (150 pontos) | 200 visitas

1 Resposta

+7 votos
Melhor resposta

O serviço de integração é genérico. Ele não é ideal para integrações entre sistemas porque não é auto explicativo e exige conhecimento sobre as tabelas (entranhas) do sistema Benner. O ideal é um serviço de mais alto nível. Você pode construir este serviço no Visual Studio. Temos algumas bibliotecas (ESL) que vão te auxiliar:

http://wiki.benner.com.br/wiki/index.php?title=Categoria%3AServi%C3%A7os_-_WES

 

Mas o serviço de integração pode ser utilizado. Ele funciona e vai continuar sendo mantido. Respondendo suas dúvidas:

  • O Login é feito utilizando sessão de ASP.NET;
  • Ele expira no tempo de sessão configurado no web.config do aplicativo. O padrão é 20 minutos;
  • O correto é utilizar a mesma sessão entre as requisições. Se isto não for feito, a memória do Web Server vai subir por causa das sessões pendentes;
  • Para manter a sessão entre as requisições é necessário utilizar um cookie container no .NET, como está no exemplo:
  • http://wiki.benner.com.br/wiki/index.php?title=Web_Service_de_Integra%C3%A7%C3%A3o
  • Em Java também é possível guardar o cookie de sessão e enviar este cookie em cada requisição. O segredo é utilizar SESSION_MAINTAIN_PROPERTY. Incluí um exemplo de cliente em Java na documentação acima.

 

Utiliando o ESL já é possível utilizar o Authentication Service, uma solução baseada em tokens, compatível com o padrão OAuth 2.0
Além disso com o ESL não tem mais estado no servidor (stateless) evitando a necessidade de afinidade de sessão. 
por (183 pontos)
selecionada por
Melhores Aug 2025
    200 pontos
    Melhores 2025 Jul 28 - Aug 03
    1. Larson

      156 Pontos

    2. danilo.pereira

      96 Pontos

    3. danilo.pereira

      96 Pontos

    4. danilo.pereira

      96 Pontos

    5. luciano.fronza

      61 Pontos

    6. luciano.fronza

      61 Pontos

    7. luciano.fronza

      61 Pontos

    8. diuari.molinari

      52 Pontos

    9. diuari.molinari

      51 Pontos

    10. diuari.molinari

      51 Pontos

    517 perguntas
    566 respostas
    389 comentários
    704 usuários