Pimento is a framework for integrating data management into Rich Internet Applications. It integrates Java web applications built with JPA/Hibernate and Spring with Flex, Flash and AIR clients.
Cinnamon is a remoting framework based on the binary AMF3 protocol connecting clients written in AS3 with Java EE server applications.
Both frameworks can be deployed in any servlet container or Java EE application server. Pimento is built on top of Cinnamon, but Cinnamon can also be used separately if you don't need Pimento's data management capabilities.
Pimento features:
- Automatic import of JPA/Hibernate configuration
- AS3 EntityManager remote service based on Cinnamon and the binary AMF3 protocol
- Managed AS3 entities and client-side cache
- Guarantee that there is always only one instance representing a particular entity
- Sending only change sets on merge operations
- Managed primary key values when persisting new entities
- Support for inheritance, managed and optionally lazy associations and collections
- Perform JPAQL and Named Queries from the Client
- Server-side Interceptor Architecture (allows to observe all CRUD operations initiated from the client)
- Support for Pimento Integration Tests written in AS3, with automatic database population
- And much more...
Cinnamon features:
- Full support for AMF3.
- Comes with its own Client API and does not build on top of the RemoteObject API of Flex, so it can be used with or without Flex.
- Client Proxies of remote services implement business interfaces so you don't lose type safetey for remote method invocations like with RemoteObject.
- Flexible server configuration: XML, annotations, custom Spring configuration namespace, programmatic configuration.
- Many options how to map ActionScript classes to Java classes.
- Extensible automatic type conversion for method parameters and bean properties.
- Currently supports Spring Beans and plain Java classes as services.
- Automatic source generation of AS3 service interfaces and proxies with Cinnamons Ant task.
You can view the Road Map for future versions and the Change Log for previous versions in the Jira issue tracker:
Pimento and Cinnamon are Open Source, licensed under the Apache License 2.0.