Hi Muhammed,
You are probably assembling an ObjectInfo object when you compile an
ObjectData object on the server side.
The ObjectInfo.hasAcl() method must return true, if the object has an
ACL. If it returns false, then the server framework doesn't generate the
appropriate link. And if the client cannot find this link, it throws a
CmisNotSupportedException.
Check if you set hasAcl flag in your server implementation.
- Florian
Hi,
I'm implementing an OpenCMIS server. I have a problem with applyAcl
method.
I implemented applyAcl methods (both for AtomPub and others) in my
CmisServer interface but when I try to apply an ACL from the Chemistry
Workbench I got this exception;
17:01:15 ERROR hemistry.opencmis.workbench.ClientHelper:
CmisNotSupportedException: Operation not supported by the repository
for
this object!
org.apache.chemistry.opencmis.commons.exceptions.CmisNotSupportedException:
Operation not supported by the repository for this object!
at
org.apache.chemistry.opencmis.client.bindings.spi.atompub.AbstractAtomPubService.throwLinkException(AbstractAtomPubService.java:271)
at
org.apache.chemistry.opencmis.client.bindings.spi.atompub.AbstractAtomPubService.getAclInternal(AbstractAtomPubService.java:926)
at
org.apache.chemistry.opencmis.client.bindings.spi.atompub.AclServiceImpl.getAcl(AclServiceImpl.java:63)
at
org.apache.chemistry.opencmis.client.bindings.spi.atompub.AclServiceImpl.applyAcl(AclServiceImpl.java:45)
at
org.apache.chemistry.opencmis.client.runtime.SessionImpl.applyAcl(SessionImpl.java:1352)
at
org.apache.chemistry.opencmis.client.runtime.AbstractCmisObject.applyAcl(AbstractCmisObject.java:567)
at
org.apache.chemistry.opencmis.workbench.AclEditorFrame.doApply(AclEditorFrame.java:287)
at
org.apache.chemistry.opencmis.workbench.AclEditorFrame.access$000(AclEditorFrame.java:66)
at
org.apache.chemistry.opencmis.workbench.AclEditorFrame$1.actionPerformed(AclEditorFrame.java:218)
at
javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
at
javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2346)
at
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at
javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at
javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
at java.awt.Component.processMouseEvent(Component.java:6527)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
at java.awt.Component.processEvent(Component.java:6292)
at java.awt.Container.processEvent(Container.java:2234)
at java.awt.Component.dispatchEventImpl(Component.java:4883)
at java.awt.Container.dispatchEventImpl(Container.java:2292)
at java.awt.Component.dispatchEvent(Component.java:4705)
at
java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4898)
at
java.awt.LightweightDispatcher.processMouseEvent(Container.java:4533)
at
java.awt.LightweightDispatcher.dispatchEvent(Container.java:4462)
at java.awt.Container.dispatchEventImpl(Container.java:2278)
at java.awt.Window.dispatchEventImpl(Window.java:2739)
at java.awt.Component.dispatchEvent(Component.java:4705)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:746)
at java.awt.EventQueue.access$400(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:697)
at java.awt.EventQueue$3.run(EventQueue.java:691)
at java.security.AccessController.doPrivileged(Native Method)
at
java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
at
java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:86)
at java.awt.EventQueue$4.run(EventQueue.java:719)
at java.awt.EventQueue$4.run(EventQueue.java:717)
at java.security.AccessController.doPrivileged(Native Method)
at
java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:716)
at
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
My first thought was that I have a problem with my getObject method but
I
set object's ACL to the ObjectData correctly. I also set
CapabilityAcl.MANAGE to the RepositoryInfo.
Now, I have no idea how to debug this issue. Any help would be would be
appreciated.
Muhammed