Vista combinada Visión Plana Vista de árbol
Discusiones [ Anterior | Siguiente ]
Darko Joseph Hojnik
unable to import an existing CMIS repository
10 de abril de 2012 9:11
Respuesta

Darko Joseph Hojnik

Ranking: Regular Member

Mensajes: 125

Fecha de incorporación: 3 de agosto de 2009

Mensajes recientes

Hi there

fictional scenario, One Liferay Portal is running using a CMIS repositiroy (Nuxeo) to store almost possible documents and stuff.
Now I setup a second Liferay instance that should use the same CMIS repository. But now, all folders files or documents aren't shown inside the Documents and Media portlet.
My fail, bug or feature? I'm testing with Liferay 6.1 CE

cheers Darko
David H Nebinger
RE: unable to import an existing CMIS repository
10 de abril de 2012 9:12
Respuesta

David H Nebinger

Community Moderator

Ranking: Liferay Legend

Mensajes: 11795

Fecha de incorporación: 1 de septiembre de 2006

Mensajes recientes

Have you tried reindexing?
Darko Joseph Hojnik
RE: unable to import an existing CMIS repository
10 de abril de 2012 9:46
Respuesta

Darko Joseph Hojnik

Ranking: Regular Member

Mensajes: 125

Fecha de incorporación: 3 de agosto de 2009

Mensajes recientes

Hi David emoticon

David H Nebinger:
Have you tried reindexing?


what do you mean with reindexing?

Control Panel -> Server -> Server Administration -> Reindex all search indexes.

Or something other?


cheers Darko
David H Nebinger
RE: unable to import an existing CMIS repository
10 de abril de 2012 10:53
Respuesta

David H Nebinger

Community Moderator

Ranking: Liferay Legend

Mensajes: 11795

Fecha de incorporación: 1 de septiembre de 2006

Mensajes recientes

Yep, I don't know if there's a specific index over the doc lib content, but if there is Liferay will often go there before hitting a repository itself...
Darko Joseph Hojnik
RE: unable to import an existing CMIS repository
10 de abril de 2012 11:34
Respuesta

Darko Joseph Hojnik

Ranking: Regular Member

Mensajes: 125

Fecha de incorporación: 3 de agosto de 2009

Mensajes recientes

Thanks. Then it would maybe a bug. It makes CMIS absolutly danger to work with Liferay.
If someone rollback his install of liferay from a backup hen he may would lose his files from the DMS
Also if a file is added inside the DMS or with a App powered by Nuxeo Webengine they would not be available inside Liferay. I think it would make a CMIS Store in almost usecases useless.

cheers Dako
Mika Koivisto
RE: unable to import an existing CMIS repository
10 de abril de 2012 13:34
Respuesta

Mika Koivisto

LIFERAY STAFF

Ranking: Liferay Legend

Mensajes: 1513

Fecha de incorporación: 7 de agosto de 2006

Mensajes recientes

Are you mounting the CMIS repository as a folder in Documents and Media or are you using CMISStore? The latter one just uses CMIS as storage for the binaries but all the actual info about folders and files is stored in Liferay database so adding any documents directly to the CMIS repository would be considered the same as directly modifying the filesystem the FileSystemStore stores files and they would not appear in Liferay because Liferay does not know anything about those files.

Now if you are using CMIS Repository instead of CMIS Store then that reads all the folders and files from the CMIS Repository and all the file and folder information in that case is maintained inside the CMIS repository. That allows modifications in both Liferay and the CMIS repository.
Darko Joseph Hojnik
RE: unable to import an existing CMIS repository
10 de abril de 2012 14:31
Respuesta

Darko Joseph Hojnik

Ranking: Regular Member

Mensajes: 125

Fecha de incorporación: 3 de agosto de 2009

Mensajes recientes

Hey Mika emoticon

Just for testing I've switched to anther configuration


dl.store.impl=com.liferay.portlet.documentlibrary.store.DBStore

# dl.store.impl=com.liferay.portlet.documentlibrary.store.CMISStore
# dl.store.cmis.credentials.username=liferay-admin
# dl.store.cmis.credentials.password=a!njdPQkje+a#
# dl.store.cmis.repository.url=http://10.0.22.3:8080/nuxeo/atom/cmis
# dl.store.cmis.system.root.dir=Liferay Home

session.store.password=true
company.security.auth.type=screenName


On Nuxeo they has allready been the folder "Liferay Home" in Top of the ROOT (/)
The Group "Liferay Staff" has the right to manage everything on this folder

My user and admin on liferay called minimike is also in nuxeo present and in the group Liferay Staff

