出错了:java.lang.string can not cast to org 手机出现这,
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了出错了:java.lang.string can not cast to org 手机出现这,相关的知识,希望对你有一定的参考价值。
么搞的
参考技术A你的代码估计是 jsonobject jo = (JSonObject)str;//将字符串强转成jsonobject,此时会上述错误。
解决此错误的思路是:
将一个字符串转成json对象,并不能使用强转,而应该使用相关的json包,它们提供了字符串和jsonobject、jsonarry等对象转换的api。
google一下字符串和json对象互转,即可找到解决方案。
java.lang.string can not cast to org .json.JSONObect
java.lang.string can not cast to org .json.JSONObect
这种问题怎么解决啊
追答你把出错的位置的代码拿过来啊。这个错误就是string转换成json格式出的错。为什么出错你得把代码弄过来
参考技术C 类型转换异常。具体是什么 我就不知道了追问后面还有json.JSONObect.
追答手机我不太清楚呀。软件冲突么? 你什么操作导致的这个异常啊
无法将类型 [java.lang.String] 的属性值转换为所需类型 [java.lang.Integer]
【中文标题】无法将类型 [java.lang.String] 的属性值转换为所需类型 [java.lang.Integer]【英文标题】:Failed to convert property value of type [java.lang.String] to required type [java.lang.Integer] 【发布时间】:2017-04-21 05:34:37 【问题描述】:我正在使用 Spring MVC 和 Spring Security 以及休眠。我在将“电话号码”保存到“数据库”时遇到问题。哪里出错了?
提交表单时出现以下错误
Failed to convert property value of type [java.lang.String] to required type [java.lang.Integer] for property Phone_Number; nested exception is java.lang.NumberFormatException: For input string: "(020)828-5852"
这是我的看法:
<div class="control-group ">
<label class="control-label" for="phone" >Phone Number</label>
<div class="controls">
<form:input id="phone" path="Phone_Number" type="text"
class="form-control span4"/>
<div class="has-error">
<form:errors path="Phone_Number" class="help-inline" />
</div>
</div>
</div>
型号:
@NotNull
@Column(name="PHONE_NUMBER", nullable=false)
private Integer Phone_Number;
我的控制器:
@RequestMapping(value = "/newuser" , method = RequestMethod.GET)
public String newUser(ModelMap model)
UsersInfo usersInfo = new UsersInfo();
model.addAttribute("usersInfo", usersInfo);
model.addAttribute("edit", false);
model.addAttribute("loggedinuser", getPrincipal());
return "adduser";
@RequestMapping(value = "/newuser" , method = RequestMethod.POST)
public String saveUser(@Valid UsersInfo usersInfo, BindingResult result, ModelMap model)
if (result.hasErrors())
return "adduser";
if (!userInfoService.isUserUserNameUnique(usersInfo.getIdUsers(), usersInfo.getUserName()))
FieldError UsernameError = new FieldError("usersInfo", "UserName", messageSource
.getMessage("non.unique.UserName", new String[] usersInfo.getUserName() , Locale.getDefault()));
result.addError(UsernameError);
return "adduser";
我读到我要将此 Bean 添加到我的休眠配置中
@Bean
public static PropertySourcesPlaceholderConfigurer propertySourcesPlaceholderConfigurer()
return new PropertySourcesPlaceholderConfigurer();
但错误信息仍然存在。
【问题讨论】:
【参考方案1】:您尝试在表单中发送的数字不是有效的整数 - 它包含括号。在这种情况下,您应该将模型上的 Phone_Number 类型更改为 String。
【讨论】:
【参考方案2】:如果要将电话号码作为 int 处理,请确保从视图接收到的参数是 Integer。
你可以试试这个:
<form:input id="phone" path="Phone_Number" type="number" class="form-control span4"/>
【讨论】:
以上是关于出错了:java.lang.string can not cast to org 手机出现这,的主要内容,如果未能解决你的问题,请参考以下文章
Jackson错误:Can not deserialize instance of java.lang.String out of START_OBJECT token
Jackson错误:Can not deserialize instance of java.lang.String out of START_OBJECT token
将 firebase 数据放入 recyclerview 时出错,“反序列化时需要一个列表,但有一个类 java.lang.String”
解析数据 org.json.JSONException 时出错:Java.lang.String 类型的值 <!DOCTYPE 无法转换为 JSONObject
解决用户自生成meta导入kylin后报错问题Can not deserialize instance of java.lang.String[] out of VALUE_STRING token(
Could not read document: Can not deserialize instance of java.lang.String out of START_ARRAY