File Release Notes and Changelog
Notes:
Open Patterns 1.0beta2
http://www.opensubsystems.org/patterns/index.html
What is it
==========
Open Patterns is repository of common application functionality patterns allowing
subsystems and applications provide often required but difficult to implement
features with a minimal effort.
* List data pattern allows accessing large amount of data in relational
database in small chunks. It allows retrieving data page by page or
directly accessing a specified page. Page represents several data items
retrieved and displayed together. The page size is user and system
configurable. The pattern supports server side and client side sorting and
filtering of the data using configurable rules and conditions. It works
efficiently on all supported databases. Provides ready to use dynamic user
interface for web based applications as well as asynchronous data loading
for desktop applications.
* Mapped data pattern allows creation, access and management of relations
between any data objects in a generic way. It allows maintaining multiple
types of links between the same data elements and supports one to one, one
to many and many to many relations. Additional data attributes may be
associated with each link. Works efficiently on all supported databases
with minimal coding effort required to integrate with existing modules.
* Patterns for managing data with specified order, versioned data, etc.
* Background task invocation and execution allowing easy configuration and
execution of background tasks for web applications.
* Advanced web based scrollable table mimicking full-featured desktop
alternatives. It supports horizontal and vertical scrolling with
static/scrollable column headers, client side sorting, configurable hooks,
etc.
* Advanced web based tabbed dialog control allowing to easily create tabbed
dialogs with support for visible and hidden tabs, help tabs, configurable
hooks, etc.
* Web based dialog layout management and dialog controls. It allows to easily
implement liquid layouts for web based dialogs with easy-to-use dynamic
controls such as single and multi line edit fields, checkboxes, combo boxes,
lists, double lists, dynamic lists, image buttons, etc. All controls include
support for context help.
* Desktop application utilities mainly oriented for touchscreen computing
such as character pad, numeric pad, toggle buttons, etc.
How to use it
=============
Open Patterns requires Open Core subsystem. You can either use the binary Open
Core libraries bundled with Open Patterns or you can download the full Open Core
distribution package yourself.
Open Patterns is an infrastructure component used to develop Java applications
and subsystems. You will need to download the binary distribution package
patterns-bin-xxx.zip to take full advantage of its functionality. Include all
jar files found in the lib folder on your classpath. You will be able to
immediately use all classes documented in the JavaDoc API. The API can be found
in the docs folder. You may also need libraries from the external\runtime folder
on your classpath once you run your application. To speed up your development
and configuration you may want to use some of the files included in the sources
folder.
The supplied demonstration packages allow you to see the various UI elements of
provided patterns as well as UI template layouts included with Open Patterns.
The demonstration distribution package patterns-app-xxx.zip contains ready-to-deploy
web application in WAR or EAR format (patterns-app.war or patterns-app.ear) in
the webapps folder. You can just copy one of these files to the deployment folder
of your server or use the management application supplied with your server to
deploy the demonstration application. If you encounter error related to missing
classes or class cast issues when deploying the war package and you are using
servlet container rather than full J2EE server you may need to include files
jts.jar and jta.jar found in the external folder into folder on your server
designated for shared libraries. In Tomcat this is \common\lib folder and in
Jetty \ext folder is suitable for this purpose.
Alternatively you can use patterns.war from the lib folder of the binary
distribution package patterns-bin-xxx.zip or demonstration distribution package
patterns-app-xxx.zip to see examples of the Open Patterns web ui elements. You
will also have to copy all libraries from the external/runtime folder to a
location, where your server will find them by default and make them available to
installed web applications.
Once deployed, you can access the tests using one of these URLs depending on the
server you use, for example
http://localhost:8080/patterns-app/ in Tomcat
http://localhost:8080/patterns/ in Jetty
http://localhost:8080/patterns/ in JBoss
http://localhost:9000/patterns/ in JOnAS
...
Configuration
=============
If you decide to change the configuration settings Open Patterns is using, you
need to copy the files located in the config folder in to a folder, content of
which is made part of the classpath for the server running the application. Open
Core used by Open Patterns prints the location of the configuration files it is
using when the application starts so it is easy to verify that your changed
files are in fact being used.
Rebuilding from source
======================
If you desire to rebuild Open Patterns from sources you will need both, the
binary distribution package patterns-bin-xxx.zip and the source distribution
package patterns-src-xxx.zip. Unpack the content of the source package into
sources folder of the unpacked binary distribution package. You will need to
execute the Ant-based build from the sources\build folder
On Unix-like system bundling ANT (e.g. Fedora Core 5) you need to use following
command to run the build
sh /...../ant/bin/ant --noconfig -lib ../../external/runtime -f build-patterns.xml [target]
On Windows following command will have the same effect
\......\ant\bin\ant -lib ..\..\external\runtime\junit.jar -f build-patterns.xml [target]
The ...... refers to the location of your Ant installation other than the one
bundled with the OS (refer to defects #1544802, 1544833 for more info why you
need to do this).
About us
========
OpenSubsystems provides thoroughly tested Java business components with simple
design, reliable implementation and rich features. The consistent set of fully
functional business components can be easily integrated to your applications to
immediately provide high level business functionality such as security, search,
inventory management and others. All components can be used directly with just
Java Virtual Machine or using various J2EE application servers thanks to our
Open Core middleware abstraction layer. You can use Open Core to easily develop
your own components and quickly add many desired features thanks to Open
Patterns repository of common application functionality patterns.
OpenSubsystems offers its products using open-source friendly dual licensing
model. All deliverables are available under two licenses: OSI approved GNU
General Public License (GPL) and OpenSubsystems commercial license. All our
development processes, source code and our products are extensively documented
and available for download, review and use to wide audience of business analysts,
developers and testers. See for yourself what our featured customers do with our
products. When you are ready, you can try the OpenChronicle tutorial. It provides
complete source code and step by step instructions how to develop fully functional
application with OpenSubsystems.
Please let us know through our mailing list, email, discussion forum or contact
form on our website about your opinions, successes and issues with Open Patterns.
Your OpenSubsystems team
Website: http://www.opensubsystems.org
Mailing list: opensubsystems-discuss@lists.sourceforge.net
Copyright (c) 2003 - 2007 OpenSubsystems s.r.o. Slovak Republic. All rights reserved.
Changes:
Open Patterns 1.0beta2
http://www.opensubsystems.org/patterns/index.html
Feature requests
----------------
Patterns
1676044 Simplify coding of persistence tier of list data pattern
1675978 Allow to customize page displayed by ListBrowserServlet
1675358 Simplify coding of ListTag derived custom JSP tags
1675336 Simplify creation of custom list data pattern result pages
1675289 Create custom tags to simplify list pattern navigation gui
1675271 ListOptions should expose additional information about list
1674293 Change license to GPL v2 only for Patterns
1594342 Create new css for common buttons to guarantee equal width
Bugs
----
Patterns
1675968 Incorrectly sorted list data retrieved from HSQLDB
1675278 Definition specified in ListOptions is ignored
1675263 Missing symbolic constant for default list page size
Build process
1675961 Missing files when using patterns from distribution packages