Cacheable commands are stored in the cache for reuse with a similar mechanism for
servlets and JavaServer Pages (JSP) files.
About this task
In this case, however, the unique cache IDs are generated based on methods and fields
present in the command as input parameters. For example, a GetStockQuote command can have a symbol
as its input parameter. A unique cache ID can generate from the name of the command, plus the
value of the symbol.
To use command caching you must:
Procedure
Create a command.
-
Define an interface.
The Command interface specifies the most basic aspects of a command.
You must define the
interface that extends one or more of the interfaces in the command package. The command package
consists of three interfaces:
- TargetableCommand
- CompensableCommand
- CacheableCommand
In practice, most commands implement the TargetableCommand interface, which allows the command
to run remotely. The code structure of a command interface for a targetable command follows:
...
import com.ibm.websphere.command.*;
public interface MyCommand extends TargetableCommand {
// Declare application methods here
}
-
Provide an implementation class for the interface.
Write an interface that extends the CacheableCommandImpl class and implements your command
interface. This class contains the code for the methods in your interface, the methods inherited
from extended interfaces like the CacheableCommand interface, and the required or abstract methods
in the CacheableCommandImpl class.
You can also override the default implementations of other
methods provided in the CacheableCommandImpl class.
Avoid trouble: For command caching to operate properly, you must
enable servlet caching.