`
phpxiaoxin
  • 浏览: 251230 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

struts2 tag if NumberFormatException

    博客分类:
  • java
阅读更多
今天用struts2的if标签作一个判断,死活到不了if里面,代码如下:
<s:if test="namePinYin == 'a'">hello</s:if>
页面也不报错,而且也测试了namePinYin的确等于a
后来发现服务器报了个NumberFormatException,信息如下:
Caught an exception while evaluating expression 'namePinYin == 'a'' against value stack
java.lang.NumberFormatException: For input string: "a"
        at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1224)
google了一下,发现问题其实很简单,namePinYin是个字符串,test的时候需要这样写:
<s:if test='namePinYin == "a"'>hello</s:if>
照这样看,单引号可能会用于比较数字类型,详细可以查看一下官方的faq:
http://struts.apache.org/2.x/docs/why-wont-the-if-tag-evaluate-a-one-char-string.html
<s:if test="aStringProperty == 'A'">
  Why doesn't this work when myString is equal to A?
</s:if>
<s:if test='aStringProperty == "A"'>
  This works!
</s:if>
分享到:
评论

相关推荐

    Struts2 ConverterType类型转换 案例源码

    Struts2是一个强大的MVC框架,它在处理用户请求时提供了丰富的功能,其中包括类型转换(Converter)。类型转换是Struts2框架中一个重要的特性,它允许我们把前端表单提交的数据自动转换为后端Java对象的属性。在这个...

    struts2自定义类型转换器

    Struts2作为一款流行的Java Web框架,其在处理表单数据和模型对象之间的转换时,提供了强大的类型转换机制。在默认情况下,Struts2能够自动处理基本类型和简单类型的转换,但当我们需要对复杂的数据类型或者自定义...

    struts2 的异常收集

    在Struts2框架的应用中,经常会出现各种类型的异常,其中一种常见的异常便是数字格式异常(`NumberFormatException`)。这种异常通常发生在应用程序尝试将非数字字符串转换为数字类型(如`Integer`或`Double`)时。 ...

    struts2错误集合

    ### Struts2错误集合解析与解决方案 #### 一、类型转换异常:`java.lang.ClassCastException` **问题描述**: 在尝试从session中获取一个整型数值时,由于类型不匹配导致了`ClassCastException`。 **代码示例**:...

    java.lang.NumberFormatException For inputstring 4294967295处理方法

    if (str.matches("\\d+") && str.length() (Integer.MAX_VALUE).length()) { int num = Integer.parseInt(str); } else { System.out.println("超出int范围,无法转换"); } ``` 4. **异常处理**:虽然不推荐...

    struts2的学习笔记+测试源代码

    Struts2是一个非常流行的Java Web框架,用于构建和维护可扩展且易于管理的企业级应用程序。在Struts2中,类型转换是处理用户输入数据时的一个关键功能,它允许框架自动将HTTP请求参数(如字符串)转换为Java对象的...

    struts form action验证

    在validate()方法中,我们可以用`try-catch`块来捕获`NumberFormatException`,以确保输入是数字。 2. **Action类**:在CalculatorAction类中,实现validate()方法,计算两个数字的结果,并检查是否符合预期的数学...

    Struts平台建设PPT

    3. 在用户输入转换时未处理非法字符,可能触发NumberFormatException,应使用try-catch处理异常。 4. 使用substring()、charAt()等方法不当,可能导致StringIndexOutOfBoundsException,需进行边界检查。 5. 类路径...

    详解java.lang.NumberFormatException错误及解决办法

    2. 使用try-catch语句捕获异常。在将非数字类型的数据强制转换为数字类型时,使用try-catch语句捕获异常,并在catch块中处理该异常。 案例分析 例如,在某个Web项目中,我们需要将String类型的数据强制转换为...

    java-bbs项目,ssh

    1. **Struts2**:作为SSH中的Action层,Struts2负责处理用户的请求并转发到相应的业务逻辑。它通过配置Action和Result来定义请求的处理流程,提供了丰富的拦截器(Interceptor)机制,可以进行权限控制、日志记录等...

    java 数字格式转换异常(NumberFornatException)

    2. **使用`Double.parseDouble()`或`Double.valueOf()`**:与整数类似,如果字符串不能解析为有效的浮点数,比如`Double.parseDouble("123abc")`,也会抛出`NumberFormatException`。 3. **使用`Byte`, `Short`, `...

    Java 2实用教程(第三版)实验指导与习题解答

    Java 2实用教程(第三版)实验指导与习题解答 清华大学出版社 (编著 耿祥义 张跃平) 实验模版代码 建议使用文档结构图 (选择Word菜单→视图→文档结构图) 上机实践1 初识Java 4 实验1 一个简单的应用程序 ...

    Mybatis3 if判断字符串变态写法

    2. 如果字符串包含的是字母,避免Mybatis将其误识别为数字,需要根据实际情况添加`.toString()`方法。 3. 当在`&lt;choose&gt;`、`&lt;when&gt;`和`&lt;otherwise&gt;`标签中使用条件表达式时,字符串比较也应遵循相同的规则,确保引号...

    华为OD机试C卷- 比较两个版本号的大小(Java & JS & Python).md-私信看全套OD代码及解析

    num2 = convert_to_int_or_alpha(parts2[i]) if i (parts2) else 0 if num1 &lt; num2: return -1 elif num1 &gt; num2: return 1 return 0 def convert_to_int_or_alpha(part): if not part: return 0 try: ...

    ActionForm属性中存在对象数组如何处理

    2. 在ActionForm中声明对象数组属性,并重写`reset`方法以初始化数组。 3. 在JSP页面中动态创建表单,使用数组索引引用对象属性。 4. 在Action类中从ActionForm中获取对象数组,并进行进一步处理。 通过这种方式,...

    从键盘输入3个数,求这三个数的最大值。 Java

    2. **控制结构**:使用`if...else`语句实现逻辑判断。 3. **标准输入输出**:利用`BufferedReader`读取用户输入的数据。 4. **异常处理**:通过`try...catch`块来处理可能出现的异常。 #### 代码解析 ##### 1. ...

    Java编写的简易计算器

    } else if (act == "1" || act == "2" || act == "3" || act == "4" || act == "5" || act == "6" || act == "7" || act == "9") { tf_out.setText(tf_out.getText()); } // 运算符 if (act.equals("+/-")) {...

    用jsp实现乘除法,使用java做的

    if (symbol.equals(new String("*"))) { %&gt; &lt;jsp:param name="value1" value="&lt;%=v1%&gt;"/&gt; &lt;jsp:param name="value2" value="&lt;%=v2%&gt;"/&gt; &lt;jsp:param name="value1" value="&lt;%=v1%&gt;"/&gt; ...

    JAVA经典算法20题

    if (x == 1 || x == 2) { return 1; } else { return f(x - 1) + f(x - 2); } } } ``` 该程序通过递归的方式实现了斐波那契数列的计算。 ### 2. 检测101至200之间的所有素数 #### 题目描述: 编写程序找出...

Global site tag (gtag.js) - Google Analytics