diff options
Diffstat (limited to 'fs_selfservice/java/freeside_login_example.java')
-rwxr-xr-x | fs_selfservice/java/freeside_login_example.java | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/fs_selfservice/java/freeside_login_example.java b/fs_selfservice/java/freeside_login_example.java new file mode 100755 index 0000000..cb6d2bc --- /dev/null +++ b/fs_selfservice/java/freeside_login_example.java @@ -0,0 +1,45 @@ + +import biz.freeside.SelfService; +import org.apache.commons.logging.impl.SimpleLog; //included in apache xmlrpc +import java.util.HashMap; +import java.util.Vector; + +public class freeside_login_example { + private static SimpleLog logger = new SimpleLog("SelfService"); + + public static void main( String args[] ) throws Exception { + SelfService client = + new SelfService( "http://192.168.1.221:8081/xmlrpc.cgi" ); + + Vector params = new Vector(); + params.addElement( "username" ); + params.addElement( "testuser" ); + params.addElement( "domain" ); + params.addElement( "example.com" ); + params.addElement( "password" ); + params.addElement( "testpass" ); + HashMap result = client.execute( "login", params ); + + String error = (String) result.get("error"); + + if (error.length() < 1) { + + // successful login + + String sessionId = (String) result.get("session_id"); + + logger.trace("[login] logged into freeside with session_id="+sessionId); + + // store session id in your session store to be used for other calls + + }else{ + + // successful login + + logger.warn("[login] error logging into freeside: "+error); + + // display error message to user + + } + } +} |