Lexer throwing an error that it shouldn't

I am working on a Lexer as the first part of building a compiler for a class. As part of the project grammar, the lexer should ignore any comment blocks in the files it reads, which would start with a /* and end with */. If the file has a rogue / without the star, it should throw a parse exception. My lexer handles all of the other grammar in the files properly, however for some reason it throws the exception for every comment block. It is if it ignores looking for the * in the next char and automatically throws an exception for an unknown token

this is my code:

ch is set to the current char being read and ch1 is set to the next char, if ch is not the last char in the file. commentBlock is set to false and is used to determine if the lexer will ignore the tokens or not. i is the iterator

if(ch == '/'){

      if (ch1 == '*'){
        commentBlock = true;
        String err = new String();
        err = "Error: unexpected token '/' at line: " + currLine;
        throw new ParseException(err, currLine);

this is the exception thrown:

Exception in thread "main" java.text.ParseException: Error: Unexpected token '/' at line 1

  at Lexer.handleCharacters(Lexer.java:75)

  at Lexer.handleFile(Lexer.java:27)

  at Lexer.main(Lexer.java:19)

The exception is thrown from that snippet of code I attached. If I should include more code feel free to let me know, I'm new to submitting here. Also if it helps, if I remove the whole section that throws the error, everything but ignoring comments works completely.

This is where ch and ch1 are defined:

char ch = contents.charAt(i);
  int j = i +1;
  char ch1 = ch;
  if(j < contents.length())
    ch1 = contents.charAt(j);

Any suggestions?