我有一個String getter和setter,我在我的bean中設置。無法使用jstl將值從java bean綁定到jsp
我想使用JSTL這樣讓我在JSP中的值:
<jsp:useBean class="com.test.MyBean" id="results" scope="request"/>
<script type="text/javascript">
function setMyFields(){
var flag="<c:out value='${results.sdateFlag}'/>";
alert(flag);
var text_box = document.getElementById('mySelectedDate');
if(flag=="true"){
text_box.setAttribute('disabled', 'disabled');
}
}
window.onload = setMyFields;
</script>
我在JSP進口JSTL核心爲好。
但是,當我這樣做,我得到這樣的錯誤:
javax.servlet.ServletException: Unable to find a value for "sdateFlag" in object of class "com.test.MyBean" using operator "."
at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:660)
at com.ibm._jsp._pageMyAmount._jspService(_pageMyAmount.java:306)
at com.ibm.ws.jsp.runtime.HttpJspBase.service(HttpJspBase.java:87)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1101)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:569)
at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:478)
at com.ibm.wsspi.webcontainer.servlet.GenericServletWrapper.handleRequest(GenericServletWrapper.java:122)
at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionServletWrapper.handleRequest(AbstractJSPExtensionServletWrapper.java:226)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:321)
但IHAVE一直使用Java調試調試Java類,它似乎價值是越來越設置。那爲什麼它沒有獲得價值?
編輯:這些都是我的bean的setter和getter:
public void setDateFlag(String b) { sDateFlag = b; }
public String isDateFlag() { return sDateFlag; }
這裏有什麼錯?我錯過了什麼嗎?
請將您'MyBean'類 – NilsH 2013-05-13 12:26:12
的代碼你爲什麼不使用一個簡單的EL代替useBean的? – NINCOMPOOP 2013-05-13 12:26:45
@NilsH:好吧,我要添加我的Bean代碼。 – 2013-05-13 12:34:04