Java client - OpenKM 6.2

From OpenKM Documentation
Revision as of 15:26, 21 June 2012 by Jllort (talk | contribs)

Jump to: navigation, search

First, we need to generate the client stuff using this command. Keep on mind that you need JDK 1.6 to run it:

$ wsimport -d client -s client http://localhost:8080/OpenKM/services/Auth?wsdl

You can use the following script to generate a complete OpenKM webservices client library:

#/bin/bash

wsimport -p com.openkm.ws.client http://localhost:8080/OpenKM/services/Auth?wsdl
wsimport -p com.openkm.ws.client http://localhost:8080/OpenKM/services/Document?wsdl
wsimport -p com.openkm.ws.client http://localhost:8080/OpenKM/services/Folder?wsdl
wsimport -p com.openkm.ws.client http://localhost:8080/OpenKM/services/Search?wsdl
wsimport -p com.openkm.ws.client http://localhost:8080/OpenKM/services/Notification?wsdl
wsimport -p com.openkm.ws.client http://localhost:8080/OpenKM/services/Repository?wsdl
wsimport -p com.openkm.ws.client http://localhost:8080/OpenKM/services/PropertyGroup?wsdl
wsimport -p com.openkm.ws.client http://localhost:8080/OpenKM/services/Workflow?wsdl

jar cvf okm-ws-client-6.0.jar com

rm -rf com

Authentication

package com.openkm.ws.test;

import com.openkm.ws.client.Auth;
import com.openkm.ws.client.Auth_Service;

public class Authentication {
    public static void main(String[] args) {
        try {
            Auth_Service authService = new Auth_Service();
            Auth auth = authService.getAuthPort();

            // Login
            String token = auth.login("okmAdmin", "admin");
            System.out.println("Es: " + token);

            // Logout
            okmAuth.logout(token);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

PropertyGroups

package com.openkm.ws.test;

import java.util.ArrayList;
import java.util.List;

import com.openkm.ws.client.Auth;
import com.openkm.ws.client.Auth_Service;
import com.openkm.ws.client.PropertyGroup;
import com.openkm.ws.client.PropertyGroup_Service;
import com.openkm.ws.client.StringPair;

public class PropertyGroups {
	public static void main(String[] args) throws Exception {
                // login
		Auth_Service authService = new Auth_Service();
		Auth auth = authService.getAuthPort();
		String token = auth.login("okmAdmin", "admin");
		
                // property groups
		PropertyGroup_Service pgservice = new PropertyGroup_Service();
		PropertyGroup pg = pgservice.getPropertyGroupPort();
		
		List<StringPair> spList = new ArrayList<StringPair>();
		StringPair sp = new StringPair();
		sp.setKey("okp:technology.comment");
		sp.setValue("Other comment from PHP");
		spList.add(sp);
		pg.setPropertiesSimple(token, "/okm:root/test/hosts.txt", "okg:technology", spList);
		
                // logout
		auth.logout(token);
	}
}