cancel
Showing results for 
Search instead for 
Did you mean: 

No Full text search anymore ?

goebel
Champ on-the-rise
Champ on-the-rise
Hi

After upgrading to the latest ios version of the alfresco app, I can no longer perform full text searches in a folder of a site. The search only returns documents where the search string is in the filename. However in the older version you could activate or deactivate the full text search in the settings menu. In the new version there is no longer this option.

How can I activate the full text search for our IOS clients ?

Regards

Georges Goebel
9 REPLIES 9

gavinc
Champ in-the-making
Champ in-the-making
Hi, yes, unfortunately the option to perform full text search was accidentally dropped from the 2.x app, we are aware of this, it's being tracked by https://issues.alfresco.com/jira/browse/MOBILE-3058

gerbarruz
Champ in-the-making
Champ in-the-making
I guess it is the same error that I have with my iOS devices: when we try to execute a search with and or a phrase, immediately a red error is shown on the screen. Do you know when new iOS app version is going to be published?

mikeh
Star Contributor
Star Contributor
The error you're seeing isn't related to the missing option to change the search to full-text. You need to look in your alfresco.log file on the server to see if an error is being thrown there, or use a tool such as CMIS Workbench to see what the returned error is.

Thanks,
Mike

gerbarruz
Champ in-the-making
Champ in-the-making
Mike, thanks for you answer.

Into the log I can find something like that:

———-

16:29:55,788 ERROR [org.apache.chemistry.opencmis.server.impl.atompub.CmisAtomPubServlet] 01260705 line 1:11
no viable alternative at input 'and'
    (decision=36 state 0) decision=<<>>
   [ftsQuery, ftsDisjunction, ftsExplicitDisjunction, ftsImplicitConjunction, ftsPrefixed, ftsTest, ftsTokenisedTermOrPhrase]
org.apache.chemistry.opencmis.commons.exceptions.CmisRuntimeException: 01260705 line 1:11
no viable alternative at input 'and'
    (decision=36 state 0) decision=<<>>
   [ftsQuery, ftsDisjunction, ftsExplicitDisjunction, ftsImplicitConjunction, ftsPrefixed, ftsTest, ftsTokenisedTermOrPhrase]
   at org.alfresco.opencmis.AlfrescoCmisExceptionInterceptor.invoke(AlfrescoCmisExceptionInterceptor.java:80)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
   at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
   at com.sun.proxy.$Proxy336.query(Unknown Source)
   at org.apache.chemistry.opencmis.server.support.CmisServiceWrapper.query(CmisServiceWrapper.java:1125)
   at org.apache.chemistry.opencmis.server.impl.atompub.DiscoveryService$Query.serve(DiscoveryService.java:115)
   at org.apache.chemistry.opencmis.server.shared.Dispatcher.dispatch(Dispatcher.java:88)
   at org.apache.chemistry.opencmis.server.impl.atompub.CmisAtomPubServlet.dispatch(CmisAtomPubServlet.java:225)
   at org.apache.chemistry.opencmis.server.impl.atompub.CmisAtomPubServlet.service(CmisAtomPubServlet.java:172)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
   at org.alfresco.repo.webdav.auth.AuthenticationFilter.doFilter(AuthenticationFilter.java:244)
   at sun.reflect.GeneratedMethodAccessor2426.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
   at java.lang.reflect.Method.invoke(Method.java:606)
   at org.alfresco.repo.management.subsystems.ChainingSubsystemProxyFactory$1.invoke(ChainingSubsystemProxyFactory.java:125)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
   at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
   at com.sun.proxy.$Proxy297.doFilter(Unknown Source)
   at org.alfresco.repo.web.filter.beans.BeanProxyFilter.doFilter(BeanProxyFilter.java:82)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
   at org.alfresco.web.app.servlet.CmisSecurityContextCleanerFilter.doFilter(CmisSecurityContextCleanerFilter.java:49)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
   at org.alfresco.web.app.servlet.GlobalLocalizationFilter.doFilter(GlobalLocalizationFilter.java:61)
   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:222)
   at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
   at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
   at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
   at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
   at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
   at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
   at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
   at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1023)
   at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
   at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
   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:724)
