2
import com.fourspaces.couchdb.Session;
import com.fourspaces.couchdb.Database;
import com.fourspaces.couchdb.Document;
import com.fourspaces.couchdb.View;
import com.fourspaces.couchdb.ViewResults;
import com.fourspaces.couchdb.CouchResponse;
import com.fourspaces.couchdb.AdHocView;

public class temporaryViews 
{
public static void main(String[] args) throws Exception 
{

    Session s = new Session("localhost",5984,"monil","monil",false,false);
    Database db = s.getDatabase("foodb");

// Running a view
       ViewResults resultAdHoc = db.adhoc("function (doc) {emit(null, doc);}");
       System.out.println(resultAdHoc.getResults().size());
  }
}

我尝试使用上面的代码创建临时视图,我得到了

Exception in thread "main" java.lang.NullPointerException
at temporaryViews.main(temporaryViews.java:53)

请提出解决方案

提前致谢

4

2 回答 2

1

我遇到了同样的问题。尝试 对您有所帮助的EKTROP api

于 2012-05-03T04:12:25.513 回答
1

我在这里面临同样的问题(无法创建视图)。临时解决方法是更新服务器配置。在couch.ini文件中修改 authentication_handlers:

[httpd]
port=8008
authentication_handlers = {couch_httpd_oauth, oauth_authentication_handler},
    {couch_httpd_auth, null_authentication_handler},
    {couch_httpd_auth, cookie_authentication_handler}

重要的是null_authentication_handler,但要注意:正如https://wiki.apache.org/couchdb/Security_Features_Overview#Authentication所述,这是出于开发目的。

希望有人会找到一个真正的解决方案(用于生产环境)。

于 2015-03-24T23:49:07.767 回答