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