Merged V3.4-BUG-FIX to HEAD

29414: Fix for ALF-7437: CMIS query doesn't return any result when documents are created with a different lang
   and fixes duplicate ALF-8598 : Web QS - Dynamic asset collection failing for non en_US locale
   29445: ALF-9023: Cannot search/retrieve special characters of "???".
   - avoid requirement to escape unicode characters from classification "number, other" and others   e.g. name:???   will generate a q uery (even ff it does not work due to tokenisation)
   29470: ALF-9632 "CMIS query fails if model name contains numbers" fix
      - Ensure CMIS query types are ISO9075 encoded


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@29699 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Dave Ward
2011-08-11 18:20:17 +00:00
parent 7b493bb3e6
commit 4ac638725a

View File

@@ -41,6 +41,7 @@ import org.alfresco.repo.dictionary.DictionaryListener;
import org.alfresco.repo.tenant.TenantService; import org.alfresco.repo.tenant.TenantService;
import org.alfresco.service.cmr.dictionary.DictionaryService; import org.alfresco.service.cmr.dictionary.DictionaryService;
import org.alfresco.service.namespace.QName; import org.alfresco.service.namespace.QName;
import org.alfresco.util.ISO9075;
import org.springframework.extensions.surf.util.AbstractLifecycleBean; import org.springframework.extensions.surf.util.AbstractLifecycleBean;
import org.apache.commons.logging.Log; import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory; import org.apache.commons.logging.LogFactory;
@@ -301,7 +302,7 @@ public abstract class CMISAbstractDictionaryService extends AbstractLifecycleBea
*/ */
public CMISTypeDefinition findTypeByQueryName(String queryName) public CMISTypeDefinition findTypeByQueryName(String queryName)
{ {
CMISTypeDefinition typeDef = getRegistry().typeDefsByQueryName.get(queryName.toLowerCase()); CMISTypeDefinition typeDef = getRegistry().typeDefsByQueryName.get(ISO9075.encodeSQL(queryName.toLowerCase()));
return typeDef; return typeDef;
} }
@@ -311,7 +312,7 @@ public abstract class CMISAbstractDictionaryService extends AbstractLifecycleBea
*/ */
public CMISPropertyDefinition findPropertyByQueryName(String queryName) public CMISPropertyDefinition findPropertyByQueryName(String queryName)
{ {
CMISPropertyDefinition propertyDef = getRegistry().propDefsByQueryName.get(queryName.toLowerCase()); CMISPropertyDefinition propertyDef = getRegistry().propDefsByQueryName.get(ISO9075.encodeSQL(queryName.toLowerCase()));
return propertyDef; return propertyDef;
} }