Uploaded image for project: 'Confluence Data Center'
  1. Confluence Data Center
  2. CONFSERVER-38631

Search from JIRA Issue does not work with some double-byte characters

    XMLWordPrintable

Details

    Description

      Summary

      Confluence search from JIRA Issue, which uses confluence2.search of xml-rpc, does not work with some double-byte characters.

      Steps to Reproduce

      1. Install Confluence 5.8.6 and JIRA 6.4.8 (latest), and applink them
      2. On Confluence, enable Remote API
      3. On Confluence, change indexing language to "CJK"
      4. On Confluence, create a space and create these 2 pages:
        • Title: Title-1 Body: ボディ (FYI, it is 'body' in Japanese)
        • Title: Title-2 Body: ボディ (FYI, it is 'body' in Japanese)
      5. On JIRA, create a project and a issue
      6. On JIRA's Issue detail view, go to "More" -> "Link" -> "Confluence Page" -> "search for a page", and search Confluence pages by keyword "ボディ"
      7. No search results, although you get the results if you use the same search keyword on Confluence (i.e. <CONF_BASE_URL>/dosearchsite.action?queryString=ボディ)

      See also attached "theProblem.jpg"

      Expected Results

      It should show the 2 pages created in the above step

      Actual Results

      No search results.
      The below exception is thrown in the atlassian-confluence.log file:

      2015-07-29 17:06:44,519 ERROR [http-nio-15806-exec-8] [confluence.rpc.auth.TokenAuthenticationInvocationHandler] invokeAuthenticatedMethod Error during invocation of method [search]
       -- url: /confluence15806/rpc/xmlrpc | userName: admin | method: search
      java.lang.StringIndexOutOfBoundsException: String index out of range: -1
      	at java.lang.String.substring(String.java:1955)
      	at com.atlassian.bonnie.search.summary.Summarizer.getSummary(Summarizer.java:164)
      	at com.atlassian.confluence.util.GeneralUtil.makeSummary(GeneralUtil.java:1733)
      	at com.atlassian.confluence.util.GeneralUtil.makeFlatSummary(GeneralUtil.java:1769)
      	at com.atlassian.confluence.rpc.soap.beans.RemoteSearchResult.<init>(RemoteSearchResult.java:38)
      	at com.atlassian.confluence.rpc.soap.services.PagesSoapService.search(PagesSoapService.java:431)
      	at com.atlassian.confluence.rpc.soap.XhtmlSoapService.search(XhtmlSoapService.java:535)
      	at sun.reflect.GeneratedMethodAccessor848.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:497)
      	at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
      	at com.atlassian.spring.interceptors.SpringProfilingInterceptor.invoke(SpringProfilingInterceptor.java:16)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy1329.search(Unknown Source)
      	at com.atlassian.confluence.rpc.xmlrpc.ConfluenceXmlRpcHandlerImpl.search(ConfluenceXmlRpcHandlerImpl.java:485)
      	at sun.reflect.GeneratedMethodAccessor847.invoke(Unknown Source)
      

      Notes

      It seems that there is a problem on the implementation of confluence2.search of xml-rpc, because JIRA uses it while Confluence search page does not. I also confirmed that the same error occurred when I sent the same search keyword using confluence-remote-manager (needs to modify the server URL at line-10 and change the search method from confluence1.search to confluence2.search at line-67).

      Workaround

      No workaround is found so far

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              mnakagawa Mai Nakagawa (Inactive)
              Votes:
              5 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: