* Feb 12 2001 hship Fix some bad JavaDoc comments. Install accidentally ommitted classes. * Feb 12 2001 hship Replace NullOutputStream with NullResponseWriter. Minor formatting changes (for readability) to certain component's output. Standardize of "disabled" (with a default of false) for all components (there was previously a mix of "enabled" and "disabled"). Simplify the ShowInspector component (remove the parameters that allow its image to be customized). * Feb 9 2001 hship Have RequestContext implement IRender. * Feb 7 2001 hship Add some logging to AssetExternalizer. Have RequestContext emit ServletContext init parameters inside write(). Fix a bug that prevented asset externalization from working (got the URL from a servlet init param, not the servlet context). Explicitly set the width and height of the tabs on the Inspector page. Remove indentation support from IResponseWriter and implementations. Add the Block and InsertBlock components. * Feb 6 2001 hship Add missing method getMaximumLengthBinding to TextField. * Feb 6 2001 hship Don't create new page recorder instances until actually needed. Actually invoke the ILifeCycle finishLoad() method. Allow informal parameters for the validating text field components (but apply them to the underlying TextField). * Jan 26 2001 hship Remove IRequestCycle from the parameter list for RequestCycleException and all sub-exceptions. Vastly improve the Script component and related classes. * Jan 26 2001 hship Revisit links and event handlers ... again! ServiceLinks now support a well-defined set of events, but can handle any number of JavaScript functions. Add some more documentation to the DTDs. Rename IBinding.getValue() to getObject(). Rename IBinding.setValue() to setObject(). Add IBinding.getObject(String,Class). * Jan 25 2001 hship Get log4j javadoc from jakarta.apache.org. * Jan 25 2001 hship Pool PageLoaders. Fix some latent threading bugs in PropertyAccessor and PageSource. Add a sanity check to AbstractPage.attach(). Change AbstractApplication to log uncaught exceptions (in addition to raising the exception page). * Jan 19 2001 hship Change some method signatures in IEngine and AbstractEngine such that engine has access to the IRequestCycle when it creates a visit object. * Jan 18 2001 hship Make the session ID the NDC (nested diagnostic context, used with log4j). * Jan 17 2001 hship Tiny efficiency improvement in Enum serialization. * Jan 16 2001 hship Rename IResponseWriter.beginOrphan() to beginEmpty(). Add support for setting scheme and/or port in AbstractServiceLink. * Jan 16 2001 hship Add ICallback and some implementations. Change the interface for IDirectListener slightly. * Jan 10 2001 hship Change names of Pool methods slightly. Add a bunch of log4j logging to Script, ScriptGenerator, RequestCycle, etc. Use better names for some IRequestCycle attributes (used to track active components). * Jan 10 2001 hship Update for log4j 1.0. * Jan 9 2001 hship Integrate David Solis' changes for WML support. * Jan 9 2001 hship Package reorg madness. Updated copyrights and Primix name and address. Renamed ImageButton to ImageSubmit. Remove DatabaseQuery and InsertURL components. * Jan 8 2001 hship Begin adding log4j support. Add a Logging page to the Tapestry Inspector. Add logging support to ApplicationServlet. Added buttons for restarting and resetting to the Engine view of the Inspector. Add method IEngine.isDebugServiceEnabled(). Change the EJBObject <--> Handle swap to be during serialization, not normal storage. * Jan 4 2001 hship Optimize PropertyBindings, simplifying property paths when possible. Make StringSplitter recognize when a string cannot be split. Reorganize the Inspector a bit. * Jan 4 2001 hship [127536] Class load error for .wars * Jan 3 2001 hship Restore IEngine.setVisit() method. * Jan 3 2001 hship Rename InternalAsset to ContextAsset, and to . Implement localization for ContextAsset and PrivateAsset. Have the PageSource cache instance of ExternalAsset, PrivateAsset and ContextAsset. check in some missing files from the Savage Refactoring (woops!). [112110] Tracking bug: Finish Localization Support * Jan 2 2001 hship Split the index for Tapestry. Add setLocale() to IEngine. Implement HTML template localization. Make a couple of protected variables private in BasePage. * Dec 29 2000 hship Savage Refactoring! IApplication -> IEngine, com.primix.tapestry.app -> com.primix.tapestry.engine Fix many out of date Javadoc comments. Improve exception handling/reporting in ApplicationServlet. Add the engineClassName property to the ApplicationSpecification, update the DTD and the SpecificationParser. Have the ApplicationServlet construct the engine from the class name. * Dec 28 2000 hship Woops! Moved the logic for creating the visit object to AbstractApplication. * Dec 28 2000 hship Change SimpleApplication to create the visit object based on a class specified in the application specification. * Dec 28 2000 hship Restructure RadioGroup and Radio slightly, to make them work (combined) more like a PropertySelection. No longer use j2ee.jar, use a combination of javax.servlet.jar from Jetty's distribution, and lib/ext/ejb.jar from the jBoss distribution. * Dec 27 2000 hship Change IBinding.getBoolean() to sniff for array types and return true if the length is non-zero. * Dec 26 2000 hship Create a re-usable threadsafe Pool component and use it, instead of ad-hoc code, to handle pooled Pages. * Dec 21 2000 hship Create a special case in PageRecorder for converting EJB references to handles for storage and vice-versa when the page is restored. Fix a previously unnoticed problem caused by bad timing in the interaction between committing page changes and lazy creation of persistent page properties. Add new checks to the PageRecorder to detect when a persistent property changes during page rendering. * Dec 21 2000 hship Attempt a few minor optimizations related to PropertyHelper and PropertyBinding. * Dec 20 2000 hship Update the documentation. Make sure the visit object is created only when needed. * Dec 20 2000 hship Add the FieldLabel component, used for providing a label for validating text fields. * Dec 19 2000 hship Fix a typo that broke the Rollover component. * Dec 19 2000 hship Slight improvements in efficiency of the ScriptParser. Fix minor Javadoc mistakes. * Dec 18 2000 hship Revisit the ScriptGenerator class, changing the format of the .script file from home-brew to a fully specified XML document. * Dec 15 2000 hship Added the ScriptGenerator (and related classes) and converted the Rollover component to use it. * Dec 14 2000 hship LOts of tweaks and cleanups to improve serialization. Added the DataSqueezer and related classes that convert objects to Strings and back. Added the Decorator class, used to match classes against adaptor objects. Added some missing copyrights to various files. Change the Inspector's "Properties" tab to show the serialized application with 32 bytes per line. Changes ApplicationSpecification to store default page specification in a static variable, shared by all instances. * Dec 13 2000 hship Update the Tapestry Designer's Guide, to describe the new validating text fields. * Dec 12 2000 hship Fix some Javadoc errors in the new classes. * Dec 12 2000 hship Introduce IValidatingTextField and some implementations (ValidatingTextField, DateField and IntegerField). Remove many now unnecessary Makefiles from various packages. * Dec 11 2000 hship Split the application into the application object and the visit object. The visit object contains the server side state. Remove the old constructors for AbstractComponent and BasePage. * Nov 29 2000 hship Update the Inspector to show the size and bytes of the serialized application object. * Nov 29 2000 hship Add reportException() method to ExceptionAnalyzer, and change AbstractApplication to invoke it (intead of doing the work itself). * Nov 22 2000 hship Add the InsertText component. * Nov 20 2000 hship Release 0.2.6 * Nov 17 2000 hship Fix typo in exception message for unreferenced components. Fix bug in ImageButton that caused it to be confused about which ImageButton was clicked if a form contains more than one. Cache ExternalAssets in the PageSource (as with FieldBinding and StaticBinding), so that duplicate external assets will be represented only once. This is useful when a commonly used component (such as a border) is used on multiple pages. * Nov 13 2000 hship Allow static bindings to be pooled the same as field bindings. Make the Rollover component only emit a "name" attribute if it is dynamic (i.e., has both an image and a focus and responds to mouse overs). It was emitting an empty name attribute. * Nov 10 2000 hship Change the behavior of Forms and Form components slightly, such that it is possible to write more sophisticated JavaScript event handlers. * Nov 10 2000 hship Release 0.2.5 * Nov 6 2000 hship Add a refresh parameter to the Shell component, which allows for easy automatically refreshing pages. * Nov 1 2000 hship Improve exception reporting when an Insert component is unable to format its value. * Nov 1 2000 hship Change the reset component to not wipe out the session, simply force a refresh of all HTML templates and component specifications. It now encodes the currency page as well. Fix some Javadoc errors. * Nov 1 2000 hship Merge PrimixFoundation into Tapestry. Keeping them seperate had little value. Change EnumPropertySelectionModel to require that the ResourceBundle be passed in (since it can't always resolve the bundle, due to classloader issues). Switch over to Servlet 2.2 APIs. * Oct 25 2000 hship Add raw parameter to Insert component. Make some overdue documentation updates. * Oct 24 2000 hship Add the Shell component, and convert the Inspector, Exception, StaleSession and StaleLink pages to use it. Tiny change to exception handling when instantiating components and pages. Add getDouble() method to IBinding. * Oct 20 2000 hship Add a JVM property to disable page pooling. * Oct 18 2000 hship Add resetServiceEnabled property to AbstractApplication. Add the IDirect interface. Implemented caching of FieldBindings. Make sure the page is identified in a RequestCycleException, if a runtime exception is thrown during rewindPage(). * Oct 16 2000 hship Implemented the element of the specification. Allows a binding to be expressed in terms of a Java class and a static field of that class. Move the canonical Tapestry DTD to the tapestry.sourceforge.net website. * Oct 13 2000 hship Reorganized how Body and Rollover components work together, slightly, so that less Javascript has to be stored in memory during the rendering of the Body's wrapped elements. * Oct 11 2000 hship Change the interface for IPage and IComponent to allow a no-arguments constructor, and deprecate the more complicated constructors. * Oct 6 2000 hship Service component didn't declare its formal context parameter in its specification. * Oct 6 2000 hship Fix the Hidden component to not throw NullPointerException if the listener parameter is not bound. * Oct 6 2000 hship Re-introduce support for automatic onLoad method for the Body component. Rename the TextField parameter "maximumWidth" to "maximumLength". Make the Form component emit a name attribute, to faciliate JavaScript access to the form and its elements. * Oct 5 2000 hship Minor documentation and JWC errors in the TextField component. * Oct 4 2000 hship Fix a NullPointerException in SimpleApplication.cleanupAfterRequest(). The exception may be thrown if another exception is thrown earlier in the request cycle (before any page recoders are accessed). * Oct 4 2000 hship Revise Submit and ImageButton components to set a property if clicked, remove listener parameters from Form-related components. * Sep 26 2000 hship Fix NullPointerException when the Home page does NOT throw an exception inside validate(). * Sep 25 2000 hship Change the signature for AbstractApplication.cleanupAfterRequest to include the IRequestCycle. Undo the [114878] fix, since it uses servlet 2.2 only API. * Sep 24 2000 hship [114878] com.primix.tapestry.context-path should be for context * Sep 24 2000 hship [115140] Home service must validate() * Sep 13 2000 hship [114017] Rollovers no longer compatible with Navigator * Sep 12 2000 hship More Javadoc for ShowInspector component. * Sep 12 2000 hship Beef up the ShowInspector component, adding default images and rollover images, and add parameters to allow those to be overriden. Remove the Java Source tab from the Inspector ... turns out that shipping Java code in the Tapestry framework confuses the Java compiler when compiling projects that depend on the Tapestry framework. * Sep 11 2000 hship Add a Java Code tab to the Inspector. Ship Java code for components and pages as resources. * Sep 11 2000 hship Fix some bad Javadoc links. * Sep 10 2000 hship Add new view to the Inspector: Properties. Improve CSS for the Inspector (conistent fonts and colors between images and HTML text). Change inspector to not automatically switch to the Specification page when a new page is selected. [113893] Rollover causes minor JavaScript problems * Sep 8 2000 hship Started ChangeLog for Tapestry, some time after release 0.1.3. Added provisional image graphics for the Inspector. Update the documentation to mention the Inspector. Revise PropertySelection, adding the IPropertySelectionRenderer interface and two implementation (SelectPropertySelectionRenderer and RadioPropertySelectionRenderer). Generate a better exception message when EnumPropertySelectionModel can't find a ResourceBundle.