Release notes
From OpenQuote
[edit] Release Notes - OpenQuote - Version 1.3EA2
Bug
- OQ-232 - OpenQuote fails to start on Linux
Fixed packaging of openquote-theme.war and other new wars added for 1.3. - OQ-233 - Product images corrupted
Build process updated to ignore .png files in the copy filters. - OQ-234 - Bluestone's quotation page cannot progress beyond the welcome page.
Production couldn't access the current user's login details because it wasn't configured with access to the portal authentication services. The QuotationPortlet was also updated to trap and persist this type of exception as it wasn't reported to the console or stored within the quotation.
Improvement
- OQ-225 - Themes and Layouts moved into a war in the openquote ear
All OpenQuote related themes have been moved from the base portal folders into a war within the openquote.ear. This greatly simplifies upgrades as the app is more self contained. - OQ-228 - Create themes specific to each demonstration product
The themes and content added to Irish Broker PI and LIfePlus to show the products operating within the context of a bigger website. - OQ-229 - Increase permgen space setting on JVM
JVM memory allocations increase recommended size to avoid Alfresco warnings during startup. - OQ-230 - Allow content browser's URL to be defined per portlet instance, not just per portlet.
Browser portlet can now be configured with a source URL per-instance rather than per-portlet. This makes the portlet itself more reusable. It also means the property is exposed in the portal admin screens and so does not require editing of portal descriptors. - OQ-231 - Make all the admin portlets available from admin's default portal
The portal administration pages have been moved onto the admin user's portal to make them a little easier to find.
[edit] Release Notes - OpenQuote - Version 1.3EA1
Improvement
- OQ-220 - Add FrightPlus sample product
A new demonstration product which has some unusual features, e.g.: using the first page of the quotation as a question page rather than a title; prompting for policy holder contact details after the quote has been offered. - OQ-221 - Move selenium tests into the products themselves
Each product's space in Alfresco now includes a "Test Suite" sub-folder. The selenium tests which used to sit in test.jar have been moved to give them a closer association with their product and to make them more accessible. - OQ-223 - Make CurrencyAmount immutable
The CurrencyAmount type is now immutable. This means that you now cannot change the amount or currency of an instance; instead a new instance must be created. This brings CurrencyAmount into line with some of Java's core types and makes it's use far safer. However, it also means that some of the old operations are no longer supported, and some have been modified. Theadd(CurrencyAmount),subtract(CurrencyAmount)andapply(Rate)methods have been altered so they no longer modify the instance they are invoked upon, but instead return new instance.
Where you previously used would have done:
total.add(additionalAmount);
you would replace this with:
total=total.add(additionalAmount);
The same is true for the
subtract()andapply()methods. The methods which modified the amount or currency properties have been removed. Where you previously might have changed a CurrencyAmount's currency as follows:total.setCurrency(Currency.GBP);
you would now replace this with:
total=new CurrancyAmount(total.getAmount(), Currency.GBP);
- OQ-225 - Themes and Layouts moved into a war in the openquote ear
- OQ-227 - Improve assessment sheet helper methods by removing rarely used arguments
In 1.3 the AssessmentSheet's helper methods which are typically used to create assessment sheet lines from rating spreadsheets, have been simplified and made more consistent. In versions of OpenQuote before 1.3, theaddLoading(),addDiscount(),addReferal(), andaddDecline()methods required aReference()as a second parameter. In practice, this was very rarely used, so in 1.3 it has been made optional.
If you are using any of these methods, and are currently passing a null as a second argument, simply remove the argument as in the following examples.
Replace:$AssessmentSheetArgRet.addLoading("$2", null, "total premium", "total premium", new Rate("$1"));
with:
$AssessmentSheetArgRet.addLoading("$2", "total premium", "total premium", new Rate("$1"));
Replace:
$AssessmentSheetArgRet.addReferral("$1", null);
with:
$AssessmentSheetArgRet.addReferral("$1");
Errors like the following during risk assessment indicate that your rating does pass nulls in the second argument to some of these methods.
Rule Compilation error : [Rule name=: Convictions Loadings & Referrals_208, agendaGroup=MAIN, salience=65328, no-loop=false] Product/AIL/Demo/MotorPlus/PolicyRating/Rule___Convictions_Loadings___Referrals_208_0.java (32:1386) : The method addLoading(String, Reference, String, String, Rate) is ambiguous for the type AssessmentSheet
New Feature
- OQ-85 - Product space descriptions untidy
In 1.3 the products have been restructured to follow the more recent convention of organising product content in sub-folders. The product's home folder typically now just holds the Registry.xml file. The old structure is still supported, and as before OpenQuote enforces no constraints on how you might choose to organise the content, but as the Base product has been included in the 1.3 restructuring exercise, you may need to make some changes to existing products.
In your product's Registry.xml, replace references to "BaseQuotation" and "BaseQuotationPageFlow" with "super.Quotation", and "super.QuotationPageFlow" respectively.
If your product references any resources in the Base product, you will need to updated those references to reflect the new structure. For example, if your QuotationPageFlow.xml contains references to HTML files in the Base product, those files have now moved into an "HTML" sub-folder.
As a result, you will need to replace URLs like:product://localhost:8080/AIL/Base/Welcome.html
with
product://localhost:8080/AIL/Base/HTML/Welcome.html
or shorthand references like:
~/Welcome.html
with
~/HTML/Welcome.html
The same applied to any references you might have in your Document definitions. - OQ-183 - New assessment sheet line that applies an minimum or maximum amount constraint to another line
For 1.3 the value of an assessment line can be constrained. A new set of AssessmentLine types have been added which allow you to define the minimum and maximum value that a named line may have, and what action should be taken if the value falls beyond these limits.
For example, the new lineConstrainValueOutOfBoundscan be used to limit the value of a "total premium" line. If the value exceeds the limits, it will be automatically set to the minimum or maximum value as appropriate, and a note line will be added to the assessment sheet to indicate that the action has been taken.
The newDeclineValueOutOfBoundsandReferValueOutOfBoundsperform the same function but the result of the constrained line's value falling outside the limits is either a referral or a decline.
These three new types of line have corresponding new methods on theAssessmentSheetclass to make it easy to add them during the rating process.
See the java docs onConstrainValueOutOfBounds,DeclineValueOutOfBounds,ReferValueOutOfBounds, andAssessmentSheetfor more details. - OQ-222 - Enhanced helper methods for rules
New methods have been added to com.ail.openquote.Functions to help with the creation of Facts in rating spreadsheets. Before 1.3 the rule spreadsheet had to define each fact individually using an XPATH to indicate where the data was in the Quotation object, and identifying that Fact with a name. This was generally done from the "RuleTable : Facts" section of the spreadsheet. While this approach is still supported in 1.3, it is not normally necessary as Facts can be automatically created.
Five new methods have been added to the com.ail.openquote.Functions class: autoAssertAll(), autoAssertSections(), autoAssertAssets(), autoAssertAttributes() and autoAssertAssetAttributes(). See the javadocs for details, but in summary these methods scan all or part of the Quotation and automatically identify and create Facts for the Attributes found. These Facts and all Sections and Assets are inserted into the rule engine's working memory. See the EquinePlus demonstration product for an example of this.
Task
- OQ-218 - Create 1.3 branch
[edit] Release Notes - OpenQuote - Version 1.2SP1
Bug
- OQ-224 - Spaces in the path cause errors in run.bat
Addresses an issue found when OpenQuote is installed on Windows in a folder with a spaces in the name.
[edit] Release Notes - OpenQuote - Version 1.2
Bug
- OQ-188 - Terms & Conditions section not rendered in quotation document
Quotation documents now correctly render Terms and Conditions section. The "industrial" document style template has been enhanced to include T&C sections as used in the MotorPlus demo product. - OQ-214 - Error in the user guide
Correction on page 17 - missing value attribute in example - OQ-216 - Installation instructions need updating to match latest installation procedure
The installation notes have have been updated to cover 1.2 installation process. Once you've unpacked an OpenQuote zip, you will find these notes in the docs/ folder. They are also on the wiki here: http://openquotecommunity.org/wiki/index.php/From_Release_Binary - OQ-217 - User Guide needs updating to match 1.2
The user guide has been updated to cover features specific to the 1.2 release. This document can be found in the docs/ folder of the OpenQuote installation, and on the home page of any installed OpenQuote server.
[edit] Release Notes - OpenQuote - Version 1.2RC3
Bug
- OQ-187 - Alfresco major/minor check-in labels reversed
- OQ-189 - Link to sample policy wordings does not work
Sample wording link on quotations page corrected to use an externally accessible URL. If the wording is held within Alfresco, the document's permissions must allow for external access (i.e. the Guest user has Consumer rights).
Improvement
- OQ-186 - Add google analytics to portal layouts
Added google analytics to the footer of portal page layouts.
Task
- OQ-185 - Add LifePlus to the home page
Added link to new TermLife product quote page to the home page.
[edit] Release Notes - OpenQuote - Version 1.2RC2
Bug
- OQ-182 - OpenQuote hangs when the Sandpit tab is opened
RC1 issues with the deployment of product content during installation process fixed. Under RC1 product content was not being correctly setup when the server was first started.
[edit] Release Notes - OpenQuote - Version 1.2RC1
Improvements
- OQ-181 - Document apparent problems with window's zip tool in installation notes
[edit] Release Notes - OpenQuote - Version 1.2EA2
Bugs
- OQ-132 - In a PageFlow RowScrollers cannot be embedded in QuestionSections
PageSections within PageFlows now correctly pass renderHeader requests down to their sub-elements. Among other things, this now means that RowScrollers embedded with a PageSection correctly render drop downs based of attributes of type choice. In the past an empty drop down would have been rendered. - OQ-145 - Question validation ignores question condition rules.
PageFlow validations (and request/model value binding) now respects the element's "condition" property. Prior to this release a PageFlow element's "condition" property could be user to prevent it from being rendered, now it also prevents binding and validation form taking place for that element. - OQ-167 - RowScroller add and remove buttons can't be used from selenium tests
The RowScroller add and remove buttons used to be assigned randomly generated IDs in the form '#xxxxxx". Being random, tools like Selenium could not reliably drive the screens during testing. As of 1.2 all elements are given unique IDs in the form OQX-X-X-X.... based on their page positing and nesting in the PageFlow. - OQ-169 - The 'required' option doesn't work on yesorno questions
- OQ-170 - Choice attribute format only supports '?' as a default value.
It is now possible to "translate" the values in a choice attribute's option list into language or product specific strings for use on the user interface. Internally, within the product's model, the representation remains unchanged from previous releases. For example: <attribute ... format="choice,options=-1#?|1#Male|2#Female"/>. However, during the rendering process the values ("?", "Male", "Female" in this case) are passed through OpenQuote's I18N process allowing them to be overriden by a product specific translation. If, for example, you wanted to use '-' rather than '?' to represent the undefined value on the UI, and show "Male" as "Man" and "Female" as "Woman" you would add the following Translations.xml file to your product:<translations defaultLanguage="en" xsi:type="java:com.ail.core.language.Translations" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <translation language="en"> <element key="i18n_?">-</element> <element key="i18n_Male">Man</element> <element key="i18n_Female">Woman</element> </translation> </translations>
You also need to have the following in your product's Registry.xml to allow your product's Translations to extend those in the Base product:
<configuration ...> ... <type name="Translations" builder="CastorXMLBuilder" singleInstance="true" key="com.ail.core.language.Translations"> <parameter name="Extends">super.Translations</parameter> <parameter name="Url">./Translations.xml</parameter> </type> ... </configuration>
- OQ-171 - Switching the browser locale does not affect the rendering of locale specific fields
Fix to ensure that the browser's locale is correctly passed into the page rendering process such that both UI widgets and other services can see it. - OQ-174 - QuestionWithSubSection doesn't enable the subsection on refresh for radio buttons
QuestionWithSubsection fixed so that it opens correctly when the question is rendered as radio buttons. - OQ-175 - Choice AttributeFields based on a Type do not validate correctly
Validation fixed so that an undefined selection ("?" by default) is caught during validation even if the "?" symbol has been overriden by I18N settings. I18N can be used to replace the default "?" symbol, which choice lists generally use to indicate that a selection is needed, with another symbol. Prior to this fix, do that would result in validation assuming that a selection had been made. - OQ-178 - questionWithDetails sub details bug if renderHint="radio"
QuestionWithDetails with renderHint="radio" will now correctly disable all of the detail question's radio buttons. - OQ-179 - Question validation ignores parent question/page section condition rules.
When a PageContainer (e.g. PageSection, QuestionSection, etc, etc) defines a condition to control whether it is or is not rendered, that condition is now taken to apply to the contents of the container too and prevents the contents from being validated. If the user cannot see the content, validation is not performed.
Improvements
- OQ-172 - Remove errors logged during startup and normal operation if they are not significant
In a number of areas suprious or unnecessary logging has been removed. Most notably, the exceptions thrown by Alfresco in response to requests for content that does not exist are now turned off as this represents normal activitiy. The server now simply returns a 404 instead. Warning messages related to type merging/cloning are also avoided now. - OQ-173 - Add automatic reformatting of numbers to locale specific formats on field exit
The AttributeField widget now uses NumberFormat (http://www.mredkj.com/javascript/numberFormatPage2.html) to reformat number in a locale sympathetic way on field exit.
[edit] Release Notes - OpenQuote - Version 1.2EA1
Bugs
- OQ-149 - Exception thrown during broker email render
- OQ-160 - PageScript does not inject JavaScript into generated pages
- OQ-163 - QuestionWithDetails and QuestionWithSubsection ignore the detailsEnabledFor setting
Improvements
- OQ-155 - Generic portlet that can be used to access any product
- OQ-162 - html and xforms forms need to refect questions mandatory status
- OQ-164 - Allow QuestionWithSubSection to contain many sub-element, not just one
New Features
- OQ-159 - Improved eclipse support for product development

