Recebendo xml de WebService - VRAPTOR

Ola pessoal, estou tentando receber um xml que vem de um web service de outro sistema em um projeto vraptor.

No meu caso o web service me tras uma lista de especialidades, portanto eu tenho que pegar ela e por em uma lista de especialidades e retornar a lista, estou tentando fazer dessa forma:

[code] public List getEspecialidadeWebService(){
List especialidades = new ArrayList();
try {
XStream xStream = new XStream(new Dom4JDriver());
xStream.fromXML(“http://localhost:8081/webservice/getEspecialidades”);
xStream.alias(“especialidades”, ArrayList.class);
xStream.processAnnotations(Especialidade.class);

		BufferedReader input = new BufferedReader(new FileReader("especialidades.xml"));
		ArrayList<Especialidade> especialidadesXml = (ArrayList<Especialidade>) xStream.fromXML(input);
		input.close();
		
		for(Especialidade e : especialidadesXml){
			especialidades.add(e);
		}
		 
	} catch (Exception e) {
	}
	return especialidades;
}[/code]

Alguem tem alguma ideia por ai?

se vc passa uma string pro fromXML ele espera que a string seja um XML, ele não vai perceber mágicamente que vc quer fazer uma requisição pra isso.

Solução simples pra isso é trocar a linha por:

xStream.fromXML(new URL("http://localhost:8081/webservice/getEspecialidades").openStream());

o ideal é usar alguma biblioteca http client, como o apache-http-client

e mais: cuidado com catch (Exception e) {} vazios…

os erros são importantes pra saber o que está acontecendo :wink: