2016-07-06 2 views
0

saiku 서버에 새 데이터 소스를 만들어야합니다. 나는 tomcat 내부에서 실행중인 내 로컬 실행중인 saiku 응용 프로그램에서 데이터 소스를 성공적으로 만들 수있었습니다. 하지만 자바 코드를 사용하여 데이터 소스를 만들려고했습니다. 나는 아래 코드를 붙여 넣었다. 코드,새로운 데이터 소스 만들기 새우를 사용하여 새우를 만들려면

p s v m(){ 
     String connectionname="saran"; 
     String connectiontype="MONDRIAN"; 
     String jdbcurl="jdbc:mysql://localhost:3306/drink"; 
     String schema="/datasources/drink.xml"; 
     String driver="com.mysql.jdbc.Driver"; 
     String username="root"; 
     String password="211218"; 

    Response connection = Jsoup 
     .connect(
      "http://localhost:8080/saiku/rest/saiku/admin/datasources/") 
     .header("Content-Type", "application/json) 
    .data(connectionname,connectiontype,jdbcurl,schema,driver,username,password) 
.ignoreContentType(true) 
    .referrer("http://localhost:8080/") 
    .cookie("JSESSIONID", res.cookie("JSESSIONID")) 
    .userAgent(
     "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.94 Safari/537.36") 
    .method(Method.POST).timeout(10000).execute(); 
    } 

출력 Errororg.jsoup.HttpStatusException: HTTP error fetching URL. Status=415, URL=http://localhost:8080/saiku/rest/saiku/admin/datasources/

(가) 내가 직면하고 또 다른 문제는 내가 입력 PARAM의와 쿠 데이터 소스 방식의 인수를 무엇 자바 소스 코드를 볼 해달라고하고 그들의 JAVA로 선언하는 방법 암호. JAVA Saiku 서버 측 코딩을 볼 수 있습니까? OSLB/Saiku를 복제 한 것을 보았습니다.하지만 브라우저에서 로컬로 실행되는 saiku의 각형 응용 프로그램에서 언급 한 URL을 얻지 못합니다.

답변

0

JSON 객체를 게시하기 위해 requestBody()를 사용합니다. requestBody() 메소드는 JSOUP 1.9.1 jar에서만 사용할 수 있으며 참조 용으로 아래 코드를 게시했습니다.

  // JSON Object 
     JSONObject testJson = new JSONObject(); 

     testJson.put("connectionname", "drinkss"); 
     testJson.put("jdbcurl", "jdbc:mysql://localhost/drink"); 
     testJson.put("schema", "datasources/dr.xml"); 
     testJson.put("driver", "com.mysql.jdbc.Driver"); 
     testJson.put("username", "root"); 
     testJson.put("password", "211218"); 
     testJson.put("connectiontype", "MONDRIAN"); 

     // For Posting datasource into server 


     Response document1 = Jsoup 
        .connect(
          "http://localhost:8080/saiku/rest/saiku/admin/datasources/") 
        .header("Content-Type", "application/json") 
        .requestBody(testJson.toString()) 
        .data(testJson) 
        .ignoreContentType(true) 
        .referrer("http://localhost:8080/") 
        .cookie("JSESSIONID", res.cookie("JSESSIONID")) 
        .userAgent(
          "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.94 Safari/537.36") 
        .method(Method.POST).timeout(10000).execute(); 
      System.out.println("post successfully....." 
        + testJson.toJSONString());