Hi,I can upload a document and add a custom aspect without issues.Now i try to download the aspect information of a node, update the values and re-apply the aspect to the existing document. This throws an SoapException without further details…
at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)\r\n at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Objec…
Here is the code I use to update the the aspect on the existing document. Categories is a internal list i use to store the aspect / attribute informations…
RepositoryWebService.CML cml = new RepositoryWebService.CML();
cml.addAspect = new RepositoryWebService.CMLAddAspect[Categories.Count];
…
foreach (Category category in Categories) {
RepositoryWebService.CMLAddAspect aspect = new RepositoryWebService.CMLAddAspect();
RepositoryWebService.NamedValue[] aspectProps = new RepositoryWebService.NamedValue[category.Count];
foreach (CategoryAttribute attribute in category)
{
aspectProps[attribtCount] = CreateProperty(attribute.InternalKey, attribute.Value.ToString());
attribtCount++;
}
aspect.aspect = category.InternalName; // like "{http:/…/…}name"
aspect.property = aspectProps;
aspect.where = null;
aspect.where_id = RepositoryID; // the ID of the document, having the category <<<< correct?
cml.addAspect[aspectCount] = aspect;
aspectCount++;
Repository.update(cml); <<<<<<< this throws the exception, of course.
}
Did I do anything wrong? Do i need to remove the aspect from the document, before i can add a new one?I'm using the AddAspect property of the CLM object, which might not be the right one, as i don't want to add it (it's already there) but only want to update it's values with the given attributes.Thanks in advance for any hints,coco