Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

Java Java Objects (Retired) Creating the MVP Remaining Characters

Java Objects (stage 3, challange 2) ERROR Whoops: java.lang.reflect.InvocationTargetException

Code seems correct for me :/ cat pass, i get error "Whoops: java.lang.reflect.InvocationTargetException"

Tweet.java
public class Tweet {
    public static final int MAX_CHAR = 140;  
  private String mText;


  public Tweet(String text) {
    mText = text;
  }

  public String getText() {
    return mText;
  }
  public int returnAvailableCharLeft(){

    int textToInt = Integer.parseInt(mText);
    int textLength =  mText.length();

    return  textLength - MAX_CHAR ;
  }
}

2 Answers

This made it work:

public int getRemainingCharacters() { return MAX_CHARACTERS - mText.length(); }

BUT why my first solution did not work? Is it because... length() requires String?

public int returnAvailableCharLeft(){

    int textToInt = Integer.parseInt(mText);
    int textLength =  mText.length();

    return  textLength - MAX_CHAR ;
  }

Two problems to fix in your first solution, to make it work:

  • You don't need this line, "int textToInt = Integer.parseInt(mText);"
  • "return textLength - MAX_CHAR;" is backwards. You want to subtract textLength from MAX_CHAR