Я не уверен, почему вы считаете, что вам нужен JavaCC для анализа XHTML-документа.Если это действительно допустимый XHTML, то это действительный XML, и это означает, что любой анализатор XML DOM сможет предоставить DOM, которым вы можете манипулировать.Почему бы просто не использовать синтаксический анализатор DOM, встроенный в Java или Xerces из Apache, JDOM или DOM4J?Написание собственного с использованием JavaCC может быть полезным упражнением для обучения, но я сомневаюсь, что это будет лучше, чем то, что у вас уже есть.