我在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发生错误 出来无法解决
答案 0 :(得分:0)
您收到此错误是因为您在java方法中编写“out.println”。 当您使用声明标记来定义自己的方法时,它无法访问所有JSP代码所在的“服务”方法。您可以将Object输出流作为参数传递给您的方法,如下所示,然后使用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>");