Я загрузил свое веб-приложение в Heroku, и у меня есть надстройка под названием «MongoLab». Я положил полномочия MongoLab в мой файл Spring XML, и когда я запускаю его, я получаю сообщение об ошибке:Ошибка аутентификации MongoLab
{"message":"Failed to authenticate to database [heroku_c82w85xw], username = [heroku_c82w85xw], password = [k************************c]","code":"org.springframework.data.mongodb.CannotGetMongoDbConnectionException
Так я и сделал файл конфигурации Java, который содержит учетные данные, но я все еще получаю ту же ошибку. Я пробовал несколько недель, но я все равно получаю ту же ошибку. Ниже приведены мои файлы конфигурации Spring XML и Java.
Spring XML File:
<mongo:mongo id="mongo" host="ds055575.mongolab.com" port="55575"/>
<mongo:db-factory
id="mongoDbFactory"
host="ds055575.mongolab.com"
port="55575"
username="heroku_c82w85xw"
password="XXX"
dbname="heroku_c82w85xw"
mongo-ref="mongo"/>
<bean id="anotherMongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate">
<constructor-arg name="mongoDbFactory" ref="mongoDbFactory" />
</bean>
<bean id="userDaoImpl" class="service.UserDaoImpl">
<constructor-arg name="mongoOps" ref="anotherMongoTemplate" />
</bean>
<bean id="userService" class="service.UserService">
<property name="userDaoImpl" ref="userDaoImpl" />
</bean>
Конфигурация Java Файл:
@Configuration
public class JavaConfig {
public MongoClient getDB() {
String uri = "mongodb://heroku_c82w85xw:XXX"
+ "@ds055575.mongolab.com:55575/heroku_c82w85xw?authMechanism=SCRAM-SHA-1";
MongoClientURI mongoURI = new MongoClientURI(uri);
MongoClient client = null;
try {
client = new MongoClient(mongoURI);
} catch (Exception e) {
e.printStackTrace();
}
return client;
}
}
Может кто-то пожалуйста, помогите мне с этой ошибкой? Заранее спасибо.
Вы еще не решили эту проблему? Я встретил ту же проблему, а также пробовал в течение нескольких дней. Если вы решили эту проблему, напишите свой ответ ниже вашего вопроса. Большое спасибо! –
Я решил. Я также должен был поместить свои учетные данные в свой конструктор DAO, чтобы иметь возможность применять CRUD (создавать, читать, обновлять и удалять) в базе данных. В противном случае он скажет «Не удалось аутентифицировать». – Jay