So I'm working with Alfresco 4.1.7.3, and therefore CMIS 1.0, which means that I'm using the Alfresco CMIS Extension (as I have to work with aspects). I've been figuring out what I can from online resources, and I bought the book by Jeff Potts and others, which is excellent. But I'm trying to change a property of an aspect in this way:if (alfDoc.hasAspect("P:ra:reportProperties"))
{
Map<String, Object> properties = new HashMap<String, Object>();
properties.put("ra:department", "Accounting");
alfDoc.updateProperties(properties);
}The last line of that IF block throws the following exception:<blockquote>Exception in thread "main" java.lang.IllegalArgumentException: Property 'ra:department' is not valid for this type or one of the secondary types! at org.apache.chemistry.opencmis.client.runtime.repository.ObjectFactoryImpl.convertProperties(ObjectFactoryImpl.java:398) at org.apache.chemistry.opencmis.client.runtime.AbstractCmisObject.updateProperties(AbstractCmisObject.java:343) at org.alfresco.cmis.client.impl.AlfrescoDocumentImpl.updateProperties(AlfrescoDocumentImpl.java:66) at org.apache.chemistry.opencmis.client.runtime.AbstractCmisObject.updateProperties(AbstractCmisObject.java:307) at com.someco.cmis.examples.CmisExampleNew.showFolderContents(CmisExampleNew.java:128) at com.someco.cmis.examples.CmisExampleNew.main(CmisExampleNew.java:65)</blockquote>I can state with confidence that the model supports this property. Here it is:<?xml version="1.0" encoding="UTF-8"?>
<!– First namespace prefix in namespace array is used for model prefix –>
<model xmlns="http://www.alfresco.org/model/dictionary/1.0" name="ra:reportAspect">
<description>Alfresco Form Builder Project</description>
<author>admin</author>
<version>1.0</version>
<imports>
<import uri="http://www.alfresco.org/model/dictionary/1.0" prefix="d" />
<import uri="http://www.alfresco.org/model/content/1.0" prefix="cm" />
</imports>
<namespaces>
<namespace uri="ra.model" prefix="ra" />
</namespaces>
<aspects>
<aspect name="ra:reportProperties">
<title>reportProperties</title>
<properties>
<property name="ra:reportName">
<title>Report Name</title>
<type>d:text</type>
</property>
<property name="ra:department">
<title>Department</title>
<type>d:text</type>
</property>
<property name="ra:frequency">
<title>Frequency</title>
<type>d:text</type>
</property>
<property name="ra:suffix">
<title>Suffix</title>
<type>d:text</type>
</property>
<property name="ra:uniqueIdentifier">
<title>Report Unique Identifier</title>
<type>d:text</type>
</property>
<property name="ra:date">
<title>Report Date</title>
<type>d:date</type>
</property>
<property name="ra:notInWorkflow">
<title>Not In Workflow</title>
<type>d:boolean</type>
</property>
</properties>
</aspect>
</aspects>
</model>
I'm hoping that someone can point out what I'm doing wrong in that last line of the IF block, because it looks to me like it ought to work.Thanks,Steve