org.globus.ogsa.client
Class EJBServiceClient

java.lang.Object
  extended byorg.globus.ogsa.client.EJBServiceClient

public class EJBServiceClient
extends java.lang.Object

After you have generated the code to expose an ejb as a grid service using "ant ejbService" this class lets you use it just like a normal ejb.
For an example "Person" ejb in a package org.good it would work like this:

String serviceUrl = "http://127.0.0.1:8080/ogsa/services/org/good/PersonHomeFactoryService/myHome";
PersonHome home = (PersonHome) EJBServiceClient.createHomeService("org.good.PersonHome", "org.good.Person", serviceUrl);
Person remote = home.create(new Integer(123));
If you want to know the url of the remote service you can call EJBServiceClient.getRemoteUrl(remote)

If you don't want to use this class the long way to do it is:

java org.globus.ogsa.client.CreateService http://127.0.0.1:8080/ogsa/services/org/someone/PersonHomeFactoryService myHome

String homeUrl = "http://127.0.0.1:8080/ogsa/services/org/good/PersonHomeFactoryService/myHome";
PersonHomeServiceLocator homeLocator = new PersonHomeServiceLocator();
PersonHomePortType homeService = locator.getHome(homeUrl);
String remoteUrl = homeService.create(new Integer(123));
PersonServiceLocator remoteLocator = new PersonServiceLocator();
Person remote = (Person) remoteLocator.getRemote(remoteUrl);


Constructor Summary
EJBServiceClient()
           
 
Method Summary
static javax.ejb.EJBHome createHomeService(java.lang.String homeClassName, java.lang.String remoteClassName, java.lang.String urlString)
          Creates a home service at the given url, returns an object that implements the entire home interface, but only the methods exposed by the service are valid.
static void createService(java.lang.String urlString)
           
static java.lang.String getRemoteUrl(java.lang.Object remote)
           
static javax.ejb.EJBHome lookupHomeService(java.lang.String homeClassName, java.lang.String remoteClassName, java.lang.String urlString)
          Looks up a home service created by createHomeService() or org.globus.ogsa.impl.core.factory.client.CreateService
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EJBServiceClient

public EJBServiceClient()
Method Detail

createHomeService

public static javax.ejb.EJBHome createHomeService(java.lang.String homeClassName,
                                                  java.lang.String remoteClassName,
                                                  java.lang.String urlString)
                                           throws java.rmi.RemoteException
Creates a home service at the given url, returns an object that implements the entire home interface, but only the methods exposed by the service are valid. Methods that create or find enumerations of remotes will not work.

Throws:
java.rmi.RemoteException

lookupHomeService

public static javax.ejb.EJBHome lookupHomeService(java.lang.String homeClassName,
                                                  java.lang.String remoteClassName,
                                                  java.lang.String urlString)
                                           throws java.rmi.RemoteException
Looks up a home service created by createHomeService() or org.globus.ogsa.impl.core.factory.client.CreateService

Throws:
java.rmi.RemoteException

getRemoteUrl

public static java.lang.String getRemoteUrl(java.lang.Object remote)

createService

public static void createService(java.lang.String urlString)
                          throws java.lang.Exception
Throws:
java.lang.Exception


Copyright ? 1999 University of Chicago and The University of Southern California. All Rights Reserved.