This file contains all changes done on the 1.5 version. Release Notes - Wicket - Version 1.5-M3 ** Sub-task * [WICKET-2081] - Add optional support for "Setting Markup Head Elements" PLT.12.5.4 * [WICKET-3069] - java.rmi not allowed on GAE * [WICKET-3110] - update migration guide to reflect the narrowing of the usecases for TransparentMarkupContainer * [WICKET-3112] - Fix of issue 2886 breaks all individual implementations of any AbstractTree * [WICKET-3115] - source code link doesn't work in wicket-examples 1.5 - request mappers demo * [WICKET-3130] - update migration guide ** Bug * [WICKET-2888] - Nullpointer when inserting [i.e. moving] a node in a TreeTable (AbstactTree, treeNodesInserted) * [WICKET-2912] - IE 8 gets 404 error after continueToOriginalDestination() when app is at root context * [WICKET-3048] - Redirect page in Ajax callback broken. * [WICKET-3052] - HybridUrlCodingStrategy probably uses wrong url encoding * [WICKET-3053] - WicketTester does not preserve the form component values when submitting with AjaxSubmitLink * [WICKET-3057] - NPE when deleting a TreeNode with visible children * [WICKET-3065] - HomePageMapper ignores request to '/' with query string parameters * [WICKET-3067] - The new mappers ignore single query parameter with empty value * [WICKET-3070] - Method getParameterMap in CryptedUrlWebRequestCodingStrategy.DecodedUrlRequest is broken * [WICKET-3072] - Deleting only child of collapsed tree node doesn't update the node * [WICKET-3074] - CreditCardValidator throws NumberFormatException on non-numeric characters. * [WICKET-3075] - AJAX file upload fails in IE8 due to Wicket.Ajax.handleMultipart() sniffing wicket:body tags as an HTML body element when running Wicket in development mode * [WICKET-3076] - UrlUtils.isRelative returns false if URL parameter contains an absolute URL * [WICKET-3078] - FileUploadException is masked behind WicketRuntimeException and not handled by a Form * [WICKET-3079] - Nested fragments markup not found * [WICKET-3083] - Broken AbstarctCalendar dependency * [WICKET-3084] - CharSetUtil.getEncoding fails with an IndexOutOfBoundsException * [WICKET-3086] - AjaxLink.onClick() -> setResponsePage(...) redirects to wrong url * [WICKET-3087] - Form inside ModalWindow causes 'Submit Button not visible' exception in parent page's form * [WICKET-3095] - Adding AjaxFormSubmitBehavior to Form leads to "Error: too much recursion" JS Error * [WICKET-3097] - isTemporary behavior and ajax behavior together crashes with WicketRuntimeException: Couldn't find component behavior. * [WICKET-3098] - AjaxEventBehavior#onEvent is invoked on disabled behavior * [WICKET-3101] - No exceptionpage on exceptions during ajax * [WICKET-3102] - WicketTester does not handle startPage(ITestPageSource) that contains a redirect/setResponsePage correctly * [WICKET-3103] - RequestCycle logs something, when its intended for servlet container * [WICKET-3106] - Security: Possible Redirection to foreign Page by using BrowserInfoPage's PageParameter * [WICKET-3111] - TransparentWebMarkupContainer appears magically for html elements without 'wicket:id' but with 'href' attribute * [WICKET-3119] - Localizer cache does not include style in cache key when no component is given * [WICKET-3123] - MockSessionStore doesn't bind sessions properly * [WICKET-3127] - Adding node to a collapsed tree node should not cause it to expand * [WICKET-3134] - Commons logging must die * [WICKET-3142] - Adding AjaxFormComponentUpdatingBehavior to dropdownchoice does not work * [WICKET-3143] - No Exception page are rendered when using ajax ** Improvement * [WICKET-385] - Move HTTP caching features out of wicket.Resource * [WICKET-1215] - WicketTester recreates session after setting attributes on it * [WICKET-1244] - Move IResponseFilter and its implementations into a new subfolder / package * [WICKET-1531] - Behaviours cannot change tag name * [WICKET-1779] - Palette component - make image URLs part of CSS * [WICKET-1936] - Client-Side Image Map * [WICKET-2035] - Change naming convention for xml properties files to *.properties.xml instead of *.xml * [WICKET-2776] - Enhancing RadioChoice input items with individual title and css class attributes * [WICKET-2937] - AbstractPropertyModel getObjectClass don't consider nested IObjectClassAwareModel targets * [WICKET-3049] - CompoundPropertyModel constructor allows misuse of model object * [WICKET-3055] - Application fails to start when disk access is denied * [WICKET-3056] - Upgrade pom reference for joda-time from 1.6 to 1.6.2 * [WICKET-3062] - Improve cache keys to be more readable * [WICKET-3071] - Upgrade maven plugins and non-essential dependencies to newest version * [WICKET-3080] - Automatic sizing modal window * [WICKET-3089] - onBeforeRender in NextButton should not be final * [WICKET-3125] - Add IRequestListener interface to allow easier framework extension points * [WICKET-3128] - FormComponentLabel should open open-close tags like Label does ** New Feature * [WICKET-2084] - Integrate Wicket Ajax debug console to Firebug * [WICKET-3082] - Introduce IComponentOnInitializeListener for cross-cutting concerns ** Wish * [WICKET-3008] - clarify purpose of getMarkupSettings().setThrowExceptionOnMissingXmlDeclaration(true) Release Notes - Wicket - Version 1.5-M2.1 ** Bug * [WICKET-3039] - WicketServlet failes to initialise with NullPointerException in WebXmlFile.getFilterPath() * [WICKET-3040] - Ajax form submit fails in Wicket 1.4.11/Firefox3.6 * [WICKET-3042] - AjaxLink does not work ** Improvement * [WICKET-1602] - Wicket resources - wicket is requesting resources every 1 hour * [WICKET-2922] - AutoCompleteTextField should allow the generics specification for the getChoices iterator and the type of the model ** Task * [WICKET-3041] - Relative link in JavaScript Release Notes - Wicket - Version 1.5-M2 ** Sub-task * [WICKET-777] - See what needs to be done in abstractpageableview * [WICKET-3016] - Port to 1.5 * [WICKET-3028] - remove obsoleted way of achieving this ** Bug * [WICKET-830] - FindBugs static alalyser shows many coding issues/errors * [WICKET-945] - WicketTester requiring itself to be serializable * [WICKET-1094] - Values over-escaped by FormTester * [WICKET-1185] - Wrong message / parse error: "Expected close tag for " * [WICKET-1448] - SubmitLink bypass jquery submit eventhandler * [WICKET-1456] - ImageMap blocks Image functionality * [WICKET-1727] - Prepending JS in AjaxRequestTarget via listener is unusable * [WICKET-1733] - WicketTester doesn't include form submitting component id in form submissions * [WICKET-1928] - Enter key submits form in AjaxEditableMultiLineLabel on Safari * [WICKET-1947] - rc1 generics - LabelTree * [WICKET-1949] - rc1 generics - BaseTree * [WICKET-1985] - AbstractTree breaks on multiple tree model events in the same request * [WICKET-2010] - InspectorPage doesn't show component tree * [WICKET-2115] - Make Component. 'protected List getBehaviors(Class' public * [WICKET-2150] - Wizard executes onSubmit() of wrong nested form * [WICKET-2254] - ModalWindow size may exceed browser viewport making it impossible to close * [WICKET-2262] - The starting of the ajax indicator don't respect AbstractDefaultAjaxBehavior preconditionScript * [WICKET-2265] - Drop AbstractHeaderContributor and friends * [WICKET-2324] - ModalWindow iframe CSS to wide * [WICKET-2401] - AJAX indicator turns off when calls overlap * [WICKET-2514] - Encoding issue with wicket Ajax POST form processing * [WICKET-2557] - Component.urlFor( ILinkListener.INTERFACE ) + various url coding strategies produce errorneus behavior * [WICKET-2676] - DataTable defines newCellItem to take IModel but should really do IModel> * [WICKET-2691] - Apply fixes from the named issues to 1.5 when API stabalizes * [WICKET-2728] - Location headers (redirects) should be absolute, not relative URLs * [WICKET-2739] - Throttling breaks AjaxFormSubmitBehavior's precondition check * [WICKET-2765] - MarkupException on unclosed tag * [WICKET-2774] - Form#onSubmit() not called in StatlessForm on pages mounted using WebPage#mountBookmarkablePage(String, Class) * [WICKET-2783] - FormTester.submit does not work with AjaxButtons * [WICKET-2794] - Not all exceptions are properly handled by the WicketFilter -> results in empty response document with unset status code -> seen as HTTP_OK by client * [WICKET-2807] - AjaxSubmitLink not calling the onsubmit event handler * [WICKET-2828] - IndexOutOfBoundsException is thrown in onBeforeRender when tabs is empty. * [WICKET-2848] - Rename yahoo-dom-event folder to something else * [WICKET-2849] - FormComponent.add(IValidator) should probably accept IValidator * [WICKET-2850] - Wicket DateTimeField / DatePicker creates a memory leak on the browser when rerenderd using ajax requests * [WICKET-2851] - Ajax responses do not update DOM correctly on Opera * [WICKET-2852] - Palette nested in a ListView results in a NPE when an error feedback is logged when submitting form * [WICKET-2854] - 'this.document' is null or not an object after quickly opening and closing a modal window (modal.js) * [WICKET-2863] - MockHttpServletResponse does not save Session cookies (maxAge = -1) * [WICKET-2886] - Tree doesn't update correctly * [WICKET-2905] - Select.isSelected fails when Wicket application is using REDIRECT_TO_RENDER render strategy. * [WICKET-2911] - continueToOriginalDestination does not work with mountBookmarkablePage and AjaxLink * [WICKET-2919] - inconsistency in property expression when using . for self reference * [WICKET-2931] - Form#getMaxSize - unsupported in the inner forms * [WICKET-2932] - Modal window titles need to be marked up as such, for accessibility * [WICKET-2933] - Form.MULTIPART_HINT is not cleared correctly with nested forms * [WICKET-2934] - FormTester creates parameters in mock request even for disabled form components * [WICKET-2935] - FormComponent#inputChanged does not properly check enabled/disabled status of the component * [WICKET-2941] - DatePicker fail with "firstDate is undefined" when an out of range date is written in the textfield * [WICKET-2944] - Application addRenderHeadListener causing error * [WICKET-2957] - Closing ModalWindow makes some form fields unclickable * [WICKET-2958] - Success handler not called when redirecting with Ajax * [WICKET-2972] - Some RepeaterView examples are not working * [WICKET-2974] - IFeedback that is child of IFeedback gets added to the FEEDBACK_LIST too late * [WICKET-2977] - AutoComplete onfocus behavior only working on last autocomplete field * [WICKET-2984] - Wicket Quickstart not working * [WICKET-2985] - DropDownChoice onSelectionChanged with setResponsePage causes weird exceptions * [WICKET-2988] - Ajax requests increment page version when they should not * [WICKET-2989] - Add IRequestMapper that can mount all pages in a package * [WICKET-2993] - ClassCastException when requesting for non-page class * [WICKET-2994] - Wicket 1.5M1 tarball is incomplete * [WICKET-2996] - if-modified-since checking is not working in AbstractResource * [WICKET-3001] - AjaxRequestTarget.get returns null within AjaxLink#onClick * [WICKET-3004] - Using RedirectPolicy.NEVER_REDIRECT when redirecting to a page will break URLs * [WICKET-3005] - wicket should keep the url of a page that caused a runtime error * [WICKET-3006] - redeploy in jetty 7 fails * [WICKET-3013] - org.apache.wicket.request.Url.QueryParameter is not Serializable * [WICKET-3014] - unable to launch StartExamples from IDEA (eventually other IDE's as well) * [WICKET-3018] - CheckGroupSelector ignores disabled-state in Check * [WICKET-3022] - All exceptions are handled by RequestCycle and no longer "visible" to WicketTester * [WICKET-3024] - HttpsRequestChecker inadvertently instantiates page when checking for annotation * [WICKET-3025] - DateTextField converter does not honor current locale * [WICKET-3027] - set Content-Type for package resources * [WICKET-3031] - Problem with date headers on error pages * [WICKET-3033] - Stack Overflow in getBeanDefinition()'s of SpringBeanLocator and AnnotProxyFieldValueFactory * [WICKET-3035] - there's something wrong with wicket's BaseTree (or with ajax support) * [WICKET-3038] - Return the possibility to create custom WebRequest/WebResponse per Application ** Improvement * [WICKET-563] - Let Application create error pages * [WICKET-776] - need to distinguish between statechange and hierarchychange * [WICKET-822] - add CPU information to WebClientInfo (or ClientProperties) * [WICKET-1620] - Portlet 2.0 support * [WICKET-1936] - Client-Side Image Map * [WICKET-2947] - IPropertyReflectionAwareModel should extend IModel * [WICKET-2964] - Improve the code that uses copy-list-on-iterate pattern * [WICKET-2978] - Usage of SimpleFormComponentLabel in FormInput example * [WICKET-2981] - Remove HeaderContributor and friends in favor of IHeaderContributor * [WICKET-2982] - IAjaxCallDecorator should receive Component as context * [WICKET-2983] - Make Component and IBehavior directly implement IHeaderContributor to make things simpler * [WICKET-3003] - Form.delegateSubmit: invoke onSubmit() of nested Forms before onSubmit() of enclosing Form * [WICKET-3019] - Add getPath to MarkupExceptions to aid in locatin affected components * [WICKET-3021] - Add timestamp part to resource filenames for better caching * [WICKET-3029] - PageParameters api too verbose, needs to be optimized ** New Feature * [WICKET-206] - Default page map is null, should be set to something more usable * [WICKET-537] - AjaxForm needed for full featured handling * [WICKET-1134] - Multiple abstract/implement tags instead of child/extend * [WICKET-1312] - Generic inter-component event mechanism ** Task * [WICKET-1082] - Check for concurrent access to HashMaps and other data structures * [WICKET-2976] - Remove support for portlets from Wicket 1.5 ** Wish * [WICKET-1883] - Refactor some constants in WebRequestCodingStrategy * [WICKET-2967] - org.apache.wicket.util.value.Count: add decrement method Release Notes - Wicket - Version 1.5-M1 Bug WICKET-2021 "When a form is not valid, the textfields become with ""raw input"" and can't change its model on subsequent requests" Bug WICKET-2298 Style and variant resolution is broken Bug WICKET-825 web browser displays empty page when WebPage mounted with HybridUrlCodingStrategy Bug WICKET-2372 Include component does not handle UTF-8 content correctly Bug WICKET-1343 HybridUrlCodingStrategy and StatelessForm ( or StatelessLink ) results in invalid parameter encoding Bug WICKET-2386 JavaDoc: Some JavDoc examples still refer to WicketServlet Bug WICKET-2396 DateField.newDateTextField's parameters should be generified Bug WICKET-2470 Building ThreadTest fails in trunk Bug WICKET-2558 FilterToolbar fails to render in 1.5-SS Bug WICKET-2544 Generified TabbedPanel constructor is too much inflexible Bug WICKET-2499 "in wicket 1.5, rename 1.4-SNAPSHOT to 1.5-SNAPSHOT" Bug WICKET-2569 Inheritance layout excludes XML header from output Bug WICKET-713 AbstractAjaxBehavior can not be reused. Bug WICKET-2839 ajax not working due to bugs in resource handling Bug WICKET-2636 Wicket enclosure cannot find wicket container children when hidden and in an extended page Bug WICKET-2812 Textarea ignores first line in case of blank line Bug WICKET-2956 WebApplication.onSessionDestroyed no longer invoked by anybody Bug WICKET-2426 """Couldn't resolve model type of Model"" for PasswordTextField" Bug WICKET-1029 Get Invalid Content-Length header returned by TCP junction server Bug WICKET-153 FormElement cookies not set when called using AJAX Bug WICKET-1140 Adding WebPage.html after viewing it once requires restart of servlet container for updates in developer mode. Improvement WICKET-96 Mechanism for extensible JS-contributing behaviors Improvement WICKET-1591 let BrowserInfoPage be customizable / extendable Improvement WICKET-2213 Remove FormComponent persistence Improvement WICKET-2280 Remove IComponentBorder in favor of IBehavior Improvement WICKET-2403 org.apache.wicket.markup.html.tree.WicketTreeModel should have a constructor taking a TreeModel Improvement WICKET-2571 o.a.wicket.ng.** Resource related classes don't take 'variation' into account Improvement WICKET-2820 change the Checkbox's onSelectionChanged to have a Boolean as the new selection Improvement WICKET-2924 Duplicated method implementation setDefaultFormProcessing for AbstarctSubmitLink and Button. Improvement WICKET-1238 Improve markup localization to support ajax rendering of dynamically generated components Improvement WICKET-1530 Mount resources by locale Improvement WICKET-2535 Improve consistency of ParseException error messages Improvement WICKET-2588 ExternalLink to take IModel instead of IModel for label Improvement WICKET-2612 create abstraction for content types Improvement WICKET-2398 AjaxFormSubmitBehavior cannot be applied to Form Improvement WICKET-2356 component report more informative message on error loading model object Improvement WICKET-2409 "Widen type-constraint on TextTemplate.interpolate(Map variables)" Improvement WICKET-2408 AjaxEditableLabel: allow starting edit programmatically Improvement WICKET-2450 Performance of ThumbnailImageResource Improvement WICKET-2238 Keep auto-components after rendering Improvement WICKET-2365 "Please support ""autowire-candidate"" attribute of a bean when injecting via @SpringBean" Improvement WICKET-2319 Performance of ThumbnailImageResource Improvement WICKET-2447 AjaxEditableLabel: newPanel - use Component instead of WebComponent for easier subclassing Improvement WICKET-2421 DefaultCssAutocompleteTextField should be renamed Improvement WICKET-2574 Fix some TODOs in 1.5-SNAPSHOT Improvement WICKET-2009 Update Quickstart to use archetype:generate goal instead of archetype:create New Feature WICKET-617 Optimize JavaScript and CSS downloads New Feature WICKET-2953 Implement page versioning in Wicket 1.5 New Feature WICKET-1261 New validator: validating range boundaries Sub-task WICKET-2494 "WICKET-1853 Outside form components problem" Test WICKET-2758 Patches for tests in trunk Wish WICKET-2543 AjaxRequestTarget#addComponent method using varargs Wish WICKET-1511 Control BookmarkablePageLink Parameter's order Wish WICKET-1937 Enclosure with fallback section