Portable client code for using Burlap services. Since this package is independent of all Resin code, its classes can be copied to a non-Resin client jar.

## RPC Proxy Clients - BurlapProxyFactory

Most application clients will use BurlapProxyFactory to create stub objects. The stub objects can be called with normal Java calls. Because the objects are remote, the client application needs to be able to deal with IOException caused by an unavailable server or a protocol error.

    import com.caucho.burlap.client.BurlapProxyFactory;

    ...

    URL url = new URL("http://localhost:8080/ejb/hello");
    HelloHome hello = (HelloHome) factory.create(HelloHome.class, url);

    System.out.println("hello: " + hello.hello());

## Serialization

Since the Burlap protocol serializes Java objects to XML, the BurlapSerializerOutput and BurlapSerializerInput can be used for serialization.

#### Serialization

    OutputStream os = new FileOutputStream("test.xml");
    BurlapOutput out = new BurlapSerializerOutput(os);

    out.writeObject(obj);
    os.close();

#### Deserialization

    InputStream is = new FileInputStream("test.xml");
    BurlapInput in = new BurlapSerializerInput(in);

    Object obj = in.readObject();

    is.close();

## MicroBurlapInput and MicroBurlapOutput

These two classes only require classes from Java MicroEdition. So they can be extracted separately into a burlap-micro.jar. Because of this restriction and their small size, these two classes are ideal for limited size devices like mobile phones and PDAs.