Dada a seguinte situação, devo implementar a solução com WebServices?

2 respostas
R

Pessoal, seguinte… eu comecei uma discussão em uma thread (anexo I) mas pensava que a preocupação que eu precisaria ter era apenas com a solicitação… mas só agora percebi que o meu caso requer uma preocupação também na resposta da URL.

Nunca trabalhei com WebServices (se o fiz foi sem saber que era, sem usar nenhum framework específico e tal rs), mas acho que meu problema seria melhor solucionado com a idéia de WebServices.

Vejam, na íntegra (mas ainda abstraindo alguns detalhes irrelevantes), qual é o meu problema:

  • Tenho uma aplicação rodando em Java Web.
  • Para um pequeno subconjunto de operações é necessário fazer uma autenticação que, por alguns motivos, precisa ser feita em um programa (uma única página) escrito em ASP.
  • Para evitar que algum usuário sobrecarregue o servidor (enviando muitas solicitações) e para que ele não tenha acesso aos dados de segurança que o programa em ASP retorna, o programa em ASP só pode responder a solicitações feitas pela minha aplicação Java.
  • Para as operações que requerem esse tipo de autenticação serem realizadas tenho que garantir que o código ASP tenha autenticado o usuário, ou seja, tenho que garantir que as solicitações a tais operações tenham passado pelo programa ASP.

Assim sendo, o que estou precisando é que a aplicação em ASP só possa ser chamada a partir da minha aplicação Java e a aplicação Java só possa operar após a autenticação em ASP. O flxuo seria mais ou menos assim:

  1. Cliente solicita operação restrita na aplicação Java
  2. Aplicação Java solicita autenticação na aplicação ASP (o uso dessa segunda aplicação deve ser transparente para o cliente… ele deve pensar que está usando apenas a aplicação Java)
  3. Aplicação ASP confirma autenticação
  4. Aplicação Java só continua a operação se o passo 3 foi realizado.

A comunicação de Java para ASP pode ser feita como foi discutido entre mim e o peron na thread. Mas tudo foi implementado sem ajuda de nada de segurança. Porém, ainda ficaria faltando fazer a comunicação ASP para Java.

Como está havendo essa necessidade de abrir-se uma transação que envolve comunicação entre dois programas, cada um escrito em linguagens diferentes e rodando em ambientes diferentes, pelo super básico que entendo de WebServices acho que a solução sairia por aí.

Mas antes de começar a pesquisar sobre WebServices, gostaria da opinião de vocês para dizerem se é a única solução ou se tem alguma coisa mais simples de fazer sem a necessidade de alguma “gambiarra”.

anexo I: Caso alguém queira acompanhar a discussão desde o início, segue a thread: http://www.guj.com.br/posts/list/67792.java

2 Respostas

peron

Já que é uma interação mesmo, porque nao usa CORBA?

Exemplo para JAVA

Exemplo para VB (ASP é VBScript)

Quando você quiser interligar linguagens sem gambiarras, use CORBA :slight_smile:

Edit: existem inúmeras outras, como SOAP, RMI(? [rmi suponho que dê]).

sds

Luca

Olá

Eu não usaria uma moto niveladora para matar barata.

Se não desse para fazer um web service em REST, adotaria XML-RPC.

http://aspxmlrpc.sourceforge.net/

http://ws.apache.org/xmlrpc/

[]s
Luca

Criado 27 de agosto de 2007
Ultima resposta 27 de ago. de 2007
Respostas 2
Participantes 3