You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@chemistry.apache.org by "Florian Müller (JIRA)" <ji...@apache.org> on 2014/02/11 11:16:19 UTC

[jira] [Commented] (CMIS-755) UpdateConflict Exception is translated to ConstraintException

    [ https://issues.apache.org/jira/browse/CMIS-755?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13897699#comment-13897699 ] 

Florian Müller commented on CMIS-755:
-------------------------------------

The HTTP status code 409 is mapped to multiple CMIS exceptions. It is not possible with the AtomPub binding to determine the exact exception, if it is mapped to 409. OpenCMIS/DotCMIS picks the most common one, which is a constraint exception.

OpenCMIS servers send extra, non-standard exception information, which allows clients to determine the exact exception. But for other servers, the OpenCMIS client falls back to a constraint exception.

> UpdateConflict Exception is translated to ConstraintException
> -------------------------------------------------------------
>
>                 Key: CMIS-755
>                 URL: https://issues.apache.org/jira/browse/CMIS-755
>             Project: Chemistry
>          Issue Type: Bug
>          Components: opencmis-client-bindings
>    Affects Versions: OpenCMIS 0.10.0
>         Environment: WIN
>            Reporter: James Li
>            Priority: Minor
>
> I run tck using latest workbench chemistry-opencmis-workbench-1.0.0, changetoken test didn't pass.
> Change Token Test (ATOMPUB) (0 ms)Creates a document and a folder and updates them with an outdated change token.
> WARNING: New document object spec compliance (AbstractSessionTest.java:444) [stacktrace]
> WARNING: Content MIME types don't match! (AbstractSessionTest.java:1364) [stacktrace]
> INFO: expected: text/plain / actual: text/plain;charset=utf-8
> UNEXPECTED_EXCEPTION: Exception: org.apache.chemistry.opencmis.commons.exceptions.CmisConstraintException: Conflict (AbstractSessionTest.java:163) [stacktrace] [exception details].
> Our cmis server returns the update conflict exception in the http response.
> HTTP/1.1 409 Conflict
> Content-Type: text/plain;charset=utf-8
> Content-Language: en-US
> Connection: Close
> Date: Tue, 11 Feb 2014 06:14:07 GMT
> Server: WebSphere Application Server/7.0
> Content-Length: 4196
> com.ibm.ecm.cmis.exceptions.UpdateConflictException: CIL2200: The object cannot be updated because the object is no longer the current version.
> Explanation: A newer version of the object exists on the repository. 
> Action: Specify the current version of the object and try again.
> com.ibm.ecm.cmis.exceptions.UpdateConflictException: CIL2200: The object cannot be updated because the object is no longer the current version.
> Explanation: A newer version of the object exists on the repository. 
> Action: Specify the current version of the object and try again.
> I see the AbstractAtomPusService.convertStatusCode() convert 409 to CmisConstraintException instead of updateConflict exception.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)