WebServices

4 respostas
S

Boa tarde,
Estou precisando de ajuda com uma aplicação, desktop - local, que se comunica com um servidor web via webservice, ou seja, faço um requisição via post ao servidor, paginas php, e uso a resposta para exibir alguns dados ao usuário.
Essa aplicação tem que ser local pois necessito acesso ao clip board e a portas do pc do cliente, cheguei a tentar isso com applets assinados, mas, sem exito.
Meu problema é que o usuário tem que primeiramente fazer um login, que é autenticado no servidor web, logo após o login todas as outras funções da aplicação dependem de que a sessão que foi aberta, com aquele login, seja a mesma que fará as proximas requisições.
Não sei como fazer isso toda vez que abro uma nova conexão, para uma nova consulta, é aberta uma nova sessão e os dados do login são perdidos.
Alguem tem alguma solução?
Muito obrigado.

4 Respostas

robson.simonassi

Olá

Cria um JAR CLIENT do WEBSERVICE e disponibiliza no projeto DESK.

S

robson.simonassi:
Olá

Cria um JAR CLIENT do WEBSERVICE e disponibiliza no projeto DESK.


Putz cara, não entendi bem sua sugestão, da para explicar?
Muito obrigado pela ajuda.

robson.simonassi

Explica com mais detalhes este projeto WEBSERVICE para nos entendermos. Com que ele é feito e como ele foi feito etc…

S

Então ainda não esta feito comecei agora, e me deparei com esse problema.
Seguinte, no primeiro passo, o login do usuario: tenho uma pagina php no servidor web chamada login, a aplicação desktop faz um requiseção para ela, usando post. O codigo da pag. php procura aquele usuario e senha passados via post no DB, se encontrar ela retorna “1” e abre uma sessão, no servidor web, para aquele usuário com as permissões que ele possui, a aplicação desktop da acesso para o usuário a uma tela de consultas; caso não encontre aquela combinação usuário/senha ela retorna “0” e para ai.
O problema começa qnd vou fazer a primeira consulta, pq as permissões daquele usuário, por exemplo alguma que indique que ele pode fazer consultas, estão gravadas na sessão que ele abriu e que se perdeu, não sei bem em que ponto. Fora isso usuário não logado não tem acesso a nada no sistema, só a pagina de login.
Segue o código que uso para fazer o post:

public POST(String link, ArrayList data){
        this.echo = "";
        try {
            // Send data
            URL url = new URL(link);
            URLConnection conn = url.openConnection();
            conn.setDoOutput(true);
            OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream());
            wr.write(retriveDados(data));
            wr.flush();

            // Get the response
            BufferedReader rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
            String line = null;
            while ((line = rd.readLine()) != null) {
                System.out.print(line);
                this.echo = line;
            }
            wr.close();
            rd.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

Obrigado

Criado 28 de janeiro de 2011
Ultima resposta 28 de jan. de 2011
Respostas 4
Participantes 2