これは私たちの教授からの演習です。私はちょっと立ち往生しています。最初に、インスタンスごとに 1 つの価格と会社を作成する JavaBean に、会社名と価格を格納するよう求めています。これは、3 つの Bean インスタンスが必要であることを意味します。
ご覧ください、彼は、上記の方法を使用して 3 つの会社と価格をハードコーディングすることを望んでいます。
次に、JavaBeans をセッションの ArrayList に追加し、JSP に転送して表示するように求めています。
これが私が今していることです。
<jsp:useBean id="company1" class="beans.Invoice" scope="session"></jsp:useBean>
<jsp:useBean id="company2" class="beans.Invoice" scope="session"></jsp:useBean>
<jsp:useBean id="company3" class="beans.Invoice" scope="session"></jsp:useBean>
<jsp:setProperty property="companyName" name="company1" value="Telco" />
<jsp:setProperty property="price" name="company1" value="23" />
<jsp:setProperty property="companyName" name="company2" value="Telcos" />
<jsp:setProperty property="price" name="company2" value="25" />
<jsp:setProperty property="companyName" name="company3" value="Telcoi" />
<jsp:setProperty property="price" name="company3" value="27" />
同じjspで、私はこれをやっています、
<%
ArrayList<Object> disp = new ArrayList();
disp.add(company1);
disp.add(company2);
disp.add(company3);
HttpSession sess = request.getSession();
session.setAttribute("disp", disp);
%>
その後、彼の要求に応じて次の JSP で、私はこれを行っています。
<%
ArrayList<String> list = (ArrayList<String>) request.getSession()
.getAttribute("disp");
for (String r : list) {
out.println(r);
}
%>
ここに私が得るエラーがあります
java.lang.ClassCastException: beans.Invoice cannot be cast to java.lang.String
どこで間違っているのでしょうか?