Page 1 of 1
Unlock a file
PostPosted:Fri May 17, 2013 6:48 pm
by ancker
Hi!
I'm using version 6.2.4-DEV (build: 8034) and I am with the following problem:
When a user locks a file only it unlocks this, ok.. (ok! This is a cool function that I need).
But I need the user okmAdmin unlock this file, and this does not occur.
Only the user who locked the file can unlock this.
Any idea to solve this?
[]´s
ancker
Re: Unlock a file
PostPosted:Mon May 20, 2013 8:22 am
by jllort
The okmAdmin user should be able to unlock all files, if not then there's a bug on it. Can you give to us some screenshot about the steps you're doing to unlock, because can be done from several ways the same action and in some one could be the bug.
Re: Unlock a file
PostPosted:Mon May 20, 2013 1:09 pm
by ancker
See the steps:
1) Normal user login:

2) Normal file:

3) Lock a file:

4) File locked:

5) Login as okmAdmin:

6) Unlock a file:

7) Unable to unklock:
Log:
Code: Select all2013-05-20 11:52:40,236 [http-bio-0.0.0.0-8080-exec-5] ERROR com.openkm.servlet.frontend.DocumentServlet - Node not locked by user
com.openkm.core.LockException: Node not locked by user
at com.openkm.dao.NodeDocumentDAO.unlock(NodeDocumentDAO.java:961)
at com.openkm.dao.NodeDocumentDAO.unlock(NodeDocumentDAO.java:933)
at com.openkm.module.db.DbDocumentModule.unlockHelper(DbDocumentModule.java:895)
at com.openkm.module.db.DbDocumentModule.unlock(DbDocumentModule.java:858)
at com.openkm.api.OKMDocument.unlock(OKMDocument.java:244)
at com.openkm.servlet.frontend.DocumentServlet.unlock(DocumentServlet.java:308)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:569)
at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:208)
at com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:248)
at com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:62)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:311)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:116)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:101)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:45)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:182)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:173)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:225)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:999)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:565)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:309)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:722)
Re: Unlock a file
PostPosted:Tue May 21, 2013 8:46 am
by jllort
It's a bug ( goes right from toolbar but not from contextual menu ). I have added a ticket about it
http://issues.openkm.com/view.php?id=2839 and updated source code.
Try night build ( at integration.openkm.com )
Re: Unlock a file
PostPosted:Thu May 23, 2013 6:24 pm
by ancker
jllort wrote:It's a bug ( goes right from toolbar but not from contextual menu ). I have added a ticket about it http://issues.openkm.com/view.php?id=2839 and updated source code.
Try night build ( at integration.openkm.com )
I updated to the night build 6.2.4(8074) but the bug remains.
Re: Unlock a file
PostPosted:Fri May 24, 2013 5:22 pm
by jllort
You're on truth, I forgot to upload to svn one of the two files related with this bug. Try tomorrow with nighly build ( revision 8075 )
Re: Unlock a file
PostPosted:Tue May 28, 2013 12:41 pm
by ancker
jllort wrote:You're on truth, I forgot to upload to svn one of the two files related with this bug. Try tomorrow with nighly build ( revision 8075 )
Thanks jllort!
The revision 8075 works fine!
Great job! Great app!