0

私は他の誰かのStruts/Hibernateアプリケーションに変更を加える過程にあり、Javaの知識はほとんどありませんが、他のオブジェクト指向言語の知識はたくさんあります。作成した新しいクラスがあり、クラスにちなんで名付けられたテーブルに格納されている、そのクラスの関連するすべてのオブジェクトを一覧表示するページを作成しようとしています。

私はこれを試みるために既存のコードベースをモデル化してきました。問題のクラスの名前はCRMEntriesです。listCRMEntries.jsp、CRMEntries.hbm.xml、CRMEntries.java、およびListCRMEntriesAction.javaがあります。struts-config.xmlファイルは、listCRMEntries.jspファイルを、テーブル名であるCRM_ENTRIESのパラメーターを持つListCRMEntriesAction.javaファイルにポイントしています。私が抱えている問題は、Hibernateクエリが正しく構築されていないため、無効になっていることです。作成されているクエリは次のとおりです。select*from(select from)where rownum <=?

これはListCRMEntriesAction.javaのコードです:

public class ListCRMEntriesAction extends ListAction {
    protected List getList(HttpServletRequest request, User user,
            String parameter) throws Exception {

        String id = request.getParameter("id");
        if (id == null){
            return super.getList(request,
                    user,
                    parameter);
        }

        Command cmd = new LoadByKeyCommand(getUser(request), CRMEntries.class, new Integer(id));
        request.setAttribute("CRMEntries", cmd.execute());
        return super.getList(request,
                user,
                parameter + " where CRMEntries=" + id);
    }
}

基本的に、クエリを正しくビルドできるように、そのクエリがどこでどのように作成されているかを知る必要があります。これは多くの情報ではなく、基本的なものでもありますが、このようなものに役立つチュートリアルを見つけるのは非常に困難です。必要に応じて詳細をお知らせしますので、よろしくお願いします。

4

0 に答える 0