Mongodb Multi Tenacy Spel mit @Document

Das hängt zusammen mitMongoDB- und SpEL-Ausdrücke in @ Document-Anmerkungen

Auf diese Weise erstelle ich meine Mongo-Vorlage

@Bean
public MongoDbFactory mongoDbFactory() throws UnknownHostException {
    String dbname = getCustid();
    return new SimpleMongoDbFactory(new MongoClient("localhost"), "mydb");
}

@Bean
MongoTemplate mongoTemplate() throws UnknownHostException {
    MappingMongoConverter converter = 
            new MappingMongoConverter(mongoDbFactory(), new MongoMappingContext());
    return new MongoTemplate(mongoDbFactory(), converter);
}

Ich habe eine Mieterklasse

@Component("tenantProvider")
public class TenantProvider {

    public String getTenantId() {
      --custome Thread local logic for getting a name
    }
}

Und meine Domainklasse

    @Document(collection = "#{@tenantProvider.getTenantId()}_device")
     public class Device {
    -- my fields here
    }

Wie Sie sehen, habe ich mein Mongotemplate wie im Beitrag angegeben erstellt, aber es wird weiterhin der folgende Fehler angezeigt

Ausnahme im Thread "main" org.springframework.expression.spel.SpelEvaluationException: EL1057E: (pos 1): Es wurde kein Bean-Resolver im Kontext registriert, um den Zugriff auf das Bean 'tenantProvider' aufzulösen.

Was mache ich falsch?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage