如何在休眠 4 中将 hql 转换为 sql

how can convert hql to sql in hibernate 4

我在休眠 3 中有将 hql 转换为 sql 的方法。但是在升级到休眠 4 之后,该方法的第 5 个参数出现异常。

    public String toSql(String hqlQueryText) {
        if (hqlQueryText != null && hqlQueryText.trim().length() > 0) {
            QueryTranslatorFactory translatorFactory = new ASTQueryTranslatorFactory();
            SessionFactoryImplementor factory = (SessionFactoryImplementor) sessionFactory;
            QueryTranslator translator = translatorFactory.createQueryTranslator(hqlQueryText, hqlQueryText, Collections.EMPTY_MAP, factory,**????**);
            translator.compile(Collections.EMPTY_MAP, false);
            return translator.getSQLString();
        }
        return null;
    }

我该如何解决这个问题??

第 5 个参数可能为 null,正如您在某些 unit tests from hibernate source code.

上看到的那样