Olá,
Preciso ler um xml através de uma url (Ex. http://nada_server.nada.com.br/servico/arquivo.xml).
Já tentei usar vários exemplos que encontrei aqui no forum mas não obtive sucesso, sempre tomo o seguinte erro:
java.net.ConnectException: Operation timed out: connect
void java.net.PlainSocketImpl.socketConnect(java.net.InetAddress, int)
native code
void java.net.PlainSocketImpl.doConnect(java.net.InetAddress, int)
PlainSocketImpl.java:355
Alguma sugestão? Qual classe devo usar… No meu ultimo teste usei o seguinte código:
URL url;
url=new URL(“http://nada_server.nada.com.br/servico/arquivo.xml”);
URLConnection uc = url.openConnection();
DataInputStream input = new DataInputStream(uc.getInputStream());
Obs. Minha url não possui "www’, isso implica em alguma coisa?
passos
#2
Tenta isso:
private String loadUrl(String host) throws Exception {
System.out.println("Opening " + host);
StringBuffer sb = new StringBuffer();
URL url = new URL(host);
URLConnection conn = url.openConnection();
InputStream is = conn.getInputStream();
byte[] b = new byte[4096];
int c = 0;
while ((c = is.read(b)) != -1) {
sb.append(new String(b, 0, c));
}
is.close();
return sb.toString();
}
O http://jakarta.apache.org/commons/httpclient pode lhe ser muito util tambem.
Rafael
[quote=Rafael Steil]Tenta isso:
private String loadUrl(String host) throws Exception {
System.out.println("Opening " + host);
StringBuffer sb = new StringBuffer();
URL url = new URL(host);
URLConnection conn = url.openConnection();
InputStream is = conn.getInputStream();
byte[] b = new byte[4096];
int c = 0;
while ((c = is.read(b)) != -1) {
sb.append(new String(b, 0, c));
}
is.close();
return sb.toString();
}
O http://jakarta.apache.org/commons/httpclient pode lhe ser muito util tambem.
Rafael[/quote]
Não seria mais fácil usar um BufferedInputStream e ler linha por linha?