Example usage for org.springframework.beans BeanWrapper getPropertyValue

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

Introduction

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

Prototype

@Nullable
Object getPropertyValue(String propertyName) throws BeansException;

Source Link

Document

Get the current value of the specified property.

Usage

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

@Test
public void testGenericListOfArrays() throws MalformedURLException {
    GenericBean<String> gb = new GenericBean<String>();
    ArrayList<String[]> list = new ArrayList<String[]>();
    list.add(new String[] { "str1", "str2" });
    gb.setListOfArrays(list);/*from   w ww.  jav a 2  s .c o m*/
    BeanWrapper bw = new JuffrouSpringBeanWrapper(gb);
    bw.setPropertyValue("listOfArrays[0][1]", "str3 ");
    assertEquals("str3 ", bw.getPropertyValue("listOfArrays[0][1]"));
    assertEquals("str3 ", gb.getListOfArrays().get(0)[1]);
}

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

@Test
public void testGenericMapOfListsWithElementConversion() throws MalformedURLException {
    GenericBean<String> gb = new GenericBean<String>();
    Map<Integer, List<Integer>> map = new HashMap<Integer, List<Integer>>();
    map.put(new Integer(1), new LinkedList<Integer>());
    gb.setMapOfLists(map);/*from   ww  w  .ja v  a  2 s  . com*/
    BeanWrapper bw = new JuffrouSpringBeanWrapper(gb);
    bw.setPropertyValue("mapOfLists[1][0]", "5");
    assertEquals(new Integer(5), bw.getPropertyValue("mapOfLists[1][0]"));
    assertEquals(new Integer(5), gb.getMapOfLists().get(new Integer(1)).get(0));
}

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

@Test
public void testGenericListOfListsWithElementConversion() throws MalformedURLException {
    GenericBean<String> gb = new GenericBean<String>();
    List<List<Integer>> list = new LinkedList<List<Integer>>();
    list.add(new LinkedList<Integer>());
    gb.setListOfLists(list);//from  w w w. j  a  v a 2s.c  om
    BeanWrapper bw = new JuffrouSpringBeanWrapper(gb);
    bw.setPropertyValue("listOfLists[0][0]", "5");
    assertEquals(new Integer(5), bw.getPropertyValue("listOfLists[0][0]"));
    assertEquals(new Integer(5), gb.getListOfLists().get(0).get(0));
}

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

@Test
public void testGenericMapOfMapsWithElementConversion() throws MalformedURLException {
    GenericBean<String> gb = new GenericBean<String>();
    Map<String, Map<Integer, Long>> map = new HashMap<String, Map<Integer, Long>>();
    map.put("mykey", new HashMap<Integer, Long>());
    gb.setMapOfMaps(map);/*from   w ww . j a  v a 2s . co m*/
    BeanWrapper bw = new JuffrouSpringBeanWrapper(gb);
    bw.setPropertyValue("mapOfMaps[mykey][10]", "5");
    assertEquals(new Long(5), bw.getPropertyValue("mapOfMaps[mykey][10]"));
    assertEquals(new Long(5), gb.getMapOfMaps().get("mykey").get(10));
}

From source file:org.brushingbits.jnap.common.bean.visitor.BeanPropertyVisitor.java

protected void handleBean(Object source, Class<?> type) {
    context.nextLevel();// w w  w.  ja v a  2 s  .  co  m
    visitBean(source, type);
    BeanWrapper sourceBean = PropertyAccessorFactory.forBeanPropertyAccess(source);
    PropertyDescriptor[] beanProperties = BeanUtils.getPropertyDescriptors(type);
    for (PropertyDescriptor propertyDescriptor : beanProperties) {
        String name = propertyDescriptor.getName();
        context.pushPath(name);
        if (sourceBean.isReadableProperty(name)) {
            Object value = sourceBean.getPropertyValue(name);
            visit(value);
        }
        context.popPath();
    }
    context.prevLevel();
}

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

