zoukankan      html  css  js  c++  java
  • Java报错:Unable to find setter method for attribute: [x]

    在学习JavaWeb JSTL与自定义标签时遇到的坑,用的老师给的代码结果直接原地报错:javax.servlet.ServletException: org.apache.jasper.JasperException: /math.jsp (line: [15], column: [0]) Unable to find setter method for attribute: [x], 代码如下

    package com.sirifeng.mytag;
    
    import javax.servlet.jsp.JspWriter;
    import javax.servlet.jsp.tagext.SimpleTagSupport;
    import java.io.IOException;
    
    /**
     * @author SiriFeng
     */
    public class MathTag extends SimpleTagSupport {
    
        double x;
    
        public double getX() {
            return x;
        }
    
        public void setX(String x) {
            double num = 0;
            num = Double.parseDouble(x);
            this.x = num;
        }
    
        @Override
        public void doTag() throws IOException {
            JspWriter out = getJspContext().getOut();
            out.println(x+"的平方根是:"+Math.sqrt(x));
        }
    
    }

    报错说找不到属性x的setter方法,这里看了一下x的属性类型是double,setter方法的属性类型是String,应该是这里出现的问题,我把setter方法改成默认的setter方法后就能正常运行了,修改如下:

    package com.sirifeng.mytag;
    
    import javax.servlet.jsp.JspWriter;
    import javax.servlet.jsp.tagext.SimpleTagSupport;
    import java.io.IOException;
    
    /**
     * @author SiriFeng
     */
    public class MathTag extends SimpleTagSupport {
    
        double x;
    
        public double getX() {
            return x;
        }
    
        public void setX(double x) {
            this.x = x;
        }
    
        @Override
        public void doTag() throws IOException {
            JspWriter out = getJspContext().getOut();
            out.println(x+"的平方根是:"+Math.sqrt(x));
        }
    
    }

     这里有个疑问就是从jsp传过来的值是String,但是这边调用setter方法的参数类型是double,中间哪个过程它自己把类型给转化了?求大佬指点。

  • 相关阅读:
    Windows phone 7 OpenSource Project
    编程之美阅读笔记
    Java多线程中读写不一致问题
    pytorch性能瓶颈检查
    贪心会议安排
    网络编程之libevent
    笔记:自动求导【动手学深度学习v2】
    测试
    AnimeGAN+Flask部署过程
    手写哈希表
  • 原文地址:https://www.cnblogs.com/Fzeng/p/13993729.html
Copyright © 2011-2022 走看看