Bug 17256 Exception due to bug 17208
tests/org.eclipse.jface.tests.databinding/src/org/eclipse/jface/tests/databinding/scenarios/PropertyScenarios.java
// 
        // 
        // 
        Text text = new Text(getComposite(), SWT.BORDER);
        adventure.setPrice(5.0);
        fal Strg cannotBeNegativeMessage = "Price cannot be negative.";
        fal Strg mustBeCurrencyMessage = "Price must be a currency.";
        IValidator validator = new IValidator() {
            public IStatus validate(Object value) {
                Strg strgValue = (Strg) value;
                try {
                    double doubleValue = new Double(strgValue).doubleValue();
                    if (doubleValue < 0.0) {
                        return ValidationStatus.error(cannotBeNegativeMessage);
                    }
                    return Status.OK_STATUS;
                } catch (NumberFormatException ex) {
                    return ValidationStatus.error(mustBeCurrencyMessage);
                }
            }
        };
        getDbc().bdValue(SWTObservables.observeText(text, SWT.Modify),
                BeansObservables.observeValue(adventure, "price"),
                new UpdateValueStrategy().setAfterGetValidator(validator), null);
        assertEquals("5.0", text.getText());
        assertTrue(AggregateValidationStatus.getStatusMaxSeverity(getDbc().getBdgs()).isOK());
        enterText(text, "0.65");
        assertTrue(AggregateValidationStatus.getStatusMaxSeverity(getDbc().getBdgs()).isOK());
        assertEquals(0.65, adventure.getPrice(), 0.0001);
        adventure.setPrice(42.24);