@Test
public void testGenericListOfMaps() throws MalformedURLException {
    GenericBean<String> gb = new GenericBean<String>();
    List<Map<Integer, Long>> list = new LinkedList<Map<Integer, Long>>();
    list.add(new HashMap<Integer, Long>());
    gb.setListOfMaps(list);//from w w  w .  j  a v a2s.com
    BeanWrapper bw = new JuffrouSpringBeanWrapper(gb);
    bw.setPropertyValue("listOfMaps[0][10]", new Long(5));
    assertEquals(new Long(5), bw.getPropertyValue("listOfMaps[0][10]"));
    assertEquals(new Long(5), gb.getListOfMaps().get(0).get(10));
}

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

@Test
public void testGenericMapOfMaps() throws MalformedURLException {
    GenericBean<String> gb = new GenericBean<String>();
    Map<String, Map<Integer, Long>> map = new HashMap<String, Map<Integer, Long>>();
    map.put("mykey", new HashMap<Integer, Long>());
    gb.setMapOfMaps(map);//w  w w  . j  ava 2s . co m
    BeanWrapper bw = new JuffrouSpringBeanWrapper(gb);
    bw.setPropertyValue("mapOfMaps[mykey][10]", new Long(5));
    assertEquals(new Long(5), bw.getPropertyValue("mapOfMaps[mykey][10]"));
    assertEquals(new Long(5), gb.getMapOfMaps().get("mykey").get(10));
}

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

@Test
public void testGenericMapOfLists() throws MalformedURLException {
    GenericBean<String> gb = new GenericBean<String>();
    Map<Integer, List<Integer>> map = new HashMap<Integer, List<Integer>>();
    map.put(new Integer(1), new LinkedList<Integer>());
    gb.setMapOfLists(map);/*  w ww.  j a  va 2 s  .  c  o  m*/
    BeanWrapper bw = new JuffrouSpringBeanWrapper(gb);
    bw.setPropertyValue("mapOfLists[1][0]", new Integer(5));
    assertEquals(new Integer(5), bw.getPropertyValue("mapOfLists[1][0]"));
    assertEquals(new Integer(5), gb.getMapOfLists().get(new Integer(1)).get(0));
}

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

@Test
public void testGenericListOfLists() throws MalformedURLException {
    GenericBean<String> gb = new GenericBean<String>();
    List<List<Integer>> list = new LinkedList<List<Integer>>();
    list.add(new LinkedList<Integer>());
    gb.setListOfLists(list);//from   w w w  . j a  v a 2 s  .c o m
    BeanWrapper bw = new JuffrouSpringBeanWrapper(gb);
    bw.setPropertyValue("listOfLists[0][0]", new Integer(5));
    assertEquals(new Integer(5), bw.getPropertyValue("listOfLists[0][0]"));
    assertEquals(new Integer(5), gb.getListOfLists().get(0).get(0));
}

From source file:org.terasoluna.gfw.web.el.ObjectToMapConverter.java

/**
 * Convert the given object to the flattened map.
 * <p>//w w w .jav  a 2 s  .c o m
 * Return empty map if the object is null.
 * </p>
 * @param prefix prefix of the key
 * @param object object to convert
 * @return converted map. all keys are prefixed with the given key
 * @see ObjectToMapConverter
 */
public Map<String, String> convert(String prefix, Object object) {
    Map<String, String> map = new LinkedHashMap<String, String>();

    // at first, try to flatten the given object
    if (flatten(map, "", prefix, object, null)) {
        return map;
    }

    // the given object is a Java Bean
    BeanWrapper beanWrapper = PropertyAccessorFactory.forBeanPropertyAccess(object);
    PropertyDescriptor[] pds = beanWrapper.getPropertyDescriptors();

    // flatten properties in the given object
    for (PropertyDescriptor pd : pds) {
        String name = pd.getName();
        if ("class".equals(name) || !beanWrapper.isReadableProperty(name)) {
            continue;
        }
        Object value = beanWrapper.getPropertyValue(name);
        TypeDescriptor sourceType = beanWrapper.getPropertyTypeDescriptor(name);

        if (!flatten(map, prefix, name, value, sourceType)) {
            // the property can be a Java Bean
            // convert recursively
            Map<String, String> subMap = this.convert(name, value);
            map.putAll(subMap);
        }
    }

    return map;
}