Oracle® Fusion Middleware Integration Guide for Oracle Enterprise Repository 11g Release 1 (11.1.1.5.0) Part Number E15754-08 |
|
|
View PDF |
This chapter provides an overview of User API and describes the use cases using this API.
This chapter contains the following sections:
The User Subsystem provides a Web Services-based mechanism that is used to create, read, update, query, and otherwise manipulate Oracle Enterprise Repository User accounts.
Related Subsystem
For more information, see Chapter 27, "Role API".
Additional Import(s) Required
import com.flashline.registry.openapi.entity.RegistryUser; import com.flashline.registry.openapi.query.UserCriteria;
This section describes the use cases using the User API. It contains the following topics:
Description
Create a new user.
Retrieve an existing user.
Update a user.
Deactivate a user.
Query for users.
Sample code is as follows:
package com.flashline.sample.userapi; import java.net.MalformedURLException; import java.net.URL; import java.rmi.RemoteException; import java.util.Calendar; import javax.xml.rpc.ServiceException; import com.flashline.registry.openapi.base.OpenAPIException; import com.flashline.registry.openapi.entity.AuthToken; import com.flashline.registry.openapi.entity.RegistryUser; import com.flashline.registry.openapi.query.UserCriteria; import com.flashline.registry.openapi.service.v300.FlashlineRegistry; import com.flashline.registry.openapi.service.v300.FlashlineRegistryServiceLocator; public class Users { public static void main(String pArgs[]) throws OpenAPIException, RemoteException, ServiceException { try { /////////////////////////////////////////////////////////// // Connect to Oracle Enterprise Repository /////////////////////////////////////////////////////////// URL lURL = null; lURL = new URL(pArgs[0]); FlashlineRegistry repository = new FlashlineRegistryServiceLocator() .getFlashlineRegistry(lURL); // ////////////////////////////// // Authenticate with OER // ////////////////////////////// AuthToken authToken = repository.authTokenCreate(pArgs[1], pArgs[2]); // ----------------------------------------- // Create a new user String lUserName = "testUserCreate _"+Calendar.getInstance().getTimeInMillis(); String lFirstName = "testUserCreate_FirstName"; String lLastName = "testUserCreate_LastName"; String lEmail = lUserName+"@example.com"; String lPassword = "testUserCreate_Password"; boolean lMustChangePassword = false; boolean lPasswordNeverExpires = false; boolean lAssignDefafultRoles = true; RegistryUser RbacRegistrySecUser = repository.userCreate( authToken, lUserName, lFirstName, lLastName, lEmail, lPassword, lMustChangePassword, lPasswordNeverExpires, lAssignDefafultRoles); // ----------------------------------------- // Read a User long lId = 50000; // user id must exist in OER RegistryUser lUser1 = repository.userRead(authToken, lId); // ----------------------------------------- // Update a User lUser1.setActiveStatus(10); lUser1.setUserName("xxx"); lUser1.setPhoneNumber("412-521-4914"); lUser1.setMustChangePassword(true); lUser1.setPasswordNeverExpires(false); lUser1.setPassword("changed_password"); lUser1.setEmail("newaddress@bea.com"); try { lUser1 = repository.userUpdate(authToken, lUser1); } catch (OpenAPIException e) { e.printStackTrace(); } // ----------------------------------------- // Deactivate a User RegistryUser lUser2 = null; try { lUser2 = repository.userDeactivate(authToken, lId); } catch (OpenAPIException e) { e.printStackTrace(); } // ----------------------------------------- // Query for Users RegistryUser lUsers[] = null; UserCriteria lUserCriteria = null; lUserCriteria = new UserCriteria(); lUserCriteria.setNameCriteria("testname"); lUsers = repository.userQuery(authToken, lUserCriteria); } catch (OpenAPIException lEx) { System.out.println("ServerCode = " + lEx.getServerErrorCode()); System.out.println("Message = " + lEx.getMessage()); System.out.println("StackTrace:"); lEx.printStackTrace(); } catch (RemoteException lEx) { lEx.printStackTrace(); } catch (ServiceException lEx) { lEx.printStackTrace(); } catch (MalformedURLException lEx) { lEx.printStackTrace(); } } }