【问题标题】:Checking with blank(param("some_parameter_name"))) fails with NPE使用空白(参数(“some_parameter_name”)))检查失败并出现 NPE
【发布时间】:2017-12-21 14:00:33
【问题描述】:

我尝试检查是否存在强制请求参数

if (blank(param("some_parameter_name"))) {
   // throw SomeException
}

NPE 失败了,因为:

  • HTTPSupport#blank(String ... names) 中有一个呼叫if(Util.blank(param(name)))
  • 调用param(name)时返回RequestUtils.param(name)
  • RequestUtils.param(name) 中调用if(name.equals("id")) 时失败,因为name 参数为空。我应该为此打开一个问题吗?

【问题讨论】:

    标签: activeweb


    【解决方案1】:

    这是对 API 的错误使用

    请这样使用:

    if (blank("param1", "param2",...)) {
       // throw SomeException
    }
    

    换句话说,blank() 方法需要检查参数名称。

    查看文档:HttpSupport.html#blank

    【讨论】:

    • 啊,好吧,我的错,-我相信我必须通过param("some_name")。谢谢。
    • 那么你可能想升级答案:)
    猜你喜欢
    • 2022-01-21
    • 1970-01-01
    • 2017-08-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-10
    • 2017-07-31
    • 1970-01-01
    相关资源
    最近更新 更多