public void process(Exchange exchange) throws ParseException { InputReportIncident webincident = (InputReportIncident) exchange.getIn().getBody(); LOG.debug( "Incident received from : " + webincident.getFamilyName() + ", " + webincident.getGivenName()); LOG.debug( "Incident info : " + webincident.getIncidentId() + ", at : " + webincident.getIncidentDate()); LOG.debug( "Incident details : " + webincident.getDetails() + ", summary : " + webincident.getSummary()); List<Map<String, Incident>> models = new ArrayList<Map<String, Incident>>(); Map<String, Incident> model = new HashMap<String, Incident>(); // Convert the InputReportIncident into an Incident Incident incident = new Incident(); DateFormat format = new SimpleDateFormat("dd-mm-yyyy"); incident.setIncidentDate(format.parse(webincident.getIncidentDate())); incident.setDetails(webincident.getDetails()); incident.setEmail(webincident.getEmail()); incident.setFamilyName(webincident.getFamilyName()); incident.setGivenName(webincident.getGivenName()); incident.setIncidentRef(webincident.getIncidentId()); incident.setPhone(webincident.getPhone()); incident.setSummary(webincident.getSummary()); // Get Header origin from message String origin = (String) exchange.getIn().getHeader("origin"); // Specify current Date format = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss"); String currentDate = format.format(new Date()); Date creationDate = format.parse(currentDate); incident.setCreationDate(creationDate); incident.setCreationUser(origin); LOG.debug("Incident created from web service : " + incident.toString()); // and place it in a model (cfr camel-bindy) model.put(Incident.class.getName(), incident); models.add(model); // replace with our input exchange.getOut().setBody(models); // propagate the header exchange.getOut().setHeader("origin", origin); }