1

jspでメソッドを作成しました。そのメソッド内で、out.println(); を使用していくつかの html タグを使用しました。メソッドですが、解決できません。

ここに私のコードがあります:

<%! public int display(int start){

        int limit;
        limit = DEFAULT >= testList.size() ? testList.size() : DEFAULT;
        System.out.println("size : "+ testList.size());
        System.out.println("limit : "+ limit);
            for(int count = start; count < limit; count++){
        TestDetail detailContain = (TestDetail)testList.get(count); 
        tcName = detailContain.getTestName();
        System.out.println("id : "+ tcName);
        tcSource = detailContain.getSource();
        tcDescription = detailContain.getDrescription();
        idVal = detailContain.getID();
        out.println("<tr>");
        out.println("<td width = '5%'><input id='"+idVal+"' type = 'checkbox' name = 'Tests' value = '"+tcName+"'/></td>");
        out.println("<td width = '20%'><a href = './"+tcSource+"'>"+tcName+"</a></td>");
        out.println("<td width = '75%'>"+tcDescription+"</td>");
        out.println("</tr>");

        }
         return limit;
    }
            %>

次のエラーが発生します。

org.apache.jasper.JasperException: JSP のクラスをコンパイルできません:

jsp ファイルの行: 108 でエラーが発生しました: /Xyz/def/abc.jsp を解決できません

4

1 に答える 1

0

Javaメソッド内に「out.println」を書き込んでいるため、このエラーが発生します。宣言タグを使用して独自のメソッドを定義する場合、すべてのJSPコードが移動する「サービス」メソッドにアクセスできません。次のように、オブジェクト出力ストリームをパラメーターとしてメソッドに渡してから、outを使用できます。 println

public int display(int start,**OutputStream outObject**)

        outObject.println("<tr>");
        outObject.println("<td width = '5%'><input id='"+idVal+"' type = 'checkbox' name = 'Tests' value = '"+tcName+"'/></td>");
        outObject.println("<td width = '20%'><a href = './"+tcSource+"'>"+tcName+"</a></td>");
        outObject.println("<td width = '75%'>"+tcDescription+"</td>");
        outObject.println("</tr>");
于 2012-04-09T11:20:59.093 に答える