JSP配置了虛擬目錄使用JavaBean報錯

來源:互聯網
上載者:User

標籤:跳過   ace   報錯資訊   今天   固定   調用   運行   property   return   

今天遇到一個很棘手的問題,在jsp檔案中使用useBean,網頁返回碼出現了500伺服器內部錯誤,報錯資訊如下:

The value for the useBean class attribute wp.A is invalid.

之前項目放在tomcat的webapps檔案夾下,運行是正常的,現在是配置了虛擬目錄,所以與javabean無關,應該是和配置了虛擬目錄有關

嘗試了很多方法都沒用,最後找到了正確的解決方案(解決方案在最下面,如果會使用javabean的可直接跳過中間部分)

在此之前,先介紹一下在tomcat的webapps檔案夾下建立項目的jsp中如何使用javabean

1.建立一個java檔案,例如:

package wp;public class A {    private String FirstProperty = new String("");    public A(){}        public void setFirstProperty(String value) {        FirstProperty = value;    }        public String getFirstProperty() {        return FirstProperty;    }}

注意:javabean中至少要包含一個無參的建構函式

2.在項目的根目錄下建立WEB-INF檔案夾(區分大小寫,不要寫錯)

3.在WEB-INF檔案夾下建立classes檔案夾(名稱是固定的)

4.在classes檔案夾下建立與java檔案中對應的package後跟名稱的檔案夾(樣本中包名為wp)

5.編譯寫好的java檔案,將產生的.class檔案放到最終的包(wp)下

6.最後在jsp檔案中通過如下代碼使用javabean

<jsp:useBean id="a" class="wp.A" scope="page" />

參數解釋:id是為要引用的javabean起的名字,class的值即為javabean的class檔案所在的位置(後面不要跟.class),scope是設定bean的有效範圍(生命週期),當前設定的是僅在本頁面有效

javabean的調用

通過a.setXXX("")和a.getXXX()使用javabean中定義的方法

最後,就是本篇的重點所在,關於配置了虛擬目錄(不會配置的自行搜尋),使用javaBean報錯

很簡單,就是將WEB-INF檔案夾建立在所配置虛擬目錄的根目錄

(如果虛擬目錄為D:\workspace 在此檔案下建立個人項目名為Demo,通常的做法是將WEB-INF檔案夾直接建立在Demo下,這是錯誤的,而是需要建立在workspace的根目錄下)

JSP配置了虛擬目錄使用JavaBean報錯

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.