private void annotateWithTokens(Annotation textAnnotation, JCas aJCas) {
    TokenizerFactory<Word> factory = PTBTokenizerFactory.newTokenizerFactory();
    Tokenizer<Word> tokenizer = factory.getTokenizer(new StringReader(textAnnotation.getCoveredText()));
    List<Word> tokens = tokenizer.tokenize();
    Iterator<Word> tokIter = tokens.iterator();
    int annotationBegin = textAnnotation.getBegin();
    outerloop:
    while (tokIter.hasNext()) {
      Word word = tokIter.next();
      // ignore stop words
      for (int i = 0; i < stopWords.length; i++) {
        if (word.value().equals(stopWords[i])) {
          continue outerloop;
        }
      }
      tokenAnnotationFactory.Annotate(aJCas,
              annotationBegin + word.beginPosition(),
              annotationBegin + word.endPosition());
    }
  }