Alfresco 财产';pos:empCode';对于此类型或辅助类型之一无效!在cmis中设置自定义对象时出错

Alfresco 财产';pos:empCode';对于此类型或辅助类型之一无效!在cmis中设置自定义对象时出错,alfresco,cmis,opencmis,Alfresco,Cmis,Opencmis,在地图中添加自定义对象时,会出现错误 java.lang.IllegalArgumentException:属性“pos:empCode”不可用 适用于 此类型或二级类型之一!位于org.apache.chemistry.opencmis.client.runtime.repository.ObjectFactoryImpl.conver tProperties(ObjectFactoryImpl.java:426)位于 org.apache.chemistry.opencmis.client.

在地图中添加自定义对象时,会出现错误

java.lang.IllegalArgumentException:属性“pos:empCode”不可用 适用于 此类型或二级类型之一!位于org.apache.chemistry.opencmis.client.runtime.repository.ObjectFactoryImpl.conver tProperties(ObjectFactoryImpl.java:426)位于 org.apache.chemistry.opencmis.client.runtime.SessionImpl.createDocument(会话 org.apache.chemis.opencmis.client.runtime.FolderImpl.createDocument(FolderImp l、 爪哇:77)

我的代码是:

    Map<String, Object> metaData = new HashMap<String, Object>(0);
    metaData.put(DocumentConstants.EMPCODE, empCode);
//  metaData.put(DocumentConstants.TYPE, Constants.EMP_FILE_UPLOAD);
//  metaData.put(DocumentConstants.SUBTYPE, Constants.ADD);
    docService.uploadDocumentsForAlfresco(metaData, byteArray, fileName);
Map元数据=新的HashMap(0);
metaData.put(DocumentConstants.EMPCODE,EMPCODE);
//metaData.put(DocumentConstants.TYPE、Constants.EMP\u文件上传);
//metaData.put(DocumentConstants.SUBTYPE,Constants.ADD);
上传文档forfresco(元数据、字节数组、文件名);
文件服务:

    public Boolean uploadDocumentsForAlfresco(Map<String, Object> metaData, 
    byte[] data, String name) {
        Session session = connect();
        String folderPath = null;
        folderPath = cmisSite.concat(cmisPath).concat("documentlibrary/");
       //       String path = 
    "DATAFILES/".concat(metaData.get(DocumentConstants.EMPCODE).toString());
    String path = "DATAFILES/".concat("6");
    folderPath = folderPath.concat(path);
    Folder folder = createFolder(session, folderPath); 
// metaData.put(PropertyIds.OBJECT_TYPE_ID, "D:ebs:bulkUploadDoc");
    metaData.put(PropertyIds.OBJECT_TYPE_ID, "cmis:document");
    // set the alfresco object factory

    metaData.put(PropertyIds.NAME, name);
    ByteArrayInputStream input = new ByteArrayInputStream(data);
    ContentStream contentStream = 
   session.getObjectFactory().createContentStream(name, data.length, 
   "application/octet-stream", input);
    try {
            folder.createDocument(metaData, contentStream, 
    VersioningState.MAJOR);
            return true;
    } catch (Exception ex) {
   //log.error("exception while uploading document",ex);
        ex.printStackTrace();
        return false;
    }
  }
public Boolean uploadDocumentsforfresco(地图元数据,
字节[]数据,字符串名称){
会话=连接();
字符串folderPath=null;
folderPath=cmisSite.concat(cmisPath.concat(“documentlibrary/”);
//字符串路径=
“DATAFILES/”.concat(metaData.get(DocumentConstants.EMPCODE.toString());
字符串path=“DATAFILES/”.concat(“6”);
folderPath=folderPath.concat(路径);
Folder Folder=createFolder(会话,folderPath);
//put(PropertyIds.OBJECT_TYPE_ID,“D:ebs:bulkUploadDoc”);
put(PropertyIds.OBJECT_TYPE_ID,“cmis:document”);
//将alfresco对象设置为工厂
metaData.put(PropertyIds.NAME,NAME);
ByteArrayInputStream输入=新的ByteArrayInputStream(数据);
ContentStream ContentStream=
session.getObjectFactory().createContentStream(名称,data.length,
“应用程序/八位字节流”,输入);
试一试{
folder.createDocument(元数据、内容流、,
VersioningState.MAJOR);
返回true;
}捕获(例外情况除外){
//日志错误(“上传文档时异常”,例如);
例如printStackTrace();
返回false;
}
}
在pom.xml中添加了依赖项

   <dependency>
        <groupId>org.alfresco.cmis.client</groupId>
        <artifactId>alfresco-opencmis-extension</artifactId>
        <version>0.3</version>
    </dependency>
    <dependency>
        <groupId>org.apache.chemistry.opencmis</groupId>
        <artifactId>chemistry-opencmis-client-impl</artifactId>
        <version>0.13.0</version>
    </dependency>

org.alfresco.cmis.client
露天露天煤矿扩建
0.3
org.apache.chemistry.opencmis
化学opencmis客户端impl
0.13.0

pos:empCode是在自定义类型或特性之一上定义的属性。您试图在对象上设置该属性的值,但已告诉CMIS对象类型为CMIS:document。cmis:document类型映射到cm:content,即没有自定义属性的开箱即用类型

使用自定义模型中定义pos:empCode属性的类型的对象类型ID,而不是使用cmis:document作为对象类型ID