sql >> Base de Datos >  >> NoSQL >> MongoDB

hechizo de tenencia múltiple mongodb con @Document

Finalmente descubrí por qué estaba teniendo este problema.

Al usar la inicialización de Servlet 3, asegúrese de agregar el contexto de la aplicación al contexto mongo de la siguiente manera

    @Autowired
private ApplicationContext appContext;

public MongoDbFactory mongoDbFactory() throws UnknownHostException {
    return new SimpleMongoDbFactory(new MongoClient("localhost"), "apollo-mongodb");
}

@Bean
MongoTemplate mongoTemplate() throws UnknownHostException {
    final MongoDbFactory factory = mongoDbFactory();

    final MongoMappingContext mongoMappingContext = new MongoMappingContext();
    mongoMappingContext.setApplicationContext(appContext);

    // Learned from web, prevents Spring from including the _class attribute
    final MappingMongoConverter converter = new MappingMongoConverter(factory, mongoMappingContext);
    converter.setTypeMapper(new DefaultMongoTypeMapper(null));

    return new MongoTemplate(factory, converter);
}

Compruebe el cableado automático del contexto y también mongoMappingContext.setApplicationContext(appContext);

Con estas dos líneas pude conectar el componente correctamente para usarlo en modo multiinquilino