Example usage for org.springframework.beans BeanWrapper setPropertyValue

List of usage examples for org.springframework.beans BeanWrapper setPropertyValue

Introduction

In this page you can find the example usage for org.springframework.beans BeanWrapper setPropertyValue.

Prototype

void setPropertyValue(String propertyName, @Nullable Object value) throws BeansException;

Source Link

Document

Set the specified value as current property value.

Usage

From source file:net.sf.juffrou.reflect.spring.BeanWrapperTests.java

@Test
public void testWildcardedGenericEnum() {
    WildcardEnumConsumer consumer = new WildcardEnumConsumer();
    BeanWrapper bw = new JuffrouSpringBeanWrapper(consumer);
    bw.setPropertyValue("enumValue", TestEnum.class.getName() + ".TEST_VALUE");
    assertEquals(TestEnum.TEST_VALUE, consumer.getEnumValue());
}

From source file:net.sf.juffrou.reflect.spring.BeanWrapperTests.java

@Test
public void testTypeMismatch() {
    TestBean t = new TestBean();
    try {/*from ww  w. ja  v  a2 s . c  o  m*/
        BeanWrapper bw = new JuffrouSpringBeanWrapper(t);
        bw.setPropertyValue("age", "foobar");
        fail("Should throw exception on type mismatch");
    } catch (TypeMismatchException ex) {
        // expected
    }
}

From source file:net.sf.juffrou.reflect.spring.BeanWrapperTests.java

@Test
public void testBooleanObject() {
    BooleanTestBean tb = new BooleanTestBean();
    BeanWrapper bw = new JuffrouSpringBeanWrapper(tb);

    bw.setPropertyValue("bool2", "true");
    assertTrue("Correct bool2 value", Boolean.TRUE.equals(bw.getPropertyValue("bool2")));
    assertTrue("Correct bool2 value", tb.getBool2().booleanValue());

    bw.setPropertyValue("bool2", "false");
    assertTrue("Correct bool2 value", Boolean.FALSE.equals(bw.getPropertyValue("bool2")));
    assertTrue("Correct bool2 value", !tb.getBool2().booleanValue());

}

From source file:net.sf.juffrou.reflect.spring.BeanWrapperTests.java

@Test
public void testEmptyValueForPrimitiveProperty() {
    TestBean t = new TestBean();
    try {// www . java 2s .co m
        BeanWrapper bw = new JuffrouSpringBeanWrapper(t);
        bw.setPropertyValue("age", "");
        fail("Should throw exception on type mismatch");
    } catch (TypeMismatchException ex) {
        // expected
    } catch (Exception ex) {
        fail("Shouldn't throw exception other than Type mismatch");
    }
}

From source file:net.sf.juffrou.reflect.spring.BeanWrapperTests.java

@Test
public void testPropertiesProperty() throws Exception {
    PropsTester pt = new PropsTester();
    BeanWrapper bw = new JuffrouSpringBeanWrapper(pt);
    bw.setPropertyValue("name", "ptest");

    // Note format...
    String ps = "peace=war\nfreedom=slavery";
    bw.setPropertyValue("properties", ps);

    assertTrue("name was set", pt.name.equals("ptest"));
    assertTrue("props non null", pt.props != null);
    String freedomVal = pt.props.getProperty("freedom");
    String peaceVal = pt.props.getProperty("peace");
    assertTrue("peace==war", peaceVal.equals("war"));
    assertTrue("Freedom==slavery", freedomVal.equals("slavery"));
}

From source file:net.sf.juffrou.reflect.spring.BeanWrapperTests.java

@Test
public void testPossibleMatches() {
    TestBean tb = new TestBean();
    try {//from w  w w  .  j  av a  2 s  .  c om
        BeanWrapper bw = new JuffrouSpringBeanWrapper(tb);
        bw.setPropertyValue("ag", "foobar");
        fail("Should throw exception on invalid property");
    } catch (NotWritablePropertyException ex) {
        // expected
        assertEquals(1, ex.getPossibleMatches().length);
        assertEquals("age", ex.getPossibleMatches()[0]);
    }
}

