环境是MyEclips 7.5+Tomcat 6.0+jdk1.6,
谁能帮我看看是什么问题,小弟我真的是想破脑袋了,分不多,一定第一时间送上
serlvet 代码:package com.servlet.book;import java.io.IOException;
import java.util.ArrayList;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;import com.bo.BmsBO;
import com.dto.AuthorDTO;
import com.dto.BookDTO;
import com.dto.PublishDTO;public class PreModBookServlet extends HttpServlet { /**
 * Constructor of the object.
 */
public PreModBookServlet() {
super();
} /**
 * Destruction of the servlet. <br>
 */
public void destroy() {
super.destroy(); // Just puts "destroy" string in log
// Put your code here
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { doPost(request,response);
} public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//取值
String bid = request.getParameter("bid");

//处理
BmsBO bb = new BmsBO();
BookDTO book = bb.getBook(bid);
ArrayList<AuthorDTO> authors = bb.getAuthorsByBook(bid);
ArrayList<PublishDTO> publishList = bb.getPublishes();

request.setAttribute("book",book);
request.setAttribute("authors", authors);
request.setAttribute("publishList",publishList);
System.out.println("publish.size"+publishList.size());
//转向
String path = "/form/modBook.jsp";
request.getRequestDispatcher(path).forward(request,response);
} /**
 * Initialization of the servlet. <br>
 *
 * @throws ServletException if an error occurs
 */
public void init() throws ServletException {
// Put your code here
}
}DTO代码:package com.dto;public class PublishDTO {
private String pid;
private String pName;
public PublishDTO(String pid, String pName) {
super();
this.pid = pid;
this.pName = pName;
}
public PublishDTO() {
super();
// TODO Auto-generated constructor stub
}
public String getPid() {
return pid;
}
public void setPid(String pid) {
this.pid = pid;
}
public String getPName() {
return pName;
}
public void setPName(String pName) {
this.pName = pName;
}

}
jsp代码:<select name="publish" >
<c:forEach items="${publishList}" var="publish" >
<option value="${publish.pid }" >${publish.pName }</option>
</c:forEach>
</select>
错误描述:
严重: Servlet.service() for servlet jsp threw exception
javax.el.PropertyNotFoundException: Property 'pName' not found on type com.dto.PublishDTO
at javax.el.BeanELResolver$BeanProperties.get(BeanELResolver.java:193)
at javax.el.BeanELResolver$BeanProperties.access$400(BeanELResolver.java:170)
at javax.el.BeanELResolver.property(BeanELResolver.java:279)
at javax.el.BeanELResolver.getValue(BeanELResolver.java:60)
at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:54)
at org.apache.el.parser.AstValue.getValue(AstValue.java:123)
at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
at org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:935)
at org.apache.jsp.form.modBook_jsp._jspx_meth_c_005fforEach_005f0(modBook_jsp.java:193)
at org.apache.jsp.form.modBook_jsp._jspService(modBook_jsp.java:147)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
at com.servlet.book.PreModBookServlet.doPost(PreModBookServlet.java:76)
at com.servlet.book.PreModBookServlet.doGet(PreModBookServlet.java:46)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:859)
at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:579)
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1555)
at java.lang.Thread.run(Thread.java:619)
2010-7-14 21:17:32 org.apache.catalina.core.StandardWrapperValve invoke