2.0 to 2.1.0-m2
MaintenanceDocumentDictionaryService/TransactionalDocumentDictionaryService in org.kuali.rice.kns.service changes
KULRICE-6730 - Remove getBusinessRulesClass from MaintenanceDocumentDictionaryServiceImpl and TransactionalDocumentDictionaryServiceImpl
The following method has been removed from org.kuali.rice.kns.service.MaintenanceDocumentDictionaryService and org.kuali.rice.kns.service.impl.MaintenanceDocumentDictionaryServiceImpl
public Class<? extends BusinessRule> getBusinessRulesClass(MaintenanceDocument document);
The following method has been removed from org.kuali.rice.kns.service.TransactionalDocumentDictionaryService and org.kuali.rice.kns.service.impl.TransactionalDocumentDictionaryServiceImpl
public Class<? extends BusinessRule> getBusinessRulesClass(TransactionDocument document);
KULRICE-6842 - Database: Disallow requests for null principals
To apply this change, run the SQL in scripts/upgrades/2.0.0 to 2.1/db-updates/2012-02-27.sql (for Oracle) or scripts/upgrades/2.0.0 to 2.1/db-updates/mysql-2012-02-27.sql (for MySQL).
KULRICE-5382 - document type label is not required on the document type document, but it's the only thing displayed many places and the kns blows up if it's not specified
To apply this change, run the SQL in scripts/upgrades/2.0.0 to 2.1/db-updates/2012-03-05.sql (for Oracle) or scripts/upgrades/2.0.0 to 2.1/db-updates/mysql-2012-03-05.sql (for MySQL).
KULRICE-6916 - KRIM_ENTITY_CACHE_T.PRSN_NM is too small
To apply this change, run the SQL in scripts/upgrades/2.0.0 to 2.1/db-updates/2012-03-13.sql (for Oracle) or scripts/upgrades/2.0.0 to 2.1/db-updates/mysql-2012-03-13.sql (for MySQL).
2.1.0-m2 to 2.1.0-m3
KULRICE-6784 - Add index and constraint on KREW_RULE_ATTR_T.NM
To apply this change, run the SQL in scripts/upgrades/2.0.0 to 2.1/db-updates/2012-04-04.sql (for Oracle) or scripts/upgrades/2.0.0 to 2.1/db-updates/mysql-2012-04-04.sql (for MySQL).
KULRICE-5931 - Recall from Routing Enhancement for KNS / KEW
To apply this change, run the following SQL scripts for Oracle:
- scripts/upgrades/2.0.0 to 2.1/db-updates/2012-03-20.sql
- scripts/upgrades/2.0.0 to 2.1/db-updates/2012-03-28.sql
- scripts/upgrades/2.0.0 to 2.1/db-updates/2012-04-11.sql
- scripts/upgrades/2.0.0 to 2.1/db-updates/2012-04-12.sql
or the following SQL scripts for MySQL:
- scripts/upgrades/2.0.0 to 2.1/db-updates/mysql-2012-03-20.sql
- scripts/upgrades/2.0.0 to 2.1/db-updates/mysql-2012-03-28.sql
- scripts/upgrades/2.0.0 to 2.1/db-updates/mysql-2012-04-11.sql
- scripts/upgrades/2.0.0 to 2.1/db-updates/mysql-2012-04-12.sql
KULRICE-6964 - Update Rice default From email address
To apply this change, run the SQL in scripts/upgrades/2.0.0 to 2.1/db-updates/2012-04-16b.sql (for Oracle) or scripts/upgrades/2.0.0 to 2.1/db-updates/mysql-2012-04-16b.sql (for MySQL).
KULRICE-6946 - Responsibility data of the "Responsibility Details" section does not persist (KULRICE-7128 - DATABASE: Link 'qualifierResolverProvidedIdentifier' attribute to Responsibility type)
To apply this change, run the SQL in scripts/upgrades/2.0.0 to 2.1/db-updates/2012-04-16.sql (for Oracle) or scripts/upgrades/2.0.0 to 2.1/db-updates/mysql-2012-04-16.sql (for MySQL).
KULRICE-6611 - Correct KRMS type attributes for Validation Action & Rule in database
To apply this change, run the SQL in scripts/upgrades/2.0.0 to 2.1/db-updates/2012-04-25.sql (for Oracle) or scripts/upgrades/2.0.0 to 2.1/db-updates/mysql-2012-04-25.sql (for MySQL).
Configure Rice without KRAD (KNS Only)
In some cases it may be desirable to only use the KNS without KRAD. For example if you're timelines push a conversion to KRAD out into the future, you may see some benefits with startup performance and with memory usage.
You can override the kradApplicationModuleConfiguration bean to not include any of the files in the UIF folder. That is, you only need to include these files:
Likewise, this can be done for the ‘baselinePackages’ property on the dataDictionaryService bean.
2.1.0-m3 to 2.1.0
KULRICE-6282 - AdHoc Route to Completion - MSU Contribution
To apply this change, run the SQL in scripts/upgrades/2.0.0 to 2.1/db-updates/2012-05-11.sql (for Oracle) or scripts/upgrades/2.0.0 to 2.1/db-updates/mysql-2012-05-11.sql (for MySQL).
KULRICE-7232 - KRNS_NTE_T is selected by a field with no indexes - full table scan every time
To apply this change, run the SQL in scripts/upgrades/2.0.0 to 2.1/db-updates/2012-05-17.sql (for Oracle) or scripts/upgrades/2.0.0 to 2.1/db-updates/mysql-2012-05-17.sql (for MySQL).
KULRICE-7344 - Database updates for krim_perm_attr_data_t org.kuali.rice.kew.batch.web.IngesterAction ATTR_VAL
To apply this change, run the SQL in scripts/upgrades/2.0.0 to 2.1/db-updates/2012-05-21.sql (for Oracle) or scripts/upgrades/2.0.0 to 2.1/db-updates/mysql-2012-05-21.sql (for MySQL).
KULRICE-7377 - KREW_RTE_NODE_T still defines DOC_TYP_ID as NUMBER(19)
To apply this change, run the SQL in scripts/upgrades/2.0.0 to 2.1/db-updates/2012-05-24.sql (for Oracle) or scripts/upgrades/2.0.0 to 2.1/db-updates/mysql-2012-05-24.sql (for MySQL).
2.0 to 2.2.0-m1
The following changes impact KRAD UIF configuration (XML). Mostly these should be covered by the Bean/CSS conversion script documented below.
KULRICE-7219 - Pass title property through to tag attribute on all components
Previously the component title property was be used for various purposes. For example on Containers the title was used as a shorthand for setting header.headerText. The title property should be getting passed to the template and used to populate the title attribute on the corresponding tag (for example on a group this would be the div). Therefore the change was made to pass this through and add to the tags. The container property 'headerText' was added as a shorthand for setting the header.headerText property. The bean conversion script converts title to headerText. However it must be used with care since this should only be converted on containers (view and group), and not other components (like image or link).
KULRICE-7215 - Cleanup of Component Property Names
Many component property names were changed to better reflect their purpose. The bean conversion script will take care of renaming the properties in XML configuration. For a full listing of changed property names, see the project file 'beanReplacements.txt'.
KULRICE-7213 - Add Upper, Right, and Lower groups to Header
To provide more flexibility for adding header content, three groups were added to the Header component. These groups correspond to their render position relative to the h tag (header text). The first is named upperGroup and will render above the header text. The second is named rightGroup and will render to the right of the header text. The third is named lowerGroup and is rendered below the header text. One or more of these groups can have content for a single header.
The previous Header group named headerGroup has been replaced by the lowerGroup. The bean conversion script will convert any configuration on headerGroup to lowerGroup. If the content was intended to align to the right of the header text, this will need to be manually changed to rightGroup.
KULRICE-6837 - Framework Improvements - Introduction of Content Element
Previously all HTML content was rendered through a Field component. The field wrapped the content with a span and could also render a label. For some content types this did not make sense (for example iframe, label, and header). In addition, for others it might be useful to have a label, but general not needed (link, action, image). Therefore a component type named ContentElement was introduced. A content element corresponds directly with the HTML content tag without additional wrapping. For the first set of fields described above (iframe, label, header), a content element was created and the field was removed. For the second set content elements were created, but the field component remains.
Mostly the impact of this was taken care of by the base bean definitions. In some cases the actual bean id changed which is handled by the bean conversion script. In cases where the field support remains but there is now a content element, application XML should be reviewed for places where it makes sense to change to the content element.
KULRICE-6839 - CSS Rework
An effort begin towards the end of the 2.0 cycle to rework the KRAD CSS code. This began with implementing a naming convention and standard for applying style classes to components. This work was completed in 2.2 M1 with the rework of the style sheets. This included rewriting styles to correspond with the new classes and removing any old code. Changed style names within the UIF XML can be converted using the CssRename.groovy script. Custom style sheets will need to be updated manually.
KULRICE-6672 - Framework Improvements - Validation Message Architecture
Validation message handling has changed significantly in 2.2 M1. The new architecture addresses many issues, primary among these being accessibility. The ErrorsField component has been dropped and replaced with the ValidationMessages component (with subclasses PageValidationMessages, GroupValidationMessages, and FieldValidationMessages). Many properties of ErrorsField are no longer available. These changes include:
- All original properties other than displayMessages, displayFieldLabelWithMessages (now section/page level only), and additionalKeysToMatch have been eliminated as they no longer serve a purpose in the new framework. Remove these properties from beans if in use.
- 2 new properties were introduced:
- collapseAdditionalFieldLinkMessages (section/page level only) - for collapsing fieldLink messages in a summary for messages beyond the first for section level summaries. KRAD and UX recommended default is true.
- useTooltip (field level only) - for using tooltip to display validation messages. KRAD and UX recommended default is true.
- The way messages are displayed on the page and user interaction with these messages were changed heavily. These changes include:
- Validation messages are summarized at the page level with links to sections which contain the messages
- Validation message text for fields are links to those fields which will cause those fields to be focused
- Validation message text is shown in tooltips for fields when focused or hovered over
- When server errors are attempted to be fixed by the user, the field is marked as modified (if no client error persists)
- When displayMessages flag switched to false, the framework will attempt to show the message content in the "next" available message area
- When a user tries to submit a page that still has client-side errors the new summaries will appear
- When a page has server side messages these new sumaries will appear
- Various highlighting and color styling changes associated with the framework
- See the Validation Framework demo view in the sample app to get a full demonstration of all new features introduced
Some property names have changed which is handled by the bean conversion script.
KULRICE-6674 - UI Framework - Online Help architecture
The help URL on the document and lookup level has been removed from the KEW document type. This means the "Help Definition URL" and the "Document Search Help URL" on the "Document Type" are depreciated and don't serve any function anymore. Instead the help URL are defined on the UIF-View level either within the data dictionary or the system parameters.
KULRICE-7218 - Combine Inquiry and DirectInquiry
In 2.0, the Inquiry and DirectInquiry were separate widgets with separate properties on InputField. Therefore, when both were required both had to be configured with similar properties. This caused duplicate configuration. In 2.2, the DirectInquiry widget has been removed and the Inquiry widget supports rendering the direct inquiry when the field is not read-only. The direct inquiry behavior can be disabled with the Inquiry property enableDirectInquiry.
Any configuration referencing fieldDirectInquiry will need to be converted to the property named inquiry. Note if the standard inquiry and direct inquiry were both configured for a field, the direct inquiry can simply be dropped. If you were disabling the direct inquiry by fieldDirectInquiry.render="false", this can be changed to inquiry.enableDirectInquiry. The bean conversion script makes this change.
KULRICE-7217 - Growls Processing
The process for adding growl messages server side has been modified. In 2.0, a growl was shown for each message in the GlobalVariables.getMessageMap() that was of type Info. The MessageMap has been enhanced to support a new growl type. For adding growls you now should call one of the following methods:
No changes were made for adding growls client side (still call the method showGrowl(message, title, theme))
KULRICE-7032 - Allow controller to return one way regardless of component refresh or full build
In Rice 2.0, a controller method needed to be built based on whether it would be called as part of a component refresh, or a full request. This was confusing as it required knowledge of the different refresh return method and prevented the method from being used for both types of calls. In 2.2, the controller methods no longer need to make this distinction. They can simply return the standard getUifModelAndView call for both component refresh and full requests.
Any controller methods that were returning updateComponent(uiTestForm, result, request, response) should be replace the return call with getUIFModelAndView(form).
KULRICE-7030 - Default action field prototype on Table layout manager to horizontal
The default layout for the action field group rendered by a table layout manager was changed from vertical box to horizontal box. This means for table with multiple line actions, the actions will now render in a horizontal row instead of vertical. If it is desired to have the actions align vertically, the actionFieldPrototype can be overridden.
KULRICE-7010 - Upgrade of jQuery to 1.7.2
The jQuery library in KRAD was upgraded from 1.6.3 to 1.7.2. Mostly this should not have an impact on applications. There were a couple of removed methods that might impact custom script. These and other notes can be found in the jQuery release notes:
KULRICE-6864 - Cleanup of UIF Footer Beans
In Rice 2.0 the Uif-FormView bean contained a footer defined that included the save, close, and cancel actions. The Uif-FormView bean has been changed to not include any footer actions by default. For these common actions, a bean named 'Uif-FormFooter' was created that can be used for a view or page when needed.