¿Cómo enviar una imagen recuperada de Mongo usando GridFS en Spring Rest Call?
He recuperado la imagen de Mongo DB usando Spring Data y GridFs Template
así que no sé cómo devolver ese flujo de entrada recuperado al usuario.
Digamos que solicitaron elhttp://host.com/apple
como unllamada de descanso de primavera . Ahora mi solicitud procesa la solicitud usando el nombreapple
recupera la imagen de la manzana de una base de datos mongodb. Ahora, sin guardar en ningún lugar, quiero mostrar la respuesta como una imagen para el usuario que mostraráhttp://host.com/apple
imagen en el navegador. ¿Cómo exactamente necesito implementar esto?
¿Podría compartir algún repositorio de código para procesar la solicitud de imagen en Rest Call?
Controller Code
@RestController
public class GreetingController {
@RequestMapping("/image")
public GridFSDBFile imageReponse() {
App.getImage();
return App.getImageResponse();
}
}
Esta función buscará la imagen del mongodb
public static GridFSDBFile getImageResponse() {
try {
ApplicationContext context = new FileSystemXmlApplicationContext(
"file:C:\\workspace\\gs-rest-service-complete\\spring-config.xml");
FileStorageDao fileStorageDao = (FileStorageDao) context
.getBean("fileStorageDao");
GridFSDBFile retrive = fileStorageDao.retrive("audi.jpg");
return retrive;
} catch (Exception e) {
System.out.println("IOException:-" + e.getMessage());
} finally {
System.out.println("Clean up herer:-");
}
return null;
}
Error
Whitelabel Error Page
This application has no explicit mapping for /error, so you are seeing this as a fallback.
Fri Sep 04 17:21:05 IST 2015
There was an unexpected error (type=Internal Server Error, status=500).
Could not write content: No serializer found for class com.mongodb.gridfs.GridFSDBFile$MyInputStream and no properties discovered to create BeanSerializer (to avoid exception, disable SerializationFeature.FAIL_ON_EMPTY_BEANS) ) (through reference chain: com.mongodb.gridfs.GridFSDBFile["inputStream"]); nested exception is com.fasterxml.jackson.databind.JsonMappingException: No serializer found for class com.mongodb.gridfs.GridFSDBFile$MyInputStream and no properties discovered to create BeanSerializer (to avoid exception, disable SerializationFeature.FAIL_ON_EMPTY_BEANS) ) (through reference chain: com.mongodb.gridfs.GridFSDBFile["inputStream"])