Springboot MVCを勉強しています。
index.htmlをHTML5で用意し、コントローラークラスをjavaで用意しました。
■コントローラクラス

@RequestMapping(value = "/", method = RequestMethod.GET)
public ModelAndView index(ModelAndView mav) {
    mav.setViewName("index");

    return mav;
}

ブラウザ起動時に、ブラウザの情報を取得したく考えています。
ブラウザ起動時に上記コントローラーの「index()」が呼ばれていたので
このなかでブラウザ情報を取得したいと思ったのですが、

ブラウザの情報の取り方を探っているうちにjavascript側で取得できることを確認できました。
■javascript側(test.js)

function getBrowser() {
    // ブラウザ言語を取得
     var ua = window.navigator.userAgent.toLowerCase();

    return ua;
}

下記を参考にコントローラクラスを変更しました。
http://d.hatena.ne.jp/Nagise/20140227/1393500657

@RequestMapping(value = "/", method = RequestMethod.GET)
public ModelAndView index(ModelAndView mav) {
    mav.setViewName("index");

        ScriptEngineManager manager = new ScriptEngineManager();
        ScriptEngine engine = manager.getEngineByName("test");①
        String lang = "";
        try {
            lang = (String) engine.eval("getBrowser();");
        } catch (ScriptException e) {
            // TODO 自動生成された catch ブロック
            e.printStackTrace();
        }

    return mav;
}

engineがnullになってしまいます。
javaからjavascriptのメソッドを呼ぶ処理が不正なのでしょうか。