So lets try to import the old Folder. Creating the Repository on Liferay. By the setup it's impossible to set an Repository ID. I've tried it with the correct CMIS Repository ID and with the Name of the Folder.

Trying to add an subfolder results with an permission problem


21:04:12,042 ERROR [CmisAtomPubServlet] Cannot create
org.apache.chemistry.opencmis.commons.exceptions.CmisRuntimeException: Cannot create
at org.nuxeo.ecm.core.opencmis.impl.server.NuxeoCmisService.createObject(NuxeoCmisService.java:527)
at org.nuxeo.ecm.core.opencmis.impl.server.NuxeoCmisService.create(NuxeoCmisService.java:646)
at org.apache.chemistry.opencmis.server.support.CmisServiceWrapper.create(CmisServiceWrapper.java:650)
at org.apache.chemistry.opencmis.server.impl.atompub.ObjectService.create(ObjectService.java:95)
at sun.reflect.GeneratedMethodAccessor1497.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:616)
at org.apache.chemistry.opencmis.server.shared.Dispatcher.dispatch(Dispatcher.java:83)
at org.apache.chemistry.opencmis.server.impl.atompub.CmisAtomPubServlet.dispatch(CmisAtomPubServlet.java:218)
at org.apache.chemistry.opencmis.server.impl.atompub.CmisAtomPubServlet.service(CmisAtomPubServlet.java:167)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.nuxeo.wss.servlet.BaseWSSFilter.doFilter(BaseWSSFilter.java:135)
at org.nuxeo.wss.servlet.FailSafeWSSFilter.doFilter(FailSafeWSSFilter.java:55)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.nuxeo.ecm.platform.ui.web.rest.FancyURLFilter.doFilter(FancyURLFilter.java:131)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.nuxeo.ecm.platform.wi.filter.WIRequestFilter.doFilter(WIRequestFilter.java:114)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.nuxeo.ecm.platform.ui.web.auth.NuxeoAuthenticationFilter.doFilterInternal(NuxeoAuthenticationFilter.java:548)
at org.nuxeo.ecm.platform.ui.web.auth.service.NuxeoAuthFilterChain.doFilter(NuxeoAuthFilterChain.java:35)
at org.nuxeo.ecm.platform.ui.web.auth.oauth.NuxeoOAuthFilter.doFilter(NuxeoOAuthFilter.java:167)
at org.nuxeo.ecm.platform.ui.web.auth.service.NuxeoAuthFilterChain.doFilter(NuxeoAuthFilterChain.java:33)
at org.nuxeo.ecm.platform.ui.web.auth.NuxeoAuthenticationFilter.doFilter(NuxeoAuthenticationFilter.java:349)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.nuxeo.ecm.platform.web.common.requestcontroller.filter.NuxeoRequestControllerFilter.doFilter(NuxeoRequestControllerFilter.java:163)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.nuxeo.ecm.platform.web.common.exceptionhandling.NuxeoExceptionFilter.doFilter(NuxeoExceptionFilter.java:79)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.nuxeo.ecm.platform.web.common.encoding.NuxeoEncodingFilter.doFilter(NuxeoEncodingFilter.java:59)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:905)
at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:592)
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:2036)
at java.lang.Thread.run(Thread.java:679)
Caused by: org.nuxeo.ecm.core.api.DocumentSecurityException: Privilege 'AddChildren' is not granted to 'minimike'
at org.nuxeo.ecm.core.api.AbstractSession.checkPermission(AbstractSession.java:273)
at org.nuxeo.ecm.core.api.AbstractSession.createDocument(AbstractSession.java:795)
at sun.reflect.GeneratedMethodAccessor1459.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:616)
at org.nuxeo.ecm.core.api.TransactionalCoreSessionWrapper.invoke(TransactionalCoreSessionWrapper.java:128)
at $Proxy417.createDocument(Unknown Source)
at org.nuxeo.ecm.core.opencmis.impl.server.NuxeoCmisService.createObject(NuxeoCmisService.java:520)
... 56 more


because by this task Liferay trys to overwrite the existing Folder. But I guess it would be the same with proper permissions inside nuxeo. After my tests i don't thing that Liferay could import existing files. So worst case you will lose everything.

cheers Darko
Darko Joseph Hojnik
RE: unable to import an existing CMIS repository
10 de abril de 2012 14:47
Respuesta

Darko Joseph Hojnik

Ranking: Regular Member

Mensajes: 125

Fecha de incorporación: 3 de agosto de 2009

Mensajes recientes

I've to correct me. Liferay creates new folders on top. But still no import of old files possible.

cheers Darko