Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

197
Vistas
¿Se puede usar la búsqueda de texto completo de MongoDB con Spring Data REST?

Empecé a jugar con Spring Data Rest y quería exponer un buscador para un campo que es texto indexado en MongoDB. Tengo la siguiente definición de índice:

 @TextIndexed private String title;

y verificó que se crea el índice. He creado un método de búsqueda en la definición del repositorio:

 public interface ContentRespository extends MongoRepository<Content, String> { public Page<Content> findByTitle(@Param("title") TextCriteria title, @Param("pageable") Pageable pageable); }

Llamando a la URL de la API REST:

 http://localhost:8080/contents/search/findByTitle?title=test

Obtuve el siguiente error:

 2017-01-19 13:16:41.831 ERROR 16705 --- [nio-8080-exec-9] oaccC[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.data.repository.support.QueryMethodParameterConversionException: Failed to convert test into org.springframework.data.mongodb.core.query.TextCriteria!] with root cause org.springframework.core.convert.ConverterNotFoundException: No converter found capable of converting from type [java.lang.String] to type [@org.springframework.data.repository.query.Param org.springframework.data.mongodb.core.query.TextCriteria] at org.springframework.core.convert.support.GenericConversionService.handleConverterNotFound(GenericConversionService.java:324) ~[spring-core-4.3.4.RELEASE.jar:4.3.4.RELEASE] ....

¿Cuál sería la forma correcta de llamar a la API REST? No puedo encontrar ninguna documentación al respecto. ¿O cómo sería posible escribir un convertidor para TextCriteria?

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Después de un tiempo volví a esto y encontré la respuesta definiendo un buscador con una notación @Query:

 @Query("{$text: {$search: ?0}}") public Page<Content> findByTitle(@Param("title") String title, @Param("pageable") Pageable pageable);
over 4 years ago · Santiago Trujillo Denunciar

0

No está relacionado con mongo, pero Spring Rest le dice que no puede convertir la cadena entrante (de su solicitud web) en un parámetro de método expuesto. Tiene 2 opciones: crear y registrar el convertidor o el método de ajuste en cuestión y convertir las cadenas a los tipos requeridos usted mismo

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda