I tried teaching Java for FRC for the first time this year with the help of our mentors. We created a series of activities that are on the
class website.
We started with the Blockly Activities and then the BlueJ activities. By the end of those activities, students were familiar with the basics of Java programming that are most relevant to using with FRC robots. Then they are using "EasyJ" as a scaffold to building the code, and then they copy and paste it into the simple iterative robot template in Eclipse. From there they can modify the code as needed. Note - "EasyJ" was created last year, so be careful with the port numbers since they start at 1 instead of 0.
The activities need some tweaking for next year, but so far I've been impressed at how students have been able to work together to program our Aerial Assist robot from last year with little help from me. Feel free to use any activities and I welcome feedback to make them better!