导入数据com.mongodb.util.JSONParseException

时间:2016-07-25 12:56:22

标签: java mongodb solr database

当我尝试:

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)

有人知道如何解决?

由于

1 个答案:

答案 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

中可以找到更多信息