Reputation: 23
I gave role for DB purp is UserAdmin,I run server with mongod --auth --dbpath c:\mongodb\data\db
.
First I done a java file in eclipse to connect DB,it worked properly.
After I create and run the below file in eclipse:
try {
MongoClient mongoClient = new MongoClient("localhost", 27017);
DB db = mongoClient.getDB("purplista");
boolean auth =db.authenticate("purp","123".toCharArray());
System.out.println("Connect to database successfully");
DBCollection doc = db.getCollection("test");
System.out.println("Collection test selected successfully..");
DBCursor cursor = doc.find();
while (cursor.hasNext()) {
System.out.println(cursor.next());
}
} catch (Exception e) {
e.printStackTrace();
}
got error like this:
Connect to database successfully..
Collection test selected successfully..
com.mongodb.MongoException: not authorized for query on purplista.test at com.mongodb.QueryResultIterator.throwOnQueryFailure(QueryResultIterator.java:214) at com.mongodb.QueryResultIterator.init(QueryResultIterator.java:198) at com.mongodb.QueryResultIterator.initFromQueryResponse(QueryResultIterator.java:176) at com.mongodb.QueryResultIterator.(QueryResultIterator.java:64) at com.mongodb.DBCollectionImpl.find(DBCollectionImpl.java:80) at com.mongodb.DBCollectionImpl.find(DBCollectionImpl.java:61) at com.mongodb.DBCursor._check(DBCursor.java:458) at com.mongodb.DBCursor._hasNext(DBCursor.java:546) at com.mongodb.DBCursor.hasNext(DBCursor.java:571) at purplista.FindDoc.main(FindDoc.java:34)
Upvotes: 2
Views: 5852
Reputation: 720
A couple of issues I see are:
A few things to check:
Upvotes: 2