FileDocCategorySizeDatePackage
ProfileClient.javaAPI DocExample2696Wed Apr 05 11:25:42 BST 2000entity.beanManaged

ProfileClient

public class ProfileClient extends Object

Fields Summary
Constructors Summary
Methods Summary
public static voidmain(java.lang.String[] args)

    String name = args[0];

    try {
      // Get a JNDI context for our EJB server
      Properties p = new Properties();
      p.put(Context.INITIAL_CONTEXT_FACTORY,
	    // For Ejbhome server
	    "com.ejbhome.naming.spi.rmi.RMIInitCtxFactory");
            // Following two lines for WebLogic server
// 	    "weblogic.jndi.T3InitialContextFactory");
//       p.put(Context.PROVIDER_URL, "t3://localhost:7001");
      Context context = new InitialContext(p);

      // Create a profile server
      ProfileHome pHome =
	(ProfileHome)context.lookup("entity.beanManaged.ProfileHome");

      // Ask the server for the person's profile
      // First, see if this person already has a profile
      System.out.println("Looking for profile for " + name);
      Profile profile = null;
      try {
	profile = pHome.findByPrimaryKey(new ProfilePK(name));
      }
      catch (Exception e) {
	System.out.println("Exception while looking up profile.");
      }

      if (profile == null) {
	System.out.println("Creating profile for " + name);
	profile = pHome.create(name);
	// Set some entries in the profile
	System.out.println("Setting profile entries for " + name);
	profile.setEntry("favoriteColor", "blue");
	profile.setEntry("language", "German");
      }

      // Get the entries from the profile
      System.out.println("Getting profile entries for " + name);
      System.out.println("\tFavorite color: " +
			 profile.getEntry("favoriteColor"));
      System.out.println("\tLanguage: " + profile.getEntry("language"));

      // Change the entries
      profile.setEntry("favoriteColor", "red");
      profile.setEntry("language", "Italian");

      // Get the updated entries from the profile 
      System.out.println("Getting profile entries for " + name);
      System.out.println("\tFavorite color: " +
			 profile.getEntry("favoriteColor"));
      System.out.println("\tLanguage: " + profile.getEntry("language"));
    }
    catch (Exception e) {
      System.out.println("Error while creating/using profile.");
      e.printStackTrace();
    }