Vscode-java: Problem with codeComplete for IDispatcher.java Index out of bounds

Created on 22 Oct 2016  ·  8Comments  ·  Source: redhat-developer/vscode-java

I don't know what happen,when I write Interface It notice Index out of bounds, then I try mvn compile to build success,but VsCode display Error. I Need Delete org.eclipse.core.runtime.manager file,.Vscode recovery normal。

Index out of bounds Java Model Exception: Java Model Status [Index out of bounds] at org.eclipse.jdt.internal.core.Openable.codeComplete(Openable.java:121) at org.eclipse.jdt.internal.core.CompilationUnit.codeComplete(CompilationUnit.java:357) at org.eclipse.jdt.internal.core.CompilationUnit.codeComplete(CompilationUnit.java:345) at org.jboss.tools.vscode.java.internal.handlers.CompletionHandler.computeContentAssist(CompletionHandler.java:72) at org.jboss.tools.vscode.java.internal.handlers.CompletionHandler.handle(CompletionHandler.java:43) at org.jboss.tools.vscode.java.internal.handlers.CompletionHandler.handle(CompletionHandler.java:1) at org.jboss.tools.langs.base.LSPServer.dispatchRequest(LSPServer.java:183) at org.jboss.tools.langs.base.LSPServer.lambda$1(LSPServer.java:134) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745)

bug content-assist

All 8 comments

Can you please check if this error still occurs in 0.0.6?

Tested with 0.0.6 in both vscode 1.6.1 and latest nightly build and seeing the following:

[Error - 07:14:46] 02.Kas.2016 07:14:44 Problem with codeComplete for Tahakkuk.java
Index out of bounds
Java Model Exception: Java Model Status [Index out of bounds]
    at org.eclipse.jdt.internal.core.Openable.codeComplete(Openable.java:121)
    at org.eclipse.jdt.internal.core.CompilationUnit.codeComplete(CompilationUnit.java:357)
    at org.eclipse.jdt.internal.core.CompilationUnit.codeComplete(CompilationUnit.java:345)
    at org.jboss.tools.vscode.java.internal.handlers.CompletionHandler.computeContentAssist(CompletionHandler.java:72)
    at org.jboss.tools.vscode.java.internal.handlers.CompletionHandler.handle(CompletionHandler.java:42)
    at org.jboss.tools.vscode.java.internal.handlers.CompletionHandler.handle(CompletionHandler.java:1)
    at org.jboss.tools.langs.base.LSPServer.dispatchRequest(LSPServer.java:183)
    at org.jboss.tools.langs.base.LSPServer.lambda$1(LSPServer.java:134)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)

[Error - 07:14:47] 02.Kas.2016 07:14:44 Problem with codeComplete for Tahakkuk.java
Index out of bounds
Java Model Exception: Java Model Status [Index out of bounds]
    at org.eclipse.jdt.internal.core.Openable.codeComplete(Openable.java:121)
    at org.eclipse.jdt.internal.core.CompilationUnit.codeComplete(CompilationUnit.java:357)
    at org.eclipse.jdt.internal.core.CompilationUnit.codeComplete(CompilationUnit.java:345)
    at org.jboss.tools.vscode.java.internal.handlers.CompletionHandler.computeContentAssist(CompletionHandler.java:72)
    at org.jboss.tools.vscode.java.internal.handlers.CompletionHandler.handle(CompletionHandler.java:42)
    at org.jboss.tools.vscode.java.internal.handlers.CompletionHandler.handle(CompletionHandler.java:1)
    at org.jboss.tools.langs.base.LSPServer.dispatchRequest(LSPServer.java:183)
    at org.jboss.tools.langs.base.LSPServer.lambda$1(LSPServer.java:134)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)

