2004-04-21 Geert Bevin * RELEASE 0.7.1 2004-04-20 Geert Bevin * Examples updates. 2004-04-19 Geert Bevin * Javadocs fixes. 2004-04-16 Geert Bevin * Added support for parametrizable limit and offset clauses in Select query builder. 2004-04-15 Geert Bevin * GQM api additions. * BBcode fixes. 2004-04-13 Geert Bevin * Added inList constraint support for float and double. * Added redirect element. * Added support for using the print template element with properties instead of init params. 2004-04-13 JR Boyens * Added restoreFirst(RestoreQuery) to the GQM * Updated Hessian support 2004-04-08 Geert Bevin * Added support for defensive html encoding. 2004-04-01 Geert Bevin * Made purging authentication the default authentication method. * Made BBCode URL conversion a bit more intelligent. * Authentication additions and refactoring. * Added listSessions to SessionManager. 2004-03-31 Geert Bevin * Fix to correctly support relative element ids in site definitions. 2004-03-27 Geert Bevin * Added support for URL localization. 2004-03-25 Geert Bevin * Added possibility to evaluation l10n and config tags explicitely. * Renamed evaluateOgnl to evaluateOgnlTags. 2004-03-24 Geert Bevin * Added template factory specific default resource bundles. 2004-03-22 Geert Bevin * NPE bug. 2004-03-19 Geert Bevin * GQM cache bugfix. 2004-03-16 Geert Bevin * Added getEmbedValue() ElementSupport method. * Added displayedRaw(boolean) constraint. 2004-03-15 Geert Bevin * Added support for cascading validation groups. 2004-03-13 Geert Bevin * Changed roleusers manager retriever API. 2004-03-12 Geert Bevin * Added support for form field attribute setting through :ATTRIBUTES blocks. 2004-03-10 Geert Bevin * Embedded element triggerlist bugfix. * Added reinitializeProperties to ValidationGroup. 2004-03-07 Geert Bevin * Reworked transactions and added new recommended way of ensuring that code is executed in a transaction. * Database connection pool finalization fixes. * Updated buildfile for cgjavac which should be present in PATH to be picked up. 2004-03-06 Geert Bevin * Element injection support and arrival id regression bugfix. * Introspection fixes for global exits. * Made ConstrainedProperty constraints integration more flexible in Validation. * Xml parsing tools flexibility improvements. * Added support for default content type specification. * Added support for file upload size exceeding detection. * Multipartrequest fixes. 2004-03-05 Geert Bevin * Added WaitingImageObserver. * Making sure that answer without a call functions as a regular return. * Continuation call fixes. 2004-03-04 Geert Bevin * Various useful little additions. * Made identifier value retrieval public in GQM. * Made call continuation answer calls mandatory to resume to original continuation. 2004-03-02 Geert Bevin * Optimized String encoding speed, amongst others html encoding. 2004-03-01 Geert Bevin * Integrated and generified PCJ for speed improvements. * Added a concise log formatter. * Added support for template dependencies retrieval. 2004-02-29 Geert Bevin * Added Element and Sql debug tracing. * Added template cache map and integrated it with OGNL expression parsing caching. 2004-02-28 Geert Bevin * Added support for editable constraints. * GQM fixes. 2004-02-27 Geert Bevin * Added activateValidation() method. * Template content transformation bugfix. * Added convenience sitebuilder methods. * Added support for inspectable global exits. * Site structure introspection fixes. * Rep fixes. * Some site builder API convenience additions. * Added check to ensure that call() verifies that a flowlink is attached to the exit. 2004-02-26 Geert Bevin * Some template engine changes to make it easy to construct a new template factory from an existing one. * Small fixes and changes to form building, engine and templates. 2004-02-25 Geert Bevin * Added support for SiteBuilder which allows alternative methods for site structure declaration, with immediate support for a java-only api. * manyToOne constraint fixes. 2004-02-23 JR Boyens * Added a manyToOne constraint to create foreign keys automatically. 2004-02-23 Geert Bevin * Added field support to RestoreQuery. 2004-02-22 Geert Bevin * RELEASE 0.7.0 2004-02-21 Geert Bevin * Added support for RoleUsersManagerRetriever. 2004-02-20 Geert Bevin * Add [img] support to StringUtils bbcode transformer. 2004-02-19 Geert Bevin * Fixed issue RIFE-144 : Rep file processing is sensitive to whitespace. 2004-02-18 Geert Bevin * Added support for persistent and saved constraints. * Continuations bugfix and improved control flow analysis. 2004-02-16 Geert Bevin * Engine refactoring and call fixes to restore the element state after an answer. * Made ValidationError cloneable. * Bugfix to Identified element to ensure that users are only recognized if they have a valid session going on. 2004-02-15 Geert Bevin * Added GenericQueryManagerDelegate class for easy creation of customized Generic Query Managers. * Added support for customizable count queries in GQM. * Added support for multi-line OGNL statements. 2004-02-14 Geert Bevin * Embedded input preservation fixes. * Logout element fixes. * Fixed embbedding element problem with preserving embedder's inputs. 2004-02-12 Geert Bevin * Fixed private method continuations bug. * Made each Repository provide properties which should be used to collect application-wide properties in. * ConfigSelector* and DatasourceSelector* are replaced by XmlSelector* * Fix to auto-reload groovy files that are present in the implementations dir. * Added support for xml selectors in Memoryscheduler. * Added mandatory support for properties in the Repository. * Created and integrated a new RifeLifecycle class. * Extracted xml selectors in a common package. 2004-02-11 Geert Bevin * Added XmlSelectorProperty to select an XML file according to the rife.application property. * Purging bugfix for MemorySessions. * Made the BlockingRepository and BlockingParticipant more robust. * Added Rep tests. 2004-02-10 Geert Bevin * Generic Query Manager fixes. * Refactoring according to RIFE-140 : The GQM is dependant on an integer indentifier method * Optimized GQM shortname creation. * Minor example fix. 2004-02-09 JR Boyens * Fix for RIFE-141 : The GQM's method for determining table/sequence names doesn't work on inner classes 2004-02-09 Geert Bevin * RELEASE 0.6.59 2004-02-08 Geert Bevin * Added support for template initializers that are automatically called when the template is instantiated and when it's reset through the clear() method. * Made numberguess example runnable from Codeguide again. * Javadoc updates. * Added a small convenience participant abstract base class. 2004-02-06 Geert Bevin * Removed softreferences to store continuation contexts since they cleared them away much too early. Another worst case scenario should be investigated since this just cleared the context at the slightest memory increase. * Added some continuations unittests. * Bugfix to appropriate create a canonical element id for arrival elements. 2004-02-05 Geert Bevin * Made embedded element processing early instead of late. * Modified bean setting behaviour in templates. When a property value is null, it'll set an empty string, not disregard the property anymore. * Added support for evaluating template ognl expressions explicitely. * Made the collection of bean instances in DbBeanFetcher optional. 2004-02-04 Geert Bevin * Made Swing Command classes always being called in seperate threads from actions. 2004-02-03 Geert Bevin * Javadocs additions. 2004-02-02 JR Boyens * Finalized unittests for the generic query manager. 2004-02-02 Geert Bevin * Added support for setting expression vars in templates through the setExpressionVar method. * Added support for automatic WEBAPP:ROOTURL value replacement through the Element's print method. This is typically used with to make it possible for relative URLs to always work. 2004-02-01 Geert Bevin * Added support for a rife.webapp.path system property to force which paths are interpreted as rife paths for the classloader. 2004-01-30 Geert Bevin * Embedding / inheritance bugfix. 2004-01-29 Geert Bevin * Added support for "implementations/" default dir for the element implementations. This allows implementation source files to sit in a seperate hierarchy from the other application files. Note that this has no influence on the loading of already compiled class files. 2004-01-29 Geert Bevin * Fixed issue RIFE-138 : Manually evalutating OGNL blocks is not currently supported with the addition of a evaluateOgnlUser(Template, String) method. 2004-01-28 Geert Bevin * Fixed continuations in an inheritance structure. * Added element instance property setting through tag in site structure. * Fixed issue RIFE-136 : RIFE needs a passthrough authentication element by adding an Identified element. * Made setRequestAttribute and removeRequestAttribute accessible from within the childTriggered method. * Fixed bug RIFE-137 : Arrival declaration can workaround authentication 2004-01-27 Geert Bevin * New implementation of new control flow analysis for continuations. 2004-01-26 Geert Bevin * Optimized continuations bytecode instrumentation a bit. * Minor fixes to the construction of urls with pathinfo. * Added support for automatic input checkbox, radiobutton and select generation. * Added support for named global beans. * During submission inputs are now preserved in a serialized form to that they can be overridden by newly submitted query parameters. 2004-01-24 Geert Bevin * Made continuations work with Codeguide's new back-in-time debugger by forcing the processElement method to be debugged in a regular fashion. 2004-01-23 Geert Bevin * Made form building and contrained build usage adapt to non-instantiatable classes. * Made DTDs more permissive. * Fixed issue RIFE-135 : Whitespace is significant in template directive(s) 2004-01-22 Geert Bevin * Removed revalidate method from Validation to prevent confusion. * Solved issue RIFE-125 : Allow inter-element continuations 2004-01-21 Geert Bevin * Resolved issue RIFE-133 : RIFE needs a confirmation Constraint * Integrated and optimized listUserRoles database queries. * Added a feature that detects dots in query parameters so that they can be prefixed with table or tablespace without polluting the parameter name. * Fixed issue RIFE-134 : Authid cookies need to be set at / 2004-01-20 JR Boyens * Added a way to list all the roles that a user has 2004-01-18 Geert Bevin * Refactored the repository and updated the javadocs. The only incompatible difference is that participants that extended RepParticipant before now have to extend BlockingParticipant. 2004-01-17 Geert Bevin * Added ValidationGroup unittests. * Add support for generating form field labels through ResourceBundles. * Made precedence and embedded incookies also transfer, not only global cookies since RIFE doesn't handle the cookies state transfer internally, it's done by the browser. 2004-01-16 Geert Bevin * Fixed bug where a global cookie set by an embedded element didn't appear in other embedded elements. * Updated query builders to better support nulls in wheres. * Rep documentation updates. 2004-01-15 Geert Bevin * Made target-specific compilation error reporting better. * Fixes to make things work better on windows. 2004-01-14 Geert Bevin * Resolved issue RIFE-97 : Provide blueprint implementations of common approaches by extending the DbQueryManager. * Implemented ValidationGroup support 2004-01-13 Geert Bevin * Small fixes and trivial changes to make more stuff work with the java 1.5 alpha release. 2004-01-12 Geert Bevin * Updates and hacks to be able to generate javadocs with the gcj v2.2 pre-release. * Added workaround for IBM's JVM to the engine classloader * Additional DbQueryManager features and integrated them all over RIFE. * Changed the where methods of the query builders so that whereAnd() and whereOr() are used as where() when they're the first instructions. 2004-01-11 JR Boyens * Major changes to the GenericQueryManager * Added support to the GQM for modifying the underlying queries and still retaining integrity. 2004-01-11 Geert Bevin * Added support for auto element id generation when the id is omitted during element definition. 2004-01-09 Geert Bevin * Implemented the validation error marking. 2004-01-08 JR Boyens * Added support for partial queries and merging of said queries. 2004-01-07 Geert Bevin * Added further support for groovy. * Resolved issue RIFE-130 : Add support for FORM:HIDDEN in the form builder. 2004-01-06 Geert Bevin * Added OGNL roleuser support. * Added OGNL support in the template engine to conditionally set values to blocks. 2004-01-04 Geert Bevin * Implemented validation error generation in form builder. 2004-01-03 Geert Bevin * Changed template tag filtering to consume all substring matches and don't enforce matching a whole line anymore. * Added support for template block tag filtering. 2004-01-02 Geert Bevin * Validation updates and changes to friends example to integrate the new features. * Resolved issue RIFE-96 : Integrate validation rules in query builders and form formatters 2003-12-31 Geert Bevin * Changed fetchAll of DbQueryManager so that it always returns true when rows are found and false if no rows were present in the resultset. 2003-12-30 Geert Bevin * Fixed issue RIFE-127 : MemoryUsers and DatabaseUsers lack the posibility to list users by a certain role 2003-12-30 Geert Bevin * Added removal of forms and fields to the form builder. 2003-12-29 Geert Bevin * Implemented cloneable for a bunch of classes. 2003-12-28 Geert Bevin * Integrated the form builder into the engine. * Added formbuilder support for select fields. 2003-12-27 Geert Bevin * Added form builder checkbox support. * Added form builder textarea support. * Added form builder radio button support. 2003-12-25 Geert Bevin * Refactorings for the later implementation of form builders. 2003-12-24 Geert Bevin * Added support for a default value for ConstrainedProperty. * Added support for retrieval and presence checking of template default values. * Resolved RIFE-124 : SQL statements may have one or more UNION clauses. 2003-12-22 Geert Bevin * Changed authentication method argument policy, instead of throwing IllegalArgumentException the methods now perform a logic default behaviour in case of invalid parameters. * Global cookie & global vars bugfix. * Added support for named submission beans. * Added support for template blocks inside default values. 2003-12-21 Geert Bevin * Added support for continuation cloning to keep previous contids working. The downside is that all instances in the element have to be cloneable, if this is a problem the developer can override the cloneContinuations() method or configure the behaviour through the setCloneContinuations(boolean) method. The behaviour will then be as before. * Made ElementSupport's initialize and childTriggered methods public. 2003-12-20 Geert Bevin * Interfaced the Template class. * Integrated constrained properties with CreateTable queries. 2003-12-19 Geert Bevin * Upgrade asm to 1.4.1 2003-12-17 Geert Bevin * Added support for limited subject errors. 2003-12-15 Geert Bevin * Added support for elements that implement the ElementAware interface, element can thus be any class now as long as the correct interface is implemented. 2003-12-14 Geert Bevin * Updated clover script. * Started the implementation of intelligent validation and constraints framework. * Added prepared statement parameter setting chaining. 2003-12-11 Geert Bevin * Updates so that state stores are able to encode any RIFE url. 2003-12-10 Geert Bevin * Implemented RIFE-93 : Add support for server-side storage 2003-12-09 Geert Bevin * Started implementing configurable state storage. 2003-12-07 Geert Bevin * Implemented per-request continuation ID instead of per-request continuation context. * Optimized garbage collection for continuation context by using the reference api. 2003-12-05 Geert Bevin * Fixed issue RIFE-122 : Continuation contexts should be unique for each request. * Renamed pauze() to pause() * Added ObjectUtils with methods to facilitate deep and shallow cloning. 2003-12-04 Geert Bevin * Fixed RIFE-42 : Don't allow global exit overrides in group hierarchies 2003-12-03 Geert Bevin * Added preventCaching() method to Element. * Fixed issue RIFE-120 : A destid of "." will cause an assertion failure 2003-12-02 Geert Bevin * Fixed issue RIFE-119 : Continuations break when used with embedded elements * Refactored the GQM restoreWhere 'linkName' parameter to 'field' since that read much more intuitively. * Fixed some embedded element bugs related to encoding and buffered writing/printing. 2003-12-01 JR Boyens * Added restoreWhere functionality for more datatypes * Added tests for bean inheritance 2003-12-01 Geert Bevin * Added all required JVM encodings to the ones that are cached by the template engine. * Fixed issue RIFE-116 : Embedded element contents shouldn't use the response encoding 2003-11-30 Geert Bevin * Put ASM in different package to prevent clashes. 2003-11-27 Geert Bevin * RELEASE 0.6.58 2003-11-27 Geert Bevin * RELEASE 0.6.57 * Examples updates and javadoc fixes. * Continuation fixes for javac's compiled finally blocks. 2003-11-26 Geert Bevin * Made DatabaseExceptions unchecked. * Fixed issue RIFE-113 : Continuations should work in try-catch-finally statements 2003-11-25 JR Boyens * Added a MySQL driver to the GenericQueryManager 2003-11-25 Geert Bevin * Generic query managers updates + oracle driver. * Added JR Boyens' generic query manager. * Add continuations tests and fixed some bugs. * Resolved issue RIFE-99 : Add final parameter to config settings * Fixed exception reporting in case of compilation failure. 2003-11-24 Geert Bevin * Fixed issue RIFE-103 : Inheritance related bug breaks embedded element submissions 2003-11-23 Geert Bevin * Fixed RIFE-110 : TemplateFactory.TEXT is not consistent with the template extension * Resolved issue RIFE-90 : Add tests for ElementService interface support in Hessian webservices * Fixed issue RIFE-4 : Extend engine element tests * Fixed issue RIFE-109 : Included config files don't have the parameters of the including file at their disposal 2003-11-21 Geert Bevin * Made exception handling in the filter and servlet better to disregard the now top-level InvocationTargetException. * Completely reworked the engine's classloading and element instantiation to ensure that only one single point of class loading is available. This also restores the ability of elements to use package private access amongst classes within the same package. 2003-11-21 JR Boyens * Added 4 new config options for previously unconfigurable database lengths 2003-11-21 F.A. Meijndert * Added removeUser(long userId) to MemoryUsers and DatabaseUsers * Added unittests for removeUser(long userId) * Refactored some names for consistency 2003-11-19 Geert Bevin * Additional contiuation tests and fixes. 2003-11-18 Geert Bevin * Fixed RIFE-102 : Distribution files should extract to top-level directory 2003-11-17 Geert Bevin * Upgraded postgres jar and added tested postgres 7.4. * Upgraded ASM and continuations bugfixes. 2003-11-17 Geert Bevin * Re-implementation of continuation engine with better global execution flow analysis. 2003-11-14 Geert Bevin * Added support for request element tracing with optional memory info output 2003-11-13 Geert Bevin * Replacement of query initialization pattern with one that works correctly in a multi-threaded env. 2003-11-12 JR Boyens * Added config params for common unconfigureable options 2003-11-10 Geert Bevin * Added boolean initparam test. * Elementcontext print updates. * Solved issue RIFE-95 : Test DbQueryManager fetchAll method 2003-11-08 Geert Bevin * Integrated jboyens' patch for issue RIFE-63 : Add support for global cookies 2003-11-07 Geert Bevin * Added configurable template type to the logout element. * Fixed spelling error in the api of TaskManager. * Extended the template deployer to make it possible to preload classes, include and exclude files. * Added multiple includes and excludes functionality to the getFileList method. * Added methods to check if a string filters through a series of including and excluding regular expressions. 2003-11-06 JR Boyens * Implemented GlobalCookies 2003-11-06 Geert Bevin * Added method fillSubmissionBean to fill in submission parameters in an already existing bean. * Made all element methods that return collections or arrays return an empty object instead of null in case of no results. * Added support for global scope element id referencing for inheritence and precedence. * Renamed hasValue(id) to isValueSet(id) in the template API since it was easy to confuse it with hasValueId(id). * Template engine updates to make the ids of values that need to be set more restrictive and the content more liberal, ie. null is accepted. * Made all Stringutils methods stop throwing exceptions and behave reasonably in case of null arguments. 2003-11-03 Geert Bevin * Minor change to parameter retrieval in elements. They can now be retrieved when there's no submission present, but a check will still be made if they are part of one of the available submissions. 2003-10-31 Geert Bevin * Fixed embedded element bug where it didn't respond well to inheritance with cookies and submissions. 2003-10-30 Geert Bevin * Added continuation purging. * First integration of continuations. 2003-10-28 Geert Bevin * Fixes to make it compile with JSR-014 v2.2. * Build file fixes. 2003-10-24 Geert Bevin * Fixed issue RIFE-101 : Fall back to handler /foo if /foo/ handler doesn't exist. 2003-10-23 Geert Bevin * Fixed issue RIFE-100: Exit handling in an embedded element is broken. 2003-10-20 Geert Bevin * Bugfix in the cleanup of the DbResultSet resultset. 2003-10-18 Geert Bevin * Changed default scheduler sleep time to 500 ms instead of 60000 since otherwise it's not second-precise and minute-precise frequencies don't work correctly. * Added fetchAll() method in DbQueryManager. 2003-10-13 Geert Bevin * Adapted dialogs to use JLabel by default instead of JMultiLabel since it turns out that JLabel does multiple lines through the use of HTML :-/ 2003-10-12 Geert Bevin * Added method to get a file's base name to go together with the method to get its extension. * Renamed database structure installation and removal error exceptions to be more specific. 2003-10-11 Geert Bevin * Made most element methods public, restricting them to protected access was a naïve design decision. * Added support to Hessian web services to optionally implement the ElementService interface to gain access to the request element inside the service. 2003-10-10 Geert Bevin * New versions of swing dialogs and JMultiLabel. 2003-10-06 Geert Bevin * Added tests for authenticated web services. * Implemented first propotype of continuations support. 2003-09-24 Geert Bevin * RELEASE 0.6.57 2003-09-17 Geert Bevin * Implemented support for multiple rep participants of the same class but with different names. * Implemented support for repository cleanup and cleanup of the participants in the reverse order of the initialization. 2003-09-16 Geert Bevin * Added more resources unittests. * Database query bugfixes where classes of primitive types as bean properties weren't handled correctly. 2003-09-15 Geert Bevin * Added resources unittests. 2003-09-14 Geert Bevin * Further resources implementation and wrote javadocs. 2003-09-11 Geert Bevin * com.uwyn.rife.tools.FileUtils additions. 2003-09-08 Geert Bevin * Removed outdated and unused com.uwyn.rife.client package. * Initial restructuring of resource finding and writing in a dedicated package. 2003-09-07 Geert Bevin * Re-arranged the template handling to solely rely on resource finders. This is the first step to allows templates to be stored in a database. 2003-09-06 Geert Bevin * Resolved issue RIFE-86 : Authentication and PrintTemplate are limited to the use of html Templates. 2003-09-05 Geert Bevin * Bugfix to swing menu builder. * Upgraded Beanshell to v2.0b1. * Fixed removeRole support to rely foreign key constraints when appropriate. * Fixed mysql removeUser to manually remove all the role links for the removed user. * Backed out serialization support in database types since the reverse mapping was not implemented and unittests were not implemented. * Small scripting languages fixes. 2003-08-30 Geert Bevin * Added support to Localization tool class to retrieve the Locale that is used by the other methods. * Added FileUtils method to obtain the extension of a file. 2003-08-22 JR Boyens * Implemented removeRole(). 2003-08-22 Geert Bevin * Added scripting engines abstraction to able able to support others beside BSF. * Added support for Hessian web services : http://www.caucho.com/hessian/ 2003-08-16 Geert Bevin * RELEASE 0.6.56 * RELEASE 0.6.55 * Updated build file for latest generics release 2.2 so that javadocs can be built (foreach statements are simple stripped away so that the API can be processed by javadoc). * Minor regression bugfix to support orion 2.0.2 again. * Removed docs and put them in seperate repository. 2003-08-16 Geert Bevin * Made some minor fixes to the datasources xml file name selector mechanism and unittests. * Implemented issue RIFE-81: Add support for with the addition of named input and output beans. 2003-08-15 JR Boyens * Implemented a DatasourcesSelector similar to the ConfigSelector 2003-08-15 Geert Bevin * Added workaround for swing oversight in the standard API where programmatic menu item selections don't trigger associated actions. * More thorough and more appropriate generification of bean-related methods. * Minor swing dialog updates. 2003-08-14 JR Boyens * Updated to a more generics friendly approach. Will allow for no casting on the client side. 2003-08-14 Geert Bevin * Added LocalizedString class which allows to automatically keep strings up-to-date with the active default localization settings. * Cross-platform related bugfix. * Bugfix to support cloning in the AbstractPropertyChangeSupport class. 2003-08-13 Geert Bevin * Added support for custom implementations of RoleUser through the use of the RoleUserCredentials class. * If another class is used for the credentials managers that rely on role users, then the authenticated element should contain the "credentials_class" init parameter. It should contain the complete classname of the credentials class to use. 2003-08-12 Geert Bevin * Fixed long standing argument validation bug in DatabaseSessions. * Added convenience class so that it's possible to obtain support for bound properties by simply extending the AbstractPropertyChangeSupport class. 2003-08-11 Geert Bevin * Internal RELEASE 0.6.55_pre4 * Bugfix in template engine regarding the new blockvalue tags. 2003-08-10 Geert Bevin * Added support for sorted lists in a descending order. * Refactored list sorting class to be more generic. 2003-08-09 Geert Bevin * Swing fixes. * Bugfix to store config lists in a predictable order to the preferences backend. 2003-08-08 Geert Bevin * Put tools exceptions in a dedicated package. * Added support for objects stored in the config through serialization. * Added typed list methods to Config. * Renamed storeXml() methods to storeToXml(). 2003-08-07 Geert Bevin * Internal RELEASE 0.6.55_pre3 * Small swing additions. * First fix for issue RIFE-84 : Using beans with non-primitive fields causes SQL statement breakage. * Updated for jdbc driver aliases. * Implemented issue RIFE-78 : Support JDBC driver aliases in query construction classes * Added an alias for org.gjt.mm.mysql.Driver to com.mysql.jdbc.Driver and renamed org_gjt_mm_mysql_Driver support to com_mysql_jdbc_Driver. * Added support for a whole bunch of other look and feels. 2003-08-06 Geert Bevin * Added menu-related swing functionalities. * Updated build file to use generic types for beanshell support. * Removed support for netrexx. * Generified all remaining raw parts. * Swing-related code inspections, cleanups and refactorings. 2003-08-03 Geert Bevin * Set correct method permissions. * Added look and feel detection class. * Updated swing api. * Added support for storing config settings as preferences and for setting a preference node that has a higher priority than the config to retrieve the parameter values from. * Added swing config settings. 2003-08-03 Geert Bevin * Internal RELEASE 0.6.55_pre2 * Removed block tag options and replaced OPT='DEFVAL' by a new BV tag. * Added filtered config value tag support () to all template configurations instead of just those that are instantiated through the web engine. * Added support for localization through ResourceBundle setting in templates. * Added dummy pass-through encoder as default template encoder instead of null. 2003-07-25 Geert Bevin * Changed clone() methods to have appropriate covariant return types. While this makesnon-generic javadocs generation incorrect, it makes the life of generics-enabled developers much easier. In a generics-aware javadocs tool this should have been fixed. 2003-07-24 Geert Bevin * Code updates after inspection. 2003-07-23 Geert Bevin * Internal RELEASE 0.6.55_pre1 2003-07-18 Geert Bevin * Updated for JSR-014 v2.2 release. * Updated build file to create a SOAP supporting war. * Added support for SOAP wsdd and admin services deployment. * Added SOAP-related tests. * Refactored jws soap features. * Elements can now have access to the raw element context or http request by overriding the prohibitRawAccess() method and returning false. 2003-07-18 Geert Bevin * Integrated axis so that jws files are looked up by RIFE just as the other files (classpath) * Abstracted automated java file compilation and updated the current usages of it. * Added initial SOAP support through Axis. * Fixed xml entity resolving regression bug. * Prohibited almost all element methods now in child trigger context. Only getRemote*() will work. 2003-07-13 Geert Bevin * Added support for weblogic 8.1 and orion 2.0.2. 2003-07-13 Geert Bevin * Minor fix to make RIFE work with the latest Resin. * Updated examples. 2003-07-11 Geert Bevin * Javadoc fixes. * RELEASE 0.6.54 * During the declaration of submissions one had to declare an id, while for all the other element properties a name attribute was used. This has now become name for submission too. ie: -> 2003-07-10 Geert Bevin * Bugfixes and testcases for snapback datalinks. * Added initial support for snapback datalinks. 2003-07-09 Geert Bevin * The generateContent() method of the Element class has been replaced by processElement(). * Restructuring of the database api related to the resultset. It's now completely wrapped to provide fail-safe and transparent us of hasResultRows(). * Removed export of genericity in the _getObjects method of Rep participants. 2003-07-07 Geert Bevin * Engine precedence fixes. 2003-07-04 Geert Bevin * Correctly implemented manipulation of global vars through outputs in embedded or preceding elements. * Example fixes. * Precedence fixes. * Passthrough logout element updated. 2003-07-03 Geert Bevin * Converted Iterators and iterating for statements to the new foreach syntax of the upcoming JDK 1.5 release. 2003-07-02 Geert Bevin * Added support for inheritance and precedence in group declarations. * First working precedence implementation. 2003-07-01 Geert Bevin * Implemented support for snapback and inheritance cancellation in global exits. * Added unittests for passthrough logout elements together with snapback flowlinks. 2003-06-29 Geert Bevin * Created passthrough logout elements and renamed the previous logout elements to 'template' elements. Therefore, when having referenced rife/logout/database.xml one has to reference rife/logout/template/database.xml instead now.Template * Added flowlink snapback support. * Updated Codeguide project files for Sapphire. 2003-06-27 Geert Bevin * Begun implementation of flowlink snapback support. * Multiple minor updates. 2003-06-20 Geert Bevin * Increased testsuite code coverage. 2003-06-17 Geert Bevin * Implemented issue RIFE-80 : Support template tag escaping. 2003-06-16 Geert Bevin * Implemented issue RIFE-79 : Template reloading when a ContentTransformer changes. * Added support for target element retrieval in an inheritance structure. * Updated friends example to highlight erroneous fields. 2003-06-15 Geert Bevin * Added unittests for inheritance cancellation during flowlinks. * Updated inheritance example some more. 2003-06-14 Geert Bevin * Examples cleanups and copyright updates. * Added support for inheritance control during flowlink declaration in site structure. * Minor refactorings. * Engine exceptions code review. 2003-06-13 Geert Bevin * Added support for post verification disabling in element. 2003-06-12 Geert Bevin * RELEASE 0.6.53 * Bugfix where content flushes threw an exception when the user stopped or disconnecting the browsing session. * Fixed bug where the internal buffer was flushed, but the outputstream not. 2003-06-11 Geert Bevin * Changed license to LGPL. * Consistently applied exception throw statements in method signatures, even for runtime exceptions. * Updated to clover 1.2. * Api updates. 2003-06-03 Geert Bevin * Regression fixes to the examples. * RELEASE 0.6.52 * Updated examples for additional template tag format. * Extended friends example by using beans. * Updated ContentTransformerXslt to support output properties setting. 2003-06-01 Geert Bevin * Added support for multiple template tag syntax configurations within the same parser. This is used to provide support for long invisible comment tags and convenient compact tags with the following syntax : [!V 'value'/], [!V 'value']default[/V], [!B 'block']content[/B], [!I 'include'/]. These tags can also for example be used in XSLT stylesheets where invisible comments tags are not accepted, for example in href attributes. * Updated for new JSR-014 v2.0 so that it can be used to compile RIFE. The downside is that the latest JSR-014 release requires a runtime jar to be loaded in the bootstrap classpath of the virtual machine. This is cumbersome, but at least people are still able to compile RIFE themselves without CodeGuide. 2003-05-31 Geert Bevin * Rewrite of XSLT transformer since using an XSLT stylesheet for it intervenes too much with the resulting output. It's now implemented as a Xalan element extension. Sadly this means that currently, the usage if , and tags will only work with the XSLT engine that ships with J2SE 1.4 or a compatible Xalan release. 2003-05-30 Geert Bevin * Added support for explicit processing of embedded elements to make it possible to process them in the correct order according to other explicit template value processors such as exit and submission query builders. * Added additional template retrieval methods inside an element which supports engine filtered values and setting of transformers. * Updated mysql-jdbc and ant contrib libs to their latest versions. * Minor API modifications and test additions. 2003-05-29 Geert Bevin * Added unittests for additional embedded behaviour. 2003-05-28 Geert Bevin * Added support for non-url embedded elements that can be perfectly integrated in templates. Their submissions will go to the first enclosing element with an url. * Added the fact the embedded element outputs modify the global variables of their inclosing context. * Added transformation template dependency reloading tests. * Xml storage related bugfixes and added unittests. 2003-05-27 Geert Bevin * Added convenience methods for storing XML-supporting datastructures to a data file. This has been done for MemoryUsers, Config and Datasources. * XML Resource finder bugfix where resources in jar files weren't found. * Added custom XSLT tags , , to easily generate tags that to template engine understands. * Restructured some of the template test cases. * Added template content transformers that are able to modify the content of a template file before the parser processes it. * Implemented an XSLT template content transformer. * Changed XML inputsource handling to correctly respect the encoding of the XML file. This is done both for the XML data file and the entity files. 2003-05-26 Geert Bevin * Fixed design bug in template engine where setting a bean didn't overwrite existing values. * Added support for the removal of bean values from a template, this to go hand in hand with setting all the bean values. * Added performance enhancements to scripted java elements. 2003-05-24 Geert Bevin * Added testcase for externally used internal template values, typically used to handle recursion in templates. * Added support for using and maintaining an internal template construction value outside of a template. * Rearranged examples and added recursive template usage example. 2003-05-23 Geert Bevin * Made the ExceptionErrorRedirector the default for all Xml2Data extending classes. * Implemented issue RIFE-77 : Improve XML error reporting. 2003-05-22 Geert Bevin * Implemented issue RIFE-40 'Add support for element groups in the site definition'. * Fixed email validator to accept a '-' char in the domain name. 2003-05-19 Geert Bevin * Template API consistancy regression bug fix. * RELEASE 0.6.51 * Internal database thread deadlock bugfixes and performance optimizations. 2003-05-13 Geert Bevin * Rewrote template engine and applied a lot of performance optimizations. 2003-05-06 Geert Bevin * RELEASE 0.6.50 * Resolved issue RIFE-35 : Allow cookies to launch child triggers * Updated database api to support query builders everywhere where plain SQL strings are supported. * Unified api to eliminate the difference between regular queries and parametrized queries from a user's point of view. 2003-05-05 Geert Bevin * Removed 'classname' and 'scriptname' attribute in element definition and replaced it by the 'implementation' attribute. This breaks backward compatibility but was implemented since it offers a very important transparent migration path from java scripted elements to pre-compiled java classes for production deployment. * Resolved issue RIFE-76 : Error message misleading when class cannot be found for element. 2003-05-04 Geert Bevin * Javadoc updates. * Added very basic friends list tutorial example to demonstrate a website that is backed by a database. 2003-05-01 Geert Bevin * Resolved issue RIFE-70 : Extend com.uwyn.tools.StringUtils convertBbcode() * Javadoc updates. * Updated the directory structure of the tutorial examples. * Added clover. 2003-04-30 Geert Bevin * Javadoc updates. 2003-04-29 Geert Bevin * Javadoc updates. 2003-04-28 Geert Bevin * Javadoc updates. 2003-04-21 Geert Bevin * Javadoc updates. 2003-04-14 Geert Bevin * RELEASE 0.6.49 * Major design flaw fix where a DbQueryManager stores its connection, this is a source of bugs and bad usage. * Bugfix to datasource connection retrieval where a deadlock could occur when obtaining a connection in a transaction several times from the same thread. 2003-04-13 Geert Bevin * Javadoc additions and minor api updates. 2003-04-10 Geert Bevin * Added support for xhtml and xml templates. * Added doctype to all example templates. * Example template updates to contain a head section. * Updated helloworld example. * Added support for disabling transaction timeouts and disabled them by default. 2003-04-09 Geert Bevin * RELEASE 0.6.48 * Bugfix for issue RIFE-72 (Parent element of arrival element in subsite is wrongly resolved) 2003-04-08 Geert Bevin * Mysql clone create table testcase fixes. 2003-04-07 Geert Bevin * Bugfix for issue RIFE-74 (Pathinfo is not preserved when the childrequest is encoded/decoded) * Bugfix for issue RIFE-73 (Root element url is empty instead of /) * Bugfix for issue RIFE-71 (Wrong exit query url generated in inheritance structure when there are no inputs available) 2003-04-05 Geert Bevin * Helloworld example update to include a template. 2003-04-05 Geert Bevin * Fixes to some access modifiers in the database query builder api. 2003-04-03 Geert Bevin * RELEASE 0.6.47 * Bugfix to Delete query constructor to correctly support where parameter aliases. 2003-04-01 Geert Bevin * Bugfix to the obfuscation string encryptor/decryptor. * Added support for parametrized unions in select query builder. 2003-03-31 Geert Bevin * Bugfix to the configuration of the table and sequence names of authentication and scheduler (parallel installation). * Made query builders cloneable. 2003-03-30 Geert Bevin * Template fix to remove all DCLs. * Template engine speed optimizations. 2003-03-29 Geert Bevin * Added sub select support to all parametrized query builders. 2003-03-27 Geert Bevin * RELEASE 0.6.46 * Added better support for implicit boolean values conversion in helper methods. * Javadoc updates. 2003-03-26 Geert Bevin * Fixes to remove double-checked locking applications (DCL) since it's flawed : http://www.cs.umd.edu/~pugh/java/memoryModel/DoubleCheckedLocking.html 2003-03-25 Geert Bevin * Updated mysql jdbc driver. * Javadoc and api updates. 2003-03-24 Geert Bevin * Implemented all datasource-related tests. 2003-03-22 Geert Bevin * Updated jetty to v4.2.9 for the engine tests. 2003-03-14 Geert Bevin * Numberguess example fixes. 2003-03-13 Geert Bevin * Turned the getEncoder method of templates into a public method. * Added automatic creation of the temp path if it was automatically set by the Gate to be unique across servlet contexts. * Added support for Oracle under MacOSX in the unittest configuration. 2003-03-10 Geert Bevin * Updated numberguess example to be more pertinent. * Added drawing of numberguess structure. 2003-03-07 Geert Bevin * RELEASE 0.6.45 * Added simple tutorial examples. * Added adaptive classpath generation so that RIFE can auto-compile templates and elements with as much servlet engines as possible. * Bugfix to correctly get the classpath of the parent classloader to use for the compilation classpath setting. 2003-03-06 Geert Bevin * RELEASE 0.6.44 * Bugfix to prevent duplication error output during the same request if the error occurred during the site initialization. * Bugfix to correctly obtain the compilation error message when an error occurred. * Bugfix to correctly obtain element and template compilation errors in all cases. * Bugfix where access to the rep participant's resourcefinders was wrongly prohibited after initialization. * Build fix where error html files were wrongly pregenerated as enginehtml files. * RELEASE 0.6.43 * Regression bugfix where element generation path wasn't set correctly with a missing config file. 2003-03-05 Geert Bevin * Integrated template precompilation in the build and release process. * Build file updates to prevent javac executable clash under *nix. * Updated ant test target to solely use the jar file for RIFE resources and classes. * Regression bugfix where the java compiler wasn't correctly selected. * Added support for resource content retrieval to ResourceFinder. * Refactored source for better ResourceFinder propagation. * Added support for template deployment and precompilation through the TemplateDeployer class. 2003-03-04 Geert Bevin * Added wasNull() method to the DbStatement class. * Regression bugfix where the temp path was incorrectly set. * Regression bugfix where element and template generation paths were incorrectly set. 2003-03-03 Geert Bevin * RELEASE 0.6.42 * Added typed where parameters to query builders. * Updated task managers to use typed where statements in query builders. 2003-03-02 Geert Bevin * Added support for property value inclusion to config parameter definition. 2003-03-01 Geert Bevin * Updated email validation rule. 2003-02-27 Geert Bevin * Added debugging info to auto-compiled java scripted elements. * Centralized retrieving of rife config values in a dedicated class. * Made authentication and scheduler database table names configurable. * Added basic database example. * Authentication fix to allow the updating of users without providing a password. 2003-02-26 Geert Bevin * Internal scheduler install/remove refactoring for better code seperation. * Addition of method parameter checks and detection of duplicate role addition to authentication framework. 2003-02-25 Geert Bevin * Removal of duplicate classes. * Windows related bugfixes. * Scheduler table name changes. Database schedulers will have to reinstall the database structure. 2003-02-24 Geert Bevin * Updated for Jetty 4.2.8_01 * Extension, refactoring, cleanup and unification of the authentication framework to handle all common tasks related to the management of RoleUser credentials. * Renamed getResultset() to getResultSet() in the DbStatement class. 2003-02-20 Geert Bevin * RELEASE 0.6.41 2003-02-13 Geert Bevin * Added support for adding users with already encrypted passwords to credentialsmanagers. * Upgraded and tested postgres jdbc jar v7.3.2 2003-02-12 Geert Bevin * Added delegation to other appropriate request methods. * Added multiple prepared sql statement parameter assignments and automatic assignments of all parameters with the same name. 2003-02-11 Geert Bevin * Over-optimization bugfix where xml error redirectors were re-used between Xml2Data instances. This caused errors to persist in subsequent xml processings. * Bugfix where unicode characters were used for encoding urls, this has been changed to ISO-8859-1. * RELEASE 0.6.40 * Introduction of FormFormatter to consistantly handle selected/checked/toggled form parameters. * Refactoring where HtmlFormatter was renamed to ValidationFormatter. 2003-02-10 Geert Bevin * Added support for setting template param values of multiple checkboxes with the same name. * Made template and element compilation work with the tools.jar of the ibm jdk. * Added more array conversion methods and made the ArrayUtils api less restrictive. 2003-02-07 Geert Bevin * Added full bean filtering for BeanUtils property count and name retrieval methods. * Added outputs bean clearing. 2003-02-06 Geert Bevin * RELEASE 0.6.39 * Bugfix to ensure that each element declaration is correctly cloned. This caused arrival elements to have double parent stacks and thus parents to be executed twice. * Added typed cookie value retrieval methods. * Added support for config values in the datasource definitions. 2003-02-05 Geert Bevin * Added automatic bean-driven declaration of inputs, outputs, globalvars and submission parameters. * Added support for cookies in inheritance and authentication. 2003-02-04 Geert Bevin * Split up authentication tests. * Added exceptions to rep to notify about invalid participants. * Bugfix where subsites without url prefix could cause for 'null' to appear in the url. * Added more explicit error reporting to the engine in case of a duplicate url. * Added support for input bean retrieval and name prefixes in getSubmissionBean. * Source quality evaluations and updates. * Added setting of bean values as outputs in the engine. 2003-02-01 Geert Bevin * RELEASE 0.6.38 * Bugfix, scripted java elements didn't look up multiple-level packages correctly. * Major global refactoring where factory singleton methods got renamed from get() to getInstance(). * Added support for setting bean in templates with support for select, radiobutton and checkbox html input types. 2003-01-31 Geert Bevin * RELEASE 0.6.37 * Fixed rep.dtd so that participants are non-blocking by default. * Added element deployment support. * Added HtmlGenerator method to quickly set a collection of ValidationError subjects. 2003-01-30 Geert Bevin * Made methods public that are useful for runtime element and site introspection. 2003-01-29 Geert Bevin * Added automatic parameter generation for checkbox input fields. * Added correct handling of bean submission generation from checkbox input fields. 2003-01-27 Geert Bevin * Added addition element parameters / inputs / files / outputs / globalvars conflict checks. 2003-01-26 Geert Bevin * RELEASE 0.6.36 * Performed some code refactorings. * Added support for config value retrieval in xml site and element declarations, use the tag. * Set UTF-8 as the compilation encoding. * Added StringEncryptor testsuite. * Upgraded jetty to 4.2.6 for engine tests. * Integrated encrypted authentication passwords with authentication elements. 2003-01-25 Geert Bevin * General speed optimizations by pre-allocating thread locks for repeated StringBuffer operations. * Bugfix where exits that are called from within an element that received a post submission caused the target element to think it received a post submission too. * RELEASE 0.6.35 * Added convenience methods to retrieve arrays of typed submission parameters from within an Element. * Added ArrayUtils methods to convert string arrays to other primitive type arrays. 2003-01-24 Geert Bevin * Added argument validation to HtmlFormatter methods. * Implemented tests for groupBy(bean) method of Select queries. * Added XML_VALIDATION setting which can be used to globally disable/enable xml validation. By default the validation is enabled. * Renamed FILE_UPLOAD_PATH setting to FILEUPLOAD_PATH. * Cleanup and optimizations of scheduler and authentication database queries and their handling. All statements are now guaranteed to be closed, even when errors occurred. * Added encrypted password support to memory and database authentication. SHA-1, MD5 and Obfuscated algorithms are supported. 2003-01-23 Geert Bevin * Added support for inner classes in java scripted elements. 2003-01-22 Geert Bevin * RELEASE 0.6.34