热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

运行JSP页面出错:Can'tfindamethodtowriteproperty'message'oftype'java.lang.Str

运行JSP页面出错:org.apache.jasper.JasperException:Cantfindamethodtowritepropertymessageof
 
运行JSP页面出错:

org.apache.jasper.JasperException: Can't find a method to write property 'message' of type 'java.lang.String' in a bean of type 'com.inspiresky.bean.Hello'
org.apache.jasper.runtime.JspRuntimeLibrary.internalIntrospecthelper(JspRuntimeLibrary.java:370)
org.apache.jasper.runtime.JspRuntimeLibrary.introspecthelper(JspRuntimeLibrary.java:308)
org.apache.jsp.mytest_jsp._jspService(mytest_jsp.java:66)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:384)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)


note The full stack trace of the root cause is available in the Apache Tomcat/6.0.10 logs.


 我一共建了2个文件:

 Hello.java: 

 package com.inspiresky.bean;

public class Hello {
  private String message = "12345";
  public String getMessage(){
  return message;
  
  }
  public void setMessgae(String message){
  this.message =message;
  }
}


  mytest.jsp:

 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>





  
   
    
    
    


    




  
  
  
    

    This is my JSP page.

  



 请问大家是什么问题?

12 个解决方案

#1


没有 message属性

#2


都没有给它setProperty

#3


 
  我一共建了2个文件:

 Hello.java:  

 package com.inspiresky.bean;

public class Hello {
  private String message = "12345";
  public String getMessage(){
return message;
  
  }
  public void setMessgae(String message){
this.message =message;
  }
}


  mytest.jsp:

 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>



  
    
    
  
    


   




  
   
  
  

  This is my JSP page.

  



 我标红的地方不是message属性 还有  setProperty 吗?
 

#4


你setProperty的时候对象弄错了吧   设置的不是message这个属性而是hello这个对象

#5


那应该怎么改呢?

#6





name 应该对应的是 类里的属性吧
也就是 message

#7


 那你的意思是说,name="message"  property="message"?

 name 和 property 都是message?

#8


后台是按name属性接收值的。。所以name改成message就Ok了。

#9


 那还用后面的property 干嘛?

#10


这个值一般是用于对对象的属性赋值的。。如果你Name是一个对象,property里面指出它的属性名。在后台就会自动对这个对象的属性做赋值。应该是这样的

#11


Hello.java 中,

   public void setMessgae(String message){
       this.message =message;
   }

这个方法的名字出错 , 不是  setMessgae ,  而是 setMessage 
然后最好加上 无参构造函数,使当tomcat或者其他容器加载创建时不会出错!


#12


同意11楼

推荐阅读
author-avatar
齐鲁墨_931
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有