Package javassist.tools.web

# Class Viewer

java.lang.Object
java.lang.ClassLoader
javassist.tools.web.Viewer

public class Viewer extends ClassLoader
A sample applet viewer.

This is a sort of applet viewer that can run any program even if the main class is not a subclass of `Applet`. This viewwer first calls `main()` in the main class.

To run, you should type:

    % java javassist.tools.web.Viewer host port Main arg1, ...

This command calls `Main.main()` with `arg1,...` All classes including `Main` are fetched from a server http://host:port. Only the class file for `Viewer` must exist on a local file system at the client side; even other `javassist.*` classes are not needed at the client side. `Viewer` uses only Java core API classes.

Note: since a `Viewer` object is a class loader, a program loaded by this object can call a method in `Viewer`. For example, you can write something like this:

     Viewer v = (Viewer)this.getClass().getClassLoader();
     String port = v.getPort();

## Constructor Summary

Constructors
Constructor
Description
`Viewer(String host, int p)`
Constructs a viewer.

## Method Summary

Modifier and Type
Method
Description
`int`
`getPort()`
Returns the port number.
`String`
`getServer()`
Returns the server name.
`static void`
`main(String[] args)`
Starts a program.
`void`
`run(String classname, String[] args)`
Invokes main() in the class specified by `classname`.

### Methods inherited from class java.lang.ClassLoader

`clearAssertionStatus, getDefinedPackage, getDefinedPackages, getName, getParent, getPlatformClassLoader, getResource, getResourceAsStream, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, getUnnamedModule, isRegisteredAsParallelCapable, loadClass, resources, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus`

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### Viewer

public Viewer(String host, int p)
Constructs a viewer.

Parameters:
  `host` - server name
  `p` - port number

## Method Details

### main

public static void main(String[] args) throws Throwable
Starts a program.

Throws:
  `Throwable`

### getServer

public String getServer()
Returns the server name.

### getPort

public int getPort()
Returns the port number.

### run

public void run(String classname, String[] args) throws Throwable
Invokes main() in the class specified by `classname`.

Parameters:
  `classname` - executed class
  `args` - the arguments passed to `main()`.
Throws:
  `Throwable`