mework can initiate transactions on a commerce server that execute on the client machine. The JCC framework enables the cassette interoperations that form a transaction. A cassette is a signed Java ARchive (JAR) file containing the compiled classes that implement one part of an electronic commerce transaction on the client side. One transaction typically involves several interoperating cassettes. Cassette functionality is defined primarily by the code in a commerce Bean. There are several types of commerce Beans, but the following three types that provide the basic functionality for a purchase transaction: An operation Bean to implement an action such as a purchase. A protocol Bean to implement the electronic transfer standard to use. An instrument Bean to implement the form of payment such as VISA. An electronic purchase transaction requires a purchase operation cassette, one or more protocol cassettes, and one or more instrument cassettes. Note that a commerce Bean is similar to but not exactly like a standard JavaBean. Commerce Beans are not currently written to the same specifications as JavaBeans, and support additional security and other functions required by the JCC framework. To create the cassettes for a transaction, you can write your own cassette(s), and use or modify any of the following types of cassettes that come with the JCC framework: User Interface (including the Java Wallet) Purchase operation Protocol Instrument Service (for local operations) The JCC framework uses roles, tickets, gates, and permits to ensure that only authorized cassettes have limited access to information and resources in other cassettes and the JCC framework. This model is called the Gateway Security model because access to sensitive data within a cassette is permitted through specific controlled gateways only. Roles define what a cassette can do. A cassette is signed for a role or set of roles. For example, every cassette is signed for the Cass...