当我尝试:
BasicQuery b = new BasicQuery("{db.processoDomain.find({})}");
或者:
<document name="import">
<entity processor="MongoEntityProcessor"
query="{db.processoDomain.find({})}"
collection="processoDomain"
datasource="bradescorobotjrsethemis"
transformer="MongoMapperTransformer" name="processoDomain">
我在solr中遇到以下异常:
Caused by: com.mongodb.util.JSONParseException:
{db.processoDomain.find({})}
^
at com.mongodb.util.JSONParser.read(JSON.java:301)
at com.mongodb.util.JSONParser.parseObject(JSON.java:262)
at com.mongodb.util.JSONParser.parse(JSON.java:227)
at com.mongodb.util.JSONParser.parse(JSON.java:155)
at com.mongodb.util.JSON.parse(JSON.java:92)
at com.mongodb.util.JSON.parse(JSON.java:73)
有人知道如何解决?
由于
答案 0 :(得分:0)
嗯,{db.processoDomain.find({})}
似乎是错的。试试这个:
BasicQuery b = new BasicQuery("{}");
或者如果查询包含参数,如下所示:
BasicQuery b = new BasicQuery("{ name : 'lukas' }");
然后你可以像这样运行它:
MongoTemplate mongoTemplate = new MongoTemplate(new MongoClient("127.0.0.1"), "db_name");
MongoOperations mongoOperation = (MongoOperations) mongoTemplate;
YourDataClass result = mongoOperation.find(b, YourDataClass.class);
在Here
中可以找到更多信息