Use a client library

To use a WebSphere Commerce services client library (for example, MemberFacadeClient) in a standard Java application: Prerequisites

  1. Understand and select your
    client library authentication mechanism.

  2. Deploy the client library to your development environment using the instructions for the authentication mechanism you have selected.

To use a client library:

  1. Add the client library JAR file path to the build path of your Java application.

  2. Initialize the client library, as seen in the following code sample:
       
    /**
     * Sets the initializes the client based on the <code>
    CallbackHandler </code>
     * @param aCallbackHandler {@link CallbackHandler}
     */
    private void initializeClient(CallbackHandler aCallbackHandler) {
            iClient = new MemberFacadeClient(iBusinessContext,
    aCallbackHandler);
    }
    

  3. Use the client library, as seen in the following code sample for a Get service call:
    //Initialize the client with site admin user permissions
    initializeClient(new SampleCallbackHandlerImpl(SITE_ADMIN_LOGON_ID,
    SITE_ADMIN_PWD));
    
    //Create the BOD                
    GetType getType =
    AbstractBusinessObjectDocumentFacadeClient.createGetVerb(
            SelectionCriteriaHelper.STR_XPATH_LANG, 
            "{" + MemberFacadeConstants.SELF + "=true;" +
            SelectionCriteriaHelper.STR_ACCESS_PROFILE_PARAMETER  + "="
    +
            MemberFacadeConstants.ACCESS_PROFILE_SUMMARY_INFOMATION +
    "}/Person");
    
    //Use the client library to call the Get Person Web service        
        
    ShowPersonDataAreaType showPersonDAT = iClient.getPerson(getType);
    
    // Get the PersonType from the response and use the printPerson()
    method to display the response data           
    PersonType person = (PersonType) showPersonDAT.getPerson().get(0);
    // Output the logon ID
    System.out.println(person.getCredential().getLogonID());
    
    An example for calling a Process or Change service is seen in the following code sample:
    //Initialize the client to run as a guest user - use null as the
    callback handler
    initializeClient(null);
    Map parameters = new HashMap();
            
    parameters.put("logonId", new String[]{ "myLogonId" } );
    parameters.put("logonPassword", String[]{ "myPassw0rd" });
    parameters.put("lastName", new String[]{"myLastName"});
    parameters.put("city",        new String[]{"Toronto"});
    
    try{
            Map result = iClient.registerPerson(parameters);
            String [] strUserId = (String[]) result.get("userId");
            System.out.println("========= New userId: " +
    strUserId[0]);
    } catch (PersonException e) {
            List listErrors = e.getClientErrors();
            if (listErrors != null) {
                    for (int i=0; i < listErrors.size(); i++) {
                            ClientError clientError = (ClientError)
    listErrors.get(i);
                            System.out.println("Message: " +
    clientError.getLocalizedMessage(Locale.ENGLISH));
                            System.out.println("Error key: " +
    clientError.getErrorKey());
                            System.out.println("Error code: " +
    clientError.getErrorCode());
                    }
            }
    }
    

  4. Process the response as appropriate for your Java application.

Related concepts

Client library for WebSphere Commerce services
Web enablement for the client library
WebSphere Commerce services
Client library enablement for Struts

Related tasks

Deploying the client library
Extending the client library


Related Reference


Client library exceptions
WebSphere Commerce foundation tag library