Caused by: org.alfresco.repo.search.impl.parsers.FTSQueryException: 01260705 line 1:11
no viable alternative at input 'and'
    (decision=36 state 0) decision=<<>>
   [ftsQuery, ftsDisjunction, ftsExplicitDisjunction, ftsImplicitConjunction, ftsPrefixed, ftsTest, ftsTokenisedTermOrPhrase]
   at org.alfresco.repo.search.impl.parsers.FTSQueryParser.buildFTS(FTSQueryParser.java:124)
   at org.alfresco.opencmis.search.CMISQueryParser.buildPredicate(CMISQueryParser.java:466)
   at org.alfresco.opencmis.search.CMISQueryParser.buildTest(CMISQueryParser.java:283)
   at org.alfresco.opencmis.search.CMISQueryParser.buildNegation(CMISQueryParser.java:263)
   at org.alfresco.opencmis.search.CMISQueryParser.buildConjunction(CMISQueryParser.java:232)
   at org.alfresco.opencmis.search.CMISQueryParser.buildDisjunction(CMISQueryParser.java:205)
   at org.alfresco.opencmis.search.CMISQueryParser.buildTest(CMISQueryParser.java:280)
   at org.alfresco.opencmis.search.CMISQueryParser.buildNegation(CMISQueryParser.java:263)
   at org.alfresco.opencmis.search.CMISQueryParser.buildConjunction(CMISQueryParser.java:232)
   at org.alfresco.opencmis.search.CMISQueryParser.buildDisjunction(CMISQueryParser.java:205)
   at org.alfresco.opencmis.search.CMISQueryParser.parse(CMISQueryParser.java:160)
   at org.alfresco.opencmis.search.CMISQueryServiceImpl.query(CMISQueryServiceImpl.java:103)
   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:606)
   at org.alfresco.repo.management.subsystems.SubsystemProxyFactory$1.invoke(SubsystemProxyFactory.java:72)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
   at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
   at com.sun.proxy.$Proxy138.query(Unknown Source)
   at org.alfresco.opencmis.CMISConnector.query(CMISConnector.java:2779)
   at org.alfresco.opencmis.AlfrescoCmisServiceImpl.query(AlfrescoCmisServiceImpl.java:2302)
   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:606)
   at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
   at org.alfresco.repo.transaction.RetryingTransactionInterceptor$1.execute(RetryingTransactionInterceptor.java:79)
   at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:452)
   at org.alfresco.repo.transaction.RetryingTransactionInterceptor.invoke(RetryingTransactionInterceptor.java:69)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
   at org.alfresco.opencmis.AlfrescoCmisStreamInterceptor.invoke(AlfrescoCmisStreamInterceptor.java:72)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
   at org.alfresco.opencmis.AlfrescoCmisServiceInterceptor.invoke(AlfrescoCmisServiceInterceptor.java:101)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
   at org.alfresco.opencmis.AlfrescoCmisExceptionInterceptor.invoke(AlfrescoCmisExceptionInterceptor.java:50)
   … 42 more

———-

Is it that we need to see? What can I do to fix it?

The version that we are using is 4.2.e

Thanks.



mikeh
Star Contributor
Star Contributor
It's not immediately obvious to me what's going on there. Can I ask what search term this is occurring with? Is it all search terms, even simple one-word searches?

gerbarruz
Champ in-the-making
Champ in-the-making
I'm sorry, I just want to help and fix this issue.
If we search for: documento de prueba, works OK. ('documento de prueba' means 'testing document')
If we search for: documento AND de AND prueba or "documento de prueba", shows the error.

Thanks.

mikeh
Star Contributor
Star Contributor
OK, then that's the problem. For the mobile app that search field is just expecting simple keywords which we "OR" together in the code and optionally add folder scope depending on where the search is run from.

We're looking to improve search in the future, but for now you just need to keep it to keywords.

Thanks,
Mike

unknown-user
Champ on-the-rise
Champ on-the-rise
This is useful Information.. Interesting Wonderful Technique.. Thanks..

gerbarruz
Champ in-the-making
Champ in-the-making
OK, thanks again.

Gerardo Bárcena