Pessoal bele.
Estou com o seguinte problema, pensei que seria fácil de resolver mas está me quebrando a cabeça: Preciso me conectar a um site pegar o código html, alimentar com os dados que desejo e retornar a mesma para o servidor de origem. Alguém sabe uma forma prática de fazer isso?
Com a classe URLConnectio vc deve fazer uma conexao a pagina que vc quer, depois vc tera que baixar a pagina como se vc um txt com o inputStreeam que essa classe retorna.Ate aqui e de boa o codigo.
Depois vc vai alterar esse arquivo como quiser…
A parte que eu naum sei e como enviar de volta ao servidor.
Uma ideia seria usar socktes mas eu nunca tentei, mas se eu naum estiver enganado tem um metodo de envio de dados para o servidor, so tem um problema vc preicsa de dados do servidor oq naum eh muito facil…
Se vc precisar do codigo da primeira parte e soh pedir q eu posto depois blz!!
Falow!!!
Preciso sim cara, se vc puder postar pra mim agradeço muito.
Valeu
Para enviar os dados de volta, se for usar POST, use a mesma URLConnection que você usou para puxar os dados.
Sempre procure aqui ( http://www.javaalmanac.com ) para exemplos de código.
Veja os links que estão nesta página, acho que dá para fazer bastante coisa com eles.
http://www.javaalmanac.com/cgi-bin/search/find.pl?words=urlconnection
Bele.
Valeu mesmo pelas dicas cara, agora vou estudar estes exemplos e ver o que consigo.
Falou.
Gilberto
[code] import java.io.;
import java.net.;
import java.util.*;
/**
- @author Felipe Lutz
*/
public class Hora {
private String dia="";
private URL url;
private InputStream buffer;
private String hora;
private String tam;
private String retorno;
private String mes="",ano="";
public Hora () throws IOException
{
url= new URL("http://pcdsh01.on.br/ispy.asp");
HttpURLConnection uc = (HttpURLConnection) url.openConnection();
InputStream texto=uc.getInputStream();
buffer= new BufferedInputStream(texto);
PegaHoranaPagina(texto);
uc.disconnect();
}
public void PegaHoranaPagina(InputStream is)
{
try
{
BufferedReader in = new BufferedReader(new InputStreamReader(is));
String inputLine = "";
while ((inputLine = in.readLine()) != null) // imprime linha por linha do código
{
if(inputLine.endsWith("</td>"))
{
tam=inputLine; }
}
in.close();
setFormataHora(tam);
setFormataDiaMesAno(tam);
//System.out.println(tam);
}
catch(IOException e)
{
System.out.println("Erro na impressao da pagina");
e.printStackTrace();
}
}
[/code]
Foi mals a demora :oops:
Mas ta ai uma pequena ajuda.
Os metodos eu naum posso te passar 8)
Mas com isso ja da pra fazer as alterações, como eu te disse depois vc transforma o inputstream em .txt e manipula por la, ou pelos meotodo(assim fica dinamico)
Boa sorte!!!
Bele cara.
Valeu mesmo pela dica, o projeto já está encaminhando.
Eu encontrei uma api muito louca para fazer o que eu preciso, é a JDIC que faz parte de um projeto da SUN e da comunidade open-source para criar uma forma de integração mais fácil do java com o sistema hospedeiro. Nesta api tem uma classe que emula o navegador padrão do sistema e eu posso faze o mesmo rodar de dentro de minha aplicação.
Além disso esta classe me permite injetar javascript nas páginas, com isso eu posso preencher os parâmetros de forma mais simples.
OBS: encontrei um novo problema, uma das páginas a qual eu me conecto tem um input do tipo “file” e por segurança o navegador desconsidera qualquer valor que eu passe para este input via código. Com os navegadores Mozzila e Netscape eu consigo via javascript pedir permissão de leitura e manipulação de arquivos, mas com o internt explorer ainda não consegui encontrar uma forma de solicitar permissões de leitura dos arquivos locais. Se vcs conhecerem uma forma de fazê-lo por favor dêem-me uma ajuda.
Valeu
Gilberto.
Cara agora vc me pegou :oops:
Essa parte eu naum sei mais te ajudar…
Mas essa api ta no site da sun???
Falow ate mais…
Bele cara.
Dá uma olhada neste site:https://jdic.dev.java.net/, lá vc vai encontrar mais informações sobre a api além de algums exemplos.
Valeu
Gilberto