Controls provide a convenient way for your applications to access resources and encapsulate application logic.
This topic provides an overview of controls in enterprise applications. It includes the following sections:
Controls are reusable components you can use (almost) anywhere within a enterprise application. You can use the system controls provided with Workshop for WebLogic Platform, or you can create your own.
Uses for Controls. The framework that supports controls is flexible, supporting a wide variety of uses for controls. Controls can:
Setting Control Properties with Annotations. Controls take advantage of Java 5 annotations for setting control properties. The system controls have a rich set of properties that are parameterized through annotation settings. As for custom controls, the control author can define annotation parameterization for any set of control properties.
Apache Beehive Control Framework. Controls are built on the Apache Beehive Control framework. For more information, see Controls: Getting Started in the Apache Beehive documentation.
Note: Controls that require assembly are not currently supported within an EJB.
Controls are divided into two main types: system controls and custom controls.
System controls provide you a way to connect to common application resources, such as databases, EJBs, JMS queues, web services, and so on. These controls require little or no modification to use in your application.
Workshop for WebLogic Platform provides several system controls, mainly designed to provide access to enterprise resources. For example, you can use the EJB control for access to Enterprise JavaBeans, the JMS control for access to the Java Message Service, and so on. For more information about the system controls, see Using System Controls.
Note that the System controls fall into two groups.
One group represents unmodified Beehive controls. These controls are:
The other group represents controls that are provided by BEA or some other vendor, based on the Beehive control framework. These controls are:
Custom controls provide a way to fully customize access to a resource or encapsulate some application functionality. You can design a custom control to do any task in an application.
You can build your own custom controls that are based on the same framework on which system controls are based. You design a custom control from the ground up, designing its interface and implementation, adding other controls as needed. You can design a custom control for use in one project, or you can design a custom control for easy reuse in multiple projects. For more information about the custom controls, see Building Custom Controls.
There are three kinds of authoring and usage models for Beehive controls.