# com.bea.control
Extensible Interface

public interface Extensible

A control implementation must implement the Extensible interface if it can be extended by a control extension (through a JCX file). Through a JCX file, the control interface may be customized at design time.
Implementing this interface serves two purposes for a customizable control. First, it is a marker interface; a control must implement Extensible in order to be recognized as customizable. Second, you implement this interface's invoke method to provide the logic behind methods on the control's JCX file.
Note: The Extensible interface is part of the WebLogic Workshop Control Development Kit. The Control Development Kit is for users who are creating advanced controls. It is available in your BEA installation in the following directory: BEA_HOME\weblogic81\samples\workshop\ControlDevKit\

## Method Summary

`public `Object`` | `invoke`(`Method` method, `Object`[] args) Called by the run time to handle calls to methods of a customized control.

## Method Detail

### invoke(Method, Object[]) Method

    public Object invoke(Method method,
                         Object[] args)
         throws Throwable

Called by the run time to handle calls to methods of a customized control. A customized control is represented in WebLogic Workshop as a JCX file. Methods on a JCX file represent an extension of the control's interface; calls to those methods are actually passed to the implementation of this invoke method.
Implementations of invoke should anticipate the method parameter as a method of the control extension, with the args parameter as an array of the extention method's parameters. An implementation should return the expected return value.

#### Parameters

method
  The JCX method that was called.

args
  Parameters of the JCX method that was called.

#### Returns

The value that should be returned by the JCX method.

#### Exceptions

``Throwable``