- //路径的设定与当前操作文件所在的目录有关,假设当前文件存储在
- //"/system/modules/cn.dce.www.migrate/elements/"内;
- //eg.file name
- resourcePath = "/project/static/aboutUs/123.html." ;
- //eg.folder name
- folderPath = "/project/static/aboutUs/dynamicStockExchange/2008/08" ;
- //在OpenCms内所有的资源都对应其自己的资源ID
- //具体资源与ID对应明细参考OpenCms——中文资源第一博客
- //http://blog.youkuaiyun.com/qianxuncms/archive/2008/07/22/2693128.aspx
- //这里是我转载的地址:http://javajiao.javaeye.com/admin/blogs/256031
- //
- //在OpenCms内文件目录的资源ID是"0"
- int folder_type = 0;
- //如果是自己定义的资源类型的文件
- //此处的ID对应为OpenCms项目内config/opencms-module.xml文件中
- //注册XSD时设定的ID 我注册的时候是601
- int dce_information_type=601;
- try {
- //创建一个指定类型的空的XML文件
- //如果是创建folder类型的资源文件,只需要执行这条语句。
- cmsObject.createResource(resourcePath, dce_information_type);
- //如果创建的内容文件,还需要添加内容。
- I_CmsXmlContentValue contentValue = null;
- //有的时候避免操作的文件同时被别人占用
- //先将资源锁定,防止别人和你同时操作而出现异常。
- //cmsObject.lockResource(resourcePath);
- //将新建立的空的XML文件散列
- CmsFile templateFile = cmsObject.readFile(resourcePath);
- CmsXmlContent template = CmsXmlContentFactory.unmarshal(cmsObject, templateFile);
- //向散列后的文件中对对应的标记对内添加字符串内容.
- //取得"Title"字段,向其中添加对象title包含的内容。
- template.getValue("Title", Locale.CHINESE).setStringValue(cmsObject, title);
- ... ...
- //将散列的XML文件转换成byte[]
- templateFile.setContents(template.marshal());
- cmsObject.writeFile(templateFile);
- //如果前面对资源文件加锁了,开关原则,此处一定要解锁。
- //cmsObject.unlockResource(path);
- } catch (Exception e) {
- e.printStackTrace();
- out.println(e);
- }