驼峰 CMIS - 元数据设置错误



设置存储在filenet中的文档的文档类的简单测试在camel-cmis 2.16.2中工作。以下是路线

from("file://C:/Target/DMS/").process(new Processor() {
            @Override
            public void process(Exchange e) throws Exception {
                e.getIn().getHeaders().put(PropertyIds.CONTENT_STREAM_MIME_TYPE, "application/pdf; charset=UTF-8");
                e.getIn().getHeaders().put(CamelCMISConstants.CMIS_FOLDER_PATH, "/Test");
                e.getIn().getHeaders().put("cmis:objectTypeId", "doc_Test");
                e.getIn().getHeaders().put(PropertyIds.NAME, e.getIn().getHeader(Exchange.FILE_NAME));
            }
        }).to("cmis://http://test:9080/fncmis/resources/Service?repositoryId=TEST_REPO&username=TEST&password=RAW(TEST)");

当我检查存储在 IBM Filenet 中的文件的文档类时 - 我可以看到文档类为 Test(符号名称:doc_Test)。但是当我添加该类的至少一个参数值时,如下所示

e.getOut().getHeaders().put("prp_Field1","TestValue1");

我正在为参数"cmis:name"获取 NoSuchHeaderException,我已经设置了该参数,因为您可以看到上面的路由。这是设置元数据参数的正确方法吗?

下面用于存储工作的路线。确定自定义类,字段和数据类型,基于此创建元数据,然后在发送到cmis uri(存储)之前在驼峰标头中设置相同的字段名称。

ObjectTypeId - Customized class name
CMIS_FOLDER_PATH - filenet folder path inside repository
NAME - File name to be stored

from("file://C:/Target/DMS/").process(new Processor() {
            @Override
            public void process(Exchange e) throws Exception {
                e.getIn().getHeaders().put(CamelCMISConstants.CMIS_FOLDER_PATH, "/TEST");
                e.getIn().getHeaders().put("cmis:objectTypeId", "doc_Test");
                e.getIn().getHeaders().put(PropertyIds.NAME, fileName + ".pdf");
                e.getOut().getHeaders().put("prp_Field1","TestValue1");
                e.getOut().getHeaders().put("prp_Field2","TestValue2");
                e.getOut().getHeaders().put("prp_Field3","TestValue3");
            }
        }).to("cmis://http://test:9080/fncmis/resources/Service?repositoryId=TEST_REPO&username=TEST&password=RAW(TEST)");

希望它对某人有所帮助..

最新更新