<!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>Insert title here</title>
</head>
<body>
<form action="BadCodeServlet" method="get">
<!-- use_name:<input type="text" name="use_name"/><br/>
password:<input type="text" name="password"/><br/>
code:
<textarea rows="7" cols="20" name="code"></textarea>
<input type="submit" value="submit"/> -->
use_name:<input type="text" name="name"/><br/>
age:<input type="text" name="age"/><br/>
job:<input type="text" name="job"/><br/>
<input type="submit" value="submit"/>
</form>
</body>
</html>package testPackage;import java.io.*;
import java.lang.reflect.InvocationTargetException;import javax.servlet.*;
import javax.servlet.annotation.*;
import javax.servlet.http.*;
import org.apache.commons.beanutils.*;
import coreservlets.ServletUtilities;/** Servlet that reads a code snippet from the request
* and displays it inside a PRE tag. Fails to filter
* the special HTML characters.
* <P>
* Taken from Core Servlets and JavaServer Pages 2nd Edition
* from Prentice Hall and Sun Microsystems Press,
* http://www.coreservlets.com/.
* © 2003 Marty Hall; may be freely used or adapted.
*/
@WebServlet("/BadCodeServlet")
public class BadCodeServlet extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
YourInformation you=new YourInformation();
try {
BeanUtils.populate(you, request.getParameterMap());
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InvocationTargetException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
String title = "Code Sample";
String docType =
"<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 " +
"Transitional//EN\">\n";
out.println(docType +
"<HTML>\n" +
"<HEAD><TITLE>" + title + "</TITLE></HEAD>\n" +
"<BODY BGCOLOR=\"#FDF5E6\">\n" +
"<H1 ALIGN=\"CENTER\">" + title + "</H1>\n" +
"name:"+you.getName()+
"name:"+request.getParameterMap()+
"<br/>job:"+you.getJob()+
"<br/>age:"+you.getAge()+
"</BODY></HTML>");
}
protected String getCode(HttpServletRequest request) {
return ServletUtilities.filter(request.getParameter("code"));
}
}class YourInformation{
String name;
String job;
int age;
public void setName(String name){
this.name=name;
}
public String getName(){
return name;
}
public void setJob(String job){
this.job=job;
}
public String getJob(){
return job;
}
public void setAge(int age){
this.age=age;
}
public int getAge(){
return age;
}
}咋会总不对呢
解决方案 »
- java.lang.ClassNotFoundException: org.springframework.web.struts.DelegatingActionProxy
- 请各位推荐个可以逐步调试JSP文件的工具
- CSDN史上分数最大的问题,3000分请教如何用Java开发门户网站(之十一) 一天3贴~
- 在jsp中增删改查功能代码及讲解
- 如何清空地址
- 一个树结构的弹出菜单问题。
- 请问如何将结果写回表单?
- 使用template的疑惑????
- 数据库之间数据转移,须注意什么问题?用jdbc连接
- 如何显示在线用户??
- struts2 初学,简单问题请教
- 大家分析下这个hibernate事务管理类,看我说的问题存在不
at org.apache.commons.beanutils.BeanUtils.setProperty(BeanUtils.java:922)
at org.apache.commons.beanutils.BeanUtils.populate(BeanUtils.java:726)
at testPackage.BadCodeServlet.doGet(BadCodeServlet.java:32)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:164)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:498)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:562)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:394)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:243)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:188)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:302)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NoSuchMethodException: Property 'name' has no setter method
at org.apache.commons.beanutils.PropertyUtils.setSimpleProperty(PropertyUtils.java:1649)
at org.apache.commons.beanutils.PropertyUtils.setNestedProperty(PropertyUtils.java:1551)
at org.apache.commons.beanutils.PropertyUtils.setProperty(PropertyUtils.java:1580)
at org.apache.commons.beanutils.BeanUtils.setProperty(BeanUtils.java:919)
... 20 more
找不到方法
属性"name"没set方法
我找到文档啦The class must be public, and provide a public constructor that accepts no arguments. This allows tools and applications to dynamically create new instances of your bean, without necessarily knowing what Java class name will be used ahead of time, like this: