2016-07-08 46 views
0

我试图创建一个小型的Java代码来处理couchbase精简版数据库,并做推拉操作推挽救援人员到场couchbase精简版客户端

塞纳里奥进行了深入如下

什么我所做的是我创建桶命名为sync_gateway, 和下面config.json

{ 
"interface":":4984", 
"adminInterface":":4985", 
"databases":{ 
"db":{ 
"server":"http://localhost:8091", 
"bucket":"sync_gateway", 
"sync":function(doc) { 
channel(doc.channels); 
} 
} 
} 
} 

这对服务器创建元数据sync_gateway桶, 镍与couchbase服务器conected对于本地数据库CBL编写Java代码示例,并写功能推拉操作... 代码:

package com.Testing_couchbaseLite; 

import java.io.IOException; 
import java.net.MalformedURLException; 
import java.net.URL; 
import java.util.HashMap; 
import java.util.Map; 

import javax.naming.ldap.ManageReferralControl; 

import org.apache.http.cookie.Cookie; 

import com.couchbase.lite.Context; 
import com.couchbase.lite.CouchbaseLiteException; 
import com.couchbase.lite.Database; 
import com.couchbase.lite.Document; 
import com.couchbase.lite.JavaContext; 
import com.couchbase.lite.Manager; 
import com.couchbase.lite.ManagerOptions; 
import com.couchbase.lite.QueryOptions; 
import com.couchbase.lite.replicator.Replication; 
import com.couchbase.lite.support.HttpClientFactory; 

public class Test_syncGateWay { 


    private URL createSyncURL(boolean isEncrypted){ 
     URL syncURL = null; 
     String host = "https://localhost"; //sync gateway ip 
     String port = "4984";    //sync gateway port 
     String dbName = "db"; 
     try { 
      syncURL = new URL(host + ":" + port + "/" + dbName); 
     } catch (MalformedURLException me) { 
      me.printStackTrace(); 
     } 
     return syncURL; 
    } 

    private void startReplications() throws CouchbaseLiteException { 


     try { 

      Map<String, Object> map = new HashMap<String, Object>(); 
      map.put("id", "1"); 
      map.put("name","ram"); 

      Manager man = new Manager(new JavaContext(), Manager.DEFAULT_OPTIONS); 
      Database db = man.getDatabase("sync_gateway"); 
      Document doc = db.createDocument(); 
      doc.putProperties(map); 

      System.out.println("-------------done------------"); 



      System.out.println(man.getAllDatabaseNames()); 
      System.out.println(man.getDatabase("sync_gateway").getDocumentCount()); 

     System.out.println(db.getDocument("1").getCurrentRevisionId());   

      System.out.println(db.exists()); 


       Replication pull = db.createPullReplication(this.createSyncURL(true)); 
      Replication push = db.createPushReplication(this.createSyncURL(true)); 
      pull.setContinuous(true); 
      push.setContinuous(true); 
      pull.start(); 
      push.start(); 
     } catch (IOException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 



    } 

    private void createDatabase() throws CouchbaseLiteException, IOException { 
     // TODO Auto-generated method stub 




    } 

    public static void main(String[] args) throws CouchbaseLiteException, IOException { 
     new Test_syncGateWay().startReplications(); 



    } 
} 

现在我通过配置文件说明同步网关和运行Java代码在CBL和CB创建文件服务器通过推挽操作。

BT它显示误差作为

Jul 08, 2016 10:27:21 AM com.couchbase.lite.util.SystemLogger e 
SEVERE: RemoteRequest: RemoteRequest{GET, https://localhost:4984/db/_local/2eafda901c4de2fe022af262d5cc7d1c0cb5c2d2}: executeRequest() Exception: javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated. url: https://localhost:4984/db/_local/2eafda901c4de2fe022af262d5cc7d1c0cb5c2d2 

所以有在我的概念的任何误解???我该如何解决这个问题?

回答