public static List<mappedFormField> calculateMappedFormFields(strutsconfig strutsConfig, formvalidation validation)
        {					
            // resolve formsInStructConfic
            /*           var formsInStructConfig = new Dictionary<string, strutsconfigFormbean>();			
			
                      foreach(var formBean in strutsConfig.formbeans)
                          if (formBean.formproperty != null)
                              foreach(var formProperty in formBean.formproperty)
                                  formsInStructConfig.Add(formBean.name + "_" + formProperty.name, formBean);
                      log.info("there are {0} forms in strutsConfig", formsInStructConfig.Count);
                      // resolve in formsInValidation
                     var formsInValidation = new Dictionary<string, formvalidationForm>();
                      foreach(var formBean in validation.formset)
                      {
                          if (formBean.field != null)
                              foreach(var field in formBean.field)
                              {
                                  var beanKey = formBean.name + "_" + field.property ;
                                  if (formsInValidation.ContainsKey(beanKey))
                                      log.error("Duplicate breanKey: {0}: ", beanKey);
                                  else
                                      formsInValidation.Add(beanKey, formBean);
                              }
                      }
              
            log.info("there are {0} forms in validator", formsInValidation.Count);
			
            // resolve formsInActions
            var formsInActions = new Dictionary<string, string>();
            foreach(var action in strutsConfig.actionmappings)
                if (action.name!=null && action.name!= "")
                    if (formsInActions.ContainsKey(action.name) == true)
                        formsInActions[action.name] += " , " + action.path;
                    else
                        formsInActions.Add(action.name,action.path);				
						
            log.info("there are {0} forms mapped to actionMappings", formsInActions.Count);			// map form fields
			
            // calculate mappedFormFields 
            var mappedFormFields = new List<mappedFormField>();
            foreach(var formBeanKey in formsInStructConfig.Keys)
            {						
                var formBeam = formsInStructConfig[formBeanKey];
                //log.info(formBeanKey);
                var mappedFormField = new mappedFormField();
                mappedFormField.beanName = formBeam.name;
                mappedFormField.formBeanName = formBeanKey; //formBean.name;
                mappedFormField.hasValidation = formsInValidation.ContainsKey(formBeanKey); //formBean.name);
                mappedFormField.actionPaths = (formsInActions.ContainsKey(formBeam.name) == true) ? formsInActions[formBeam.name] : "";
                mappedFormFields.Add(mappedFormField);
            }
            return mappedFormFields;
             */
            return null;
        }
 public static void listFormBeans(strutsconfig strutsConfig)
 {			
     foreach(var formBean in strutsConfig.formbeans)
     {
         //var formBean = strutsConfig[formFieldKey];
         log.info("name:{0}      -      type:{1}",formBean.name, formBean.type);
         if (formBean.formproperty!= null)
             foreach(var formProperty in formBean.formproperty)
                 log.info("     {0} : {1}", formProperty.name, formProperty.type);
     }
 }