问题
I am trying to use spring xd to ingest text/xml responses from a web service using HTTP/1.1 protocol. The goal is to convert the xml response to json and insert into mongodb. But right now I am unable to get any responses from the stream. I want to do this programatically rather than in the shell, below is my code
public static void main(String[] args) {
SpringXDTemplate template = null;
try {
template = new SpringXDTemplate(new URI("http://localhost:9393"));
} catch (URISyntaxException e) {
e.printStackTrace();
}
String name = "test";
String definition = "time --fixedDelay=5 | http-client --url='''http://www.ctabustracker.com/bustime/api/v2/getvehicles?key=key&vid=1''' | file";
template.streamOperations().destroy(name);
template.streamOperations().createStream(name, definition, true);
}
I'm expecting to find the responses written to C:\tmp\xd\output\test.out but no file was created. I see that the stream was created in the admin ui, I'm not seeing any exceptions. How do I obtain the responses from sending requests to this url?
回答1:
Turn on DEBUG logging; you should see the time source emit a message every 5 seconds; follow the messages through the flow to figure out what's going wrong.
来源:https://stackoverflow.com/questions/33178407/spring-xd-stream-web-service-responses