From source file:net.sf.juffrou.reflect.spring.BeanWrapperTests.java

@Test
public void testEnumByFieldName() {
    EnumTester et = new EnumTester();
    BeanWrapper bw = new JuffrouSpringBeanWrapper(et);

    bw.setPropertyValue("autowire", "BY_NAME");
    assertEquals(Autowire.BY_NAME, et.getAutowire());

    bw.setPropertyValue("autowire", "  BY_TYPE ");
    assertEquals(Autowire.BY_TYPE, et.getAutowire());

    try {/*from  www  .  j a  va2 s  .  c o m*/
        bw.setPropertyValue("autowire", "NHERITED");
        fail("Should have thrown TypeMismatchException");
    } catch (TypeMismatchException ex) {
        // expected
    }
}

From source file:net.sf.juffrou.reflect.spring.BeanWrapperTests.java

@Test
public void testSetNestedProperty() throws Exception {
    ITestBean rod = new TestBean("rod", 31);
    ITestBean kerry = new TestBean("kerry", 0);

    BeanWrapper bw = new JuffrouSpringBeanWrapper(rod);
    bw.setPropertyValue("spouse", kerry);

    assertTrue("nested set worked", rod.getSpouse() == kerry);
    assertTrue("no back relation", kerry.getSpouse() == null);
    bw.setPropertyValue(new PropertyValue("spouse.spouse", rod));
    assertTrue("nested set worked", kerry.getSpouse() == rod);
    assertTrue("kerry age not set", kerry.getAge() == 0);
    bw.setPropertyValue(new PropertyValue("spouse.age", new Integer(35)));
    assertTrue("Set primitive on spouse", kerry.getAge() == 35);

    assertEquals(kerry, bw.getPropertyValue("spouse"));
    assertEquals(rod, bw.getPropertyValue("spouse.spouse"));
}

From source file:net.sf.juffrou.reflect.spring.BeanWrapperTests.java

@Test
public void testIndividualAllValid() {
    TestBean t = new TestBean();
    String newName = "tony";
    int newAge = 65;
    String newTouchy = "valid";
    try {//  ww w . j a  va  2 s.  co  m
        BeanWrapper bw = new JuffrouSpringBeanWrapper(t);
        bw.setPropertyValue("age", new Integer(newAge));
        bw.setPropertyValue(new PropertyValue("name", newName));
        bw.setPropertyValue(new PropertyValue("touchy", newTouchy));
        assertTrue("Validly set property must stick", t.getName().equals(newName));
        assertTrue("Validly set property must stick", t.getTouchy().equals(newTouchy));
        assertTrue("Validly set property must stick", t.getAge() == newAge);
    } catch (BeansException ex) {
        fail("Shouldn't throw exception when everything is valid");
    }
}

From source file:net.sf.juffrou.reflect.spring.BeanWrapperTests.java

@Test
public void testSetNestedPropertyPolymorphic() throws Exception {
    ITestBean rod = new TestBean("rod", 31);
    ITestBean kerry = new Employee();

    BeanWrapper bw = new JuffrouSpringBeanWrapper(rod);
    bw.setPropertyValue("spouse", kerry);
    bw.setPropertyValue("spouse.age", new Integer(35));
    bw.setPropertyValue("spouse.name", "Kerry");
    bw.setPropertyValue("spouse.company", "Lewisham");
    assertTrue("kerry name is Kerry", kerry.getName().equals("Kerry"));

    assertTrue("nested set worked", rod.getSpouse() == kerry);
    assertTrue("no back relation", kerry.getSpouse() == null);
    bw.setPropertyValue(new PropertyValue("spouse.spouse", rod));
    assertTrue("nested set worked", kerry.getSpouse() == rod);

    BeanWrapper kbw = new JuffrouSpringBeanWrapper(kerry);
    assertTrue("spouse.spouse.spouse.spouse.company=Lewisham",
            "Lewisham".equals(kbw.getPropertyValue("spouse.spouse.spouse.spouse.company")));
}