[Error - 07:14:47] 02.Kas.2016 07:14:44 Problem with codeComplete for Tahakkuk.java
Index out of bounds
Java Model Exception: Java Model Status [Index out of bounds]
    at org.eclipse.jdt.internal.core.Openable.codeComplete(Openable.java:121)
    at org.eclipse.jdt.internal.core.CompilationUnit.codeComplete(CompilationUnit.java:357)
    at org.eclipse.jdt.internal.core.CompilationUnit.codeComplete(CompilationUnit.java:345)
    at org.jboss.tools.vscode.java.internal.handlers.CompletionHandler.computeContentAssist(CompletionHandler.java:72)
    at org.jboss.tools.vscode.java.internal.handlers.CompletionHandler.handle(CompletionHandler.java:42)
    at org.jboss.tools.vscode.java.internal.handlers.CompletionHandler.handle(CompletionHandler.java:1)
    at org.jboss.tools.langs.base.LSPServer.dispatchRequest(LSPServer.java:183)
    at org.jboss.tools.langs.base.LSPServer.lambda$1(LSPServer.java:134)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)

@ecmel Do you have a source file or better a project that I can use to reproduce this?

@gorkem Can not reproduce with 0.0.7 so far.

In that case, I am closing this one. @ecmel reopen if you can reproduce.

Still facing this issue with version v.0.0.13 With the following Solution.java file

import java.io.*;
import java.util.*;
import java.text.*;
import java.math.*;
import java.util.regex.*;

public class Solution {

    /** 
     * Reads a string and separates the odds and even characters 
     * @param   str     The input string
     * @return  Two groups: odds and evens separated by a space
     * */    
    public static String strParts(String str){
        char[] charArr = str.toCharArray();
        StringBuilder odds = new StringBuilder();
        StringBuilder evens = new StringBuilder();
        for(int i=0; i<charArr.length; i++){
            if( (i % 2) == 0 ){
                odds.append(charArr[i]);
            }else{
                evens.append(charArr[i]);
            }
        }
        return odds.toString() + " " + evens.toString();
    }

    public static void main(String[] args) {
        /* Enter your code here. Read input from STDIN. Print output to STDOUT. Your class should be named Solution. */
         Scanner in = new Scanner(System.in);

         /* number of T test cases */
         int T = in.nextInt();

         if (T >= 1 && T <= 10){

            String[] strs = new String[T];

            /* Read from STDIN */
            for(int t = 0; t<T; t++){
                String str = in.next();
                if(str.length() <= 10000){
                    strs[t] = str;
                }
            }

            /* print output to STDOUT */
            for(int i = 0; i<strs.length; i++){
                System.out.println(strParts(strs[i]));
            }

         }

         /* free the scanner resource */
         in.close();
    }
}

Errors showing up on output console as I type in the editor:

[Error - 12:01:51 AM] Mar 19, 2017 11:53:30 PM Problem with codeComplete for file:///path/to/Solution.java
String index out of range: -1
java.lang.StringIndexOutOfBoundsException: String index out of range: -1
    at java.lang.String.<init>(String.java:196)
    at org.eclipse.jdt.ls.core.internal.contentassist.CompletionProposalDescriptionProvider.createTypeProposalLabel(CompletionProposalDescriptionProvider.java:400)
    at org.eclipse.jdt.ls.core.internal.contentassist.CompletionProposalDescriptionProvider.createTypeProposalLabel(CompletionProposalDescriptionProvider.java:379)
    at org.eclipse.jdt.ls.core.internal.contentassist.CompletionProposalDescriptionProvider.updateDescription(CompletionProposalDescriptionProvider.java:583)
    at org.eclipse.jdt.ls.core.internal.contentassist.CompletionProposalRequestor.toCompletionItem(CompletionProposalRequestor.java:68)
    at org.eclipse.jdt.ls.core.internal.contentassist.CompletionProposalRequestor.getCompletionItems(CompletionProposalRequestor.java:54)
    at org.eclipse.jdt.ls.core.internal.handlers.CompletionHandler.computeContentAssist(CompletionHandler.java:80)
    at org.eclipse.jdt.ls.core.internal.handlers.CompletionHandler.lambda$0(CompletionHandler.java:39)
    at java.util.concurrent.CompletableFuture.uniApply(CompletableFuture.java:602)
    at java.util.concurrent.CompletableFuture$UniApply.tryFire(CompletableFuture.java:577)
    at java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:442)
    at java.lang.Thread.run(Thread.java:745)

Updated extension, will readd comment if issue arises again

Uninstall, reinstall, fixed this for me...

Was this page helpful?
0 / 5 - 0 ratings