酷!學園

技術討論區 => 程式討論版 => Java程式設計討論區 => 主題作者是: fell0206 於 2009-07-08 09:14

主題: JSP無法使用javaBeans!
作者: fell02062009-07-08 09:14
各位大大,小弟是用NetBeans IDE 6.5.1寫JSP,而我在"Source Packages"下新增一個名為com的資料夾,並建立personData.java:
package com;
public class personData {
    public String getTest(){
      return "jfdksl;a;sldjfkdalsdf";
    }

}
然後compiler後,將personData.class托到\WEB-INF\classes\com\下,並且建立useBean.jsp:
<%@page contentType="text/html" pageEncoding="UTF-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
    </head>
    <body>
        <h1>Hello World!</h1>
        <jsp:useBean id="personData" scope="application" class="com.personData" />
    </body>
</html>
但一直產生錯誤:"The server encountered an internal error () that prevented it from fulfilling this request."
目前還在努力找解法(雖然有找到,但都解不出來),請各位大大指點指點!! Thank you~~
主題: 回覆: JSP無法使用javaBeans!
作者: fell02062009-07-14 14:31
終於...歷經了二週左右的研究,終於知道那有問題了:
1.可能是我的web.xml有點問題,所以我後來新一個web application
2.<jsp:getProperty name="personData" property="test" />,雖然我在java file中是寫"getTest()"但當我在JSP頁面中則是要將property設為小寫

不過小弟又有一個問題,不是說java裡,大小寫是有別的嗎?那為什麼我的property要設為小寫才能RUN??請各位大大指點指點!!Thank you~
主題: 回覆: JSP無法使用javaBeans!
作者: fillano2009-07-14 17:46
這是getter/setter的慣例阿,記下來就是了。系統不會直接access javabeans的properties,而會透過getter/setter方法。

Java的命名慣例最基本的就是package name統統小寫、class name首字大寫並用Camel case、properties跟methods首字小寫並用Camel case。

依照這個慣例,你有個property叫做test,那他的getter就是getTest(),他的setter就是setTest()。

所以系統也是這樣假設的,如果不依照這個命名規則寫程式,就會出現錯誤。
主題: 回覆: JSP無法使用javaBeans!
作者: fell02062009-07-15 10:20
原來如此!感謝大大的指點~