Most JavaCC grammars are written to handle input that's variable-width - e.g., source code. But sometimes you need to be able to parse fixed width data, and JavaCC can be good for that too. I just wrote an example JJTree grammar that parses well data logs in the Canadian Well Logging Society's LAS format. You can see the grammar, the source code, example input data, and notes on the grammar's techniques here.
For much more on JavaCC and JJTree, get the book - Generating Parsers with JavaCC!