OSCache by OpenSymphony
OSCache by OpenSymphony is a caching solution for Web applications. OSCache includes a JSP tag library and a collection of classes to perform dynamic caching of JSP output, servlet output or even arbitrary objects.
OSCache supports both memory and disk based caches. Disk based allows serving content even when the backend (database) is unavailable. Servlet filter component can be used to cache binary content generated by server.
OSCache is compliant with servlet 2.3 and JSP 1.2 standards. The caching is i18n aware and supports all encodings.
Apache Derby
Apache Derby is a Java based open source Database server engine. It is a very compact and the core engine with JDBC driver is about 2MB only! Derby can be easily embedded into any Java based solution.
Derby has a network server for the engine to be used in client server model. Derby fully supports JDBC 4.0 Spec in latest versions. Derby can also be used in J2ME enviornments.
OpenSymphony WebWork2
WebWork is a Java Web development framework focusing on developer productivity. WebWork is based on a powerful command pattern framework XWork. WebWork aims to reduce the application plumbing requirements, there by boosting developer productivity. Some of the key features are,
- Highly flexible validation framework which is independent.
- A powerful dynamic object navigation framework called OGNL.
- Re-usable components promoting component oriented Web development.
- Painless integration with other technologies such as Hibernate, Spring, Sitemesh etc.
- Built in Ajax support using themes.
Apache Wicket
Apache Wicket is a Web application framework written in Java. Wicket is a component based development framwork. Wicket provides transparent state management and Wicket pages can be edited using HTML authoring tools. There are no XML configuration files (no XML is becoming a feature these days!) and all processing is done in Java.
Wicket promotes separation of concerns and Java properties and HTML markup is associated using Wicket ids. Wicket also provides transparent clustering support. Wicket also provides a set of re-usable components such as Pageable ListView and Tree component.
SimpleORM
SimpleORM is an open source object relational mapping tool written in Java. It is intended as a simple, yet effective layer on top of JDBC.
SimpleORM represents records as a map of fields to values. Hence no reflection or configuration XML is used. Unlike Hibernate, the table mappings are part of the code. SimpleORM achieves simplicity at the cost of transparent persistence. A SimpleORM connection is based on an existing JDBC connection and is associated with the current thread.
tIDE IDE
tIDE is a compact open source Java Integrated Development Enviornment. tIDE is one of the smallest IDEs, taking only about 1MB of space. tIDE leverages JDK features extensively there by having a small download size. tIDE is also very efficient and run smoothly on older machines with even less than 512MB RAM!
tIDE can integrate with external tools such as findBugs, PMD and checkstyle. tIDE editor features include auto formatting, sytax highlighting, bookmarks, auto completion, getter/setter creation etc.
Chiba Xforms Engine
Chiba is an open source Java based implementation of W3C XForms standard. Chiba comes in 3 different distributions. Chiba core, Chiba web and Convex. Chiba core provides the core Xforms engine, Chiba Web is and integration of Chiba core in a Java Web application. Convex is an integration of Chiba core in a Java applet.
Chiba is tested in Weblogic 8.1, WebSphere 5.1, Tomcat 5x, JBoss 3.2.5 platforms. Chiba Web requires JDK 1.5+ and Servlet 1.4 compliant application server.
Display Tag : Tag library for table display
Display tag is an open source collection of JSP tag libraries which can be used to display powerful tables in HTML. Display Tag provides pagination, sorting, grouping and exporting(PDF, CSV etc) features to a table of data. Display tag also provides i18n and JSR-168 portlet support.
Display tag also supports external pagination/sorting for large datasets. In this case pagination/sorting can be delegated to the database.
Display tag behavior can be extended using decorators, which can be applied to the entire table or a specific column in the table.
Following a sample display tag usage scenario. In this case the list of data items in table is available as sourceKey in request. The output will be a table with each row having id,customername and customeraddress.
<display:table name=”sourceKey”>
<display:column property=”id” title=”ID” />
<display:column property=”customername” />
<display:column property=”customeraddress” />
</display:table>
Spring Framework
Spring Framework is an open source Web application framework in Java. The original version was written by Rod Johnson as part of sample code for the book Expert One-on-One Java EE Design and Development. It became very popular due to the high developer productivity associated with the use of it.
Different components of Spring can be used independently. For example, Spring MVC can be used or Spring Data Access can be used independently.
Key features of Spring are,
- Dependency injection technique is used to minimize coupling between components.
- An elegant abstraction layer for database access and transactions, there by increasing productivity.
- MVC Web application framework built on Spring core components.
- Inversion of control container for configuration of application components and lifecycle management.
- High level abstraction for messaging, testing, authentication/authorization and remote management.
JBoss Portal
JBoss Portal is an open source portal released by RedHat. It integrates with JBoss application server and can work with Jboss cache and Hibernate at the backend. JBoss Portal supports single sign on, JAAS authentication, cacheing, clustering and hot deployment.
In JBoss, multiple portal instances can run in the same portlet container. Also interportlet communication, internationalization, user/group functionality are supported out of the box.
JBoss Portal is compliant to JSR-168, JSR-170, JSR-252, and J2EE 1.4.