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.
Olá
Cria um JAR CLIENT do WEBSERVICE e disponibiliza no projeto DESK.
[quote=robson.simonassi]Olá
Cria um JAR CLIENT do WEBSERVICE e disponibiliza no projeto DESK. [/quote]
Putz cara, não entendi bem sua sugestão, da para explicar?
Muito obrigado pela ajuda.
Explica com mais detalhes este projeto WEBSERVICE para nos entendermos. Com que ele é feito e como ele foi feito etc…
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