public List<PropertyBean> getFields() throws CmsXmlException, CmsException {
@SuppressWarnings("unchecked")
List<PropertyBean> fields = (List<PropertyBean>) getJsp().getRequest().getAttribute(ATTR_FIELDS);
if (fields == null) {
CmsXmlContent xmlC = CmsXmlContentFactory.unmarshal(getJsp().getCmsObject(), getJsp().getCmsObject().readFile(getTemplatePropertiesUrl(getParamResource(), getJsp())));
Locale l = (Locale) xmlC.getLocales().get(0);
XmlContentHelper xml = new XmlContentHelper(getJsp().getCmsObject(), xmlC, l);
int count = xmlC.getIndexCount("Property", l);
String name, titleKey, type, config;
fields = new ArrayList<PropertyBean>();
for (int i = 1; i <= count; i++) {
name = xml.getStringValue("Property["+i+"]/Name");
titleKey = xml.getStringValue("Property["+i+"]/TitleKey");