jFresH_MaN大哥 我改为: <html:select name="oprator"> <logic:iterate id="sysName" name="result"> <html:option><bean:write name="sysName" property="systemname"/></html:option> </logic:iterate> </html:select> 但报错:"jsp1.jsp": According to the TLD attribute property is mandatory for tag select at line 25, column 6
jFresH_MaN大哥,最后一次麻烦你了
哦 就是<select property="xxx"不能少
我改为: <html:form action="/wjh.do" method="get"> <html:select property="systemname1"> <logic:iterate id="sysName" name="uSession"> <html:option><bean:write name="sysName" property="systemname"/></html:option>//此出错 </logic:iterate> </html:select> </html:form> 错误信息:"jsp1.jsp": According to the TLD attribute value is mandatory for tag option at line 27, column 5
小妹刚学java,麻烦你们把代码写出来好么?拜托了
String systemid;
String systemname ;
bean(String id,string name){
this.systemid = id;
this.systemname = name;
} //systemid and systemname's getter and setter method here...
.......
}
package wjhstruts;
class Bean {
private String systemid;
private String systemname;........//setter and getter;}
然后
public List querydata()
{
try
{
List l=new ArrayList();
ResultSet result=con_statement().executeQuery("select systemid,systemname from Tsystem");
while(result.next()) {
Bean b=new Bean();
b.setSystemid(result.getString(1));
b.setSystemname(result.getString(2));
l.add(b);
}
return l;
}
catch(Exception e)
{
return null;
}
}
jsp里面
<%@page contentType="text/html;charset=gb2312"%>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
<%@ taglib uri="/WEB-INF/struts-template.tld" prefix="template" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<jsp:useBean id="db" class="wjhstruts.Jsp4Bean" scope="page"/>
<%pageContext.setAttribute("result",db.querydata());%>
<html>
<head></head>
<body>
<center>
<hr>迭代的使用:<br/>
<table align="center" bgcolor="#008800" border="0" cellspacing="2" cellpadding="5">
<tr bgcolor="#cccccc"><td><b>系统id</b></td><td><b>系统名称</b></td></tr>
<logic:iterate id="sysName" name="result">
<tr bgcolor="#cccccc"><td><bean:write name="sysName" property="systemid"/></td>
<td><bean:write name="sysName" property="systemName"/></td></tr>
</logic:iterate>
</table></center>
</body>
</html>
javabean这样对么
---------------
package wjhstruts;
import java.sql.*;
import java.util.List;
import java.util.ArrayList;class wjhsystem
{
public String systemid;
public String systemname;public void setsystemid(String id)
{
this.systemid = id;
}
public void setsystemname(String name)
{
this.systemname = name;
}
public String getsystemid()
{
return this.systemid;
}
public String getsystemname()
{
return this.systemname;
}
}
public class Jsp4Bean {
public Connection Pcon;
public Statement Pstatement;
public Statement con_statement()throws Exception //连接
{
try
{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
Pcon = java.sql.DriverManager.getConnection("jdbc:microsoft:sqlserver://wjh:1433;DatabaseName=wjh", "sa", "");
Pstatement = Pcon.createStatement();
return Pstatement;
}
catch(Exception e)
{
e.printStackTrace();
return null;
}
}
public List querydata() //查询
{
try
{
List l=new ArrayList();
ResultSet result=con_statement().executeQuery("select systemid,systemname from Tsystem");
while(result.next())
{
wjhsystem b=new wjhsystem();
b.setsystemid(result.getString("systemid"));
b.setsystemname(result.getString("systemname"));
l.add(b);
}
Pcon.close();
result.close();
return l;
}
catch(Exception e)
{
return null;
}
}
}
--------------------------------------------------------------
但报错哦!
javax.servlet.ServletException: wjhstruts/wjhsystem
at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:471)
at org.apache.jsp.jsp1$jsp._jspService(jsp1$jsp.java:216)
...
还有你的wjhsystem类里面的getter和setter方法定义不对
必须注意大写;修改成这样的:
setSystemid
getSystemid
然后最好把systemid和systembname设成private,这个符合规范
终于行了!
太感谢你了,jFresH_MaN大哥!!!!!
以后小妹有什么问题,可以请教你么?
还请教一个问题,
如果只有一个字段,怎么把迭代出来的这个值,填充到下拉列表筐里呀?
即<select name="operator"> </select>
<html:select name"oprator>
<logic:iterate id="sysName" name="result">
<html:option><bean:write name="sysName" property="systemid"/></html:option>
<html:option><bean:write name="sysName" property="systemname"/></html:option>
</logic:iterate>
我改为:
<html:select name="oprator">
<logic:iterate id="sysName" name="result">
<html:option><bean:write name="sysName" property="systemname"/></html:option>
</logic:iterate>
</html:select>
但报错:"jsp1.jsp": According to the TLD attribute property is mandatory for tag select at line 25, column 6
就是<select property="xxx"不能少
<html:form action="/wjh.do" method="get">
<html:select property="systemname1">
<logic:iterate id="sysName" name="uSession">
<html:option><bean:write name="sysName" property="systemname"/></html:option>//此出错
</logic:iterate>
</html:select>
</html:form>
错误信息:"jsp1.jsp": According to the TLD attribute value is mandatory for tag option at line 27, column 5