test_class.file: rice-middleware/kns/src/test/java/org/kuali/rice/kns/web/struts/form/pojo/PojoPluginTest.java
test_class.identifier: PojoPluginTest
test_case.body: @Test
      public void testGetChildCollectionThrowsNestedNullException() throws Exception {
  
          // We need to initialize PropertyUtils to use our plugins
          new PojoPlugin().init(null, new ModuleConfigImpl());
  
          TestCollectionHolderHolder tchh = new TestCollectionHolderHolder();
          tchh.setTch(new TestCollectionHolder());
          
          // this simulates a situation in which the property (tch) is a proxied object 
          // that can't be fetched, so getting it works (returns the proxy) but trying 
          // to access the collection underneath it throws a NestedNullException
          Object result = ObjectUtils.getPropertyValue(tchh, "tch.collection");
  
          // before, the empty string was being returned, which doesn't make sense for a collection
          assertFalse("".equals(result));
  
          // now we return null
          assertTrue(null == result);
      }
test_case.class_method_signature: PojoPluginTest.testGetChildCollectionThrowsNestedNullException()
test_case.full_signature: @Test public void testGetChildCollectionThrowsNestedNullException()
test_case.identifier: testGetChildCollectionThrowsNestedNullException
test_case.invocations: init setTch getPropertyValue assertFalse equals assertTrue
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testGetChildCollectionThrowsNestedNullException()
focal_class.declarator: logger = Logger.getLogger(PojoPlugin.class.getName())
focal_class.modifier: static final
focal_class.original_string: static final Logger logger = Logger.getLogger(PojoPlugin.class.getName());
focal_class.type: Logger
focal_class.var_name: logger
focal_class.file: rice-middleware/kns/src/main/java/org/kuali/rice/kns/web/struts/form/pojo/PojoPlugin.java
focal_class.identifier: PojoPlugin
focal_class.interfaces: implements PlugIn
focal_class.class_method_signature: PojoPlugin.initBeanUtils()
focal_class.full_signature: public static void initBeanUtils()
focal_class.identifier: initBeanUtils
focal_class.modifiers: public static
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void initBeanUtils()
focal_class.class_method_signature: PojoPlugin.PojoPlugin()
focal_class.full_signature: public  PojoPlugin()
focal_class.identifier: PojoPlugin
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.signature:  PojoPlugin()
focal_class.class_method_signature: PojoPlugin.init(ActionServlet servlet, ModuleConfig config)
focal_class.full_signature: public void init(ActionServlet servlet, ModuleConfig config)
focal_class.identifier: init
focal_class.modifiers: public
focal_class.parameters: (ActionServlet servlet, ModuleConfig config)
focal_class.return: void
focal_class.signature: void init(ActionServlet servlet, ModuleConfig config)
focal_class.class_method_signature: PojoPlugin.destroy()
focal_class.full_signature: public void destroy()
focal_class.identifier: destroy
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void destroy()
focal_method.body: public void init(ActionServlet servlet, ModuleConfig config) throws ServletException {
          initBeanUtils();
          // override the Struts ControllerConfig with our own wrapper that knows how to
          // dynamically find max file upload size according to Rice run-time settings
          config.setControllerConfig(new KualiControllerConfig(config.getControllerConfig()));
      }
focal_method.class_method_signature: PojoPlugin.init(ActionServlet servlet, ModuleConfig config)
focal_method.full_signature: public void init(ActionServlet servlet, ModuleConfig config)
focal_method.identifier: init
focal_method.invocations: initBeanUtils setControllerConfig getControllerConfig
focal_method.modifiers: public
focal_method.parameters: (ActionServlet servlet, ModuleConfig config)
focal_method.return: void
focal_method.signature: void init(ActionServlet servlet, ModuleConfig config)