Formulários pai / filho ao usar o Playframework com Java

Eu tenho uma entidade "Pergunta" que possui uma "Resposta" que possui uma lista de "Alternativas", conforme abaixo:

public class Question extends BaseEntity {

    private String text;

    private String sourceCode;

    private String complement;

    private Answer answer;
}
public class Answer extends BaseEntity{
    private List<Alternative> alternatives;
}

Quero criar um formulário para o usuário preencher com uma lista de perguntas. Li tantas perguntas materiais e SO, mas não consigo entender exatamente como fazer com os formulários. Eu sei que posso fazer isso de outra maneira usando DynamicForms, não é isso que eu quero. Minha idéia é que isso poderia ser feito desta maneira:

@(message: String, form: play.data.Form[Question])
@main("cadastrar questão") {

    <script src="@routes.Assets.at("javascripts/index.js")"></script>
    <div class="page-header">
        <h1>@message</h1>
    </div>
    <body>
        <style>
        .top-buffer { margin-top:12px ; }
        </style>
        <div class="container.fluid form-group">
        @helper.form(routes.Application.submit()) {

            <div class="row top-buffer">
                <label for="text">Enunciado:</label>
                <textarea id="text" name="text" class="form-control col-md-6" placeholder="Enunciado da questão" rows="5" value="@form("text").value()"></textarea>
            </div>

    ...    
            <div class="row top-buffer">
                <label for="complement">Corretas:</label>
                <input type="text" name="correct" class="form-control col-md-6" value="@form("complement.answer.alternatives[0]").value()">
            </div>

            <div class="row top-buffer">
                <div class="row top-buffer">
                    <input type="submit" class="btn btn-primary col-md-1" value="submit">
                </div>
            </div>
        }
        </div>
    </body>


}

Mas quando tento usar o objeto Answer e ele "Alternativas", um grandeNullPointerexception explode no meu rosto:

        final Form<Question> questionForm = f.bindFromRequest();
        final Question question = questionForm.get();
        System.out.println(question);
        System.out.println(question.getText());
        System.out.println(question.getSourceCode());
        System.out.println(question.getComplement());

//Nullpointer here:
        final List<Alternative> alternatives = 
question.getAnswer().getAlternatives();

        alternatives.forEach(p -> System.out.println(p));

Sinto falta de mais documentação e exemplos sobre isso e outras coisas relacionadas. Mesmo o site oficial não fornece exemplos extensos. Especialmente quando se lida com Java. Isso dá uma idéia de que a estrutura está se tornando obsoleta ou sendo ultrapassada por outras tecnologias?

Eu uso a versão 2.4.6 do Play.

questionAnswers(1)

yourAnswerToTheQuestion