创建指定类型资源文件

opencms中创建指定类型的文件

 

CmsJspActionElement cms;
CmsObject cmsObject = cms.getCmsObject();
List properties = new ArrayList();
//储存文件的属性
CmsProperty titleProp = new CmsProperty();
//属性
titleProp.setName(CmsPropertyDefinition.PROPERTY_TITLE);
//属性的名称
titleProp.setResourceValue("title");
//为属性赋值
properties.add(titleProp);

cmsObject.createResource(文件的路径,文件类型ID, 二进制内容(byte[]),属性的集合(properties));
//创建  cmsObject.createResource(文件路径,文件类型ID);

 

如果创建的是自己定义的类型文件,想要更改内容,则

 

String name = cmsObject.getRequestContext().removeSiteRoot("文件路径");
Locale locale = cmsObject.getRequestContext().getLocale();

CmsFile cmsFile = cmsObject.readFile(name,CmsResourceFilter.IGNORE_EXPIRATION);
CmsXmlContent cmsXmlContent = CmsXmlContentFactory.unmarshal(cmsObject, cmsFile);

cmsXmlContent.getValue("USERS", locale).setStringValue(cmsObject, "value");
//USERS是定义文件中的Xml节点名称,value是要赋的值

byte[] contentXml = cmsXmlContent.marshal();
cmsFile.setContents(contentXml);
cmsObject.writeFile(cmsFile);
// 只有经过这一步文件才能更改成功

你可能感兴趣的:(cms,xml)