java.lang.NumberFormatException: For input string: "id"
我有一个hibernate映射的树状结构的实体,代码如下
- Java code
@Entity@Table(name = "t_organization")public class Organization { private int id; private String name; private String sn;// private String description; private Organization parent; private Set<Organization> children = new HashSet<Organization>(); @Id @GeneratedValue public int getId() { return id; } public void setId(int id) { this.id = id; } @ManyToOne() @JoinColumn(name = "pid") public Organization getParent() { return parent; } public void setParent(Organization parent) { this.parent = parent; } @OneToMany(cascade=CascadeType.ALL,mappedBy = "parent") public Set<Organization> getChildren() { return children; } public void setChildren(Set<Organization> children) { this.children = children; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getSn() { return sn; } public void setSn(String sn) { this.sn = sn; } public String getDescription() { return description; } public void setDescription(String description) { this.description = description; }},在查询的时候value stack中已经有值了,但用如下代码显示时报java.lang.NumberFormatException: For input string: "id"错
- Java code
<s:iterator value="orgs"> <tr bgcolor="#EFF3F7" class="TableBody1" onmouseover="this.bgColor = '#DEE7FF';" onmouseout="this.bgColor='#EFF3F7';"> <td align="center" vAlign="middle"><s:property value="id"/></td> <td align="center" vAlign="middle"><s:property value="name"/></td> <td align="center" vAlign="middle"><s:property value="sn"/></td> <td align="center" vAlign="middle"><s:property value="parent.name"/></td> <td align="center" vAlign="middle"><a href="#" onclick="">删除</a></td> </tr> </s:iterator>
[解决办法]
检查下value stack中id是否有String的。
[解决办法]
java.lang.NumberFormatException
[解决办法]
前台传过来的id是“String”型的!
[解决办法]
java.lang.NumberFormatException: For input string: "id"
这是格式化异常,无法格式化string类型的id
[解决办法]
类型转换问题 库里定义的int 页面上是String
你可以在<s:property value="id"/>
上边先把id 取出来 转化一下 String ids = String.valueof(id);
然后直接放在td里边
这个地方别用S标签了
[解决办法]
汗 看错了 你这是不是查询列表啊
[解决办法]
在查询的时候value stack中已经有值了,说明你查出来的数据类型是String,但是你程序中用的是int,你把类型转化下
------解决方案--------------------
把Organization 的id改为String型。。
[解决办法]
private String id;这样试试!
[解决办法]
额……
应该是代码马虎了吧!
你是直接把"id"这个字符串,而不是值直接送进去处理了……
跟踪下,没猜错,值就是“id”,而不是id变量的值^.^
java.lang.NumberFormatException: For input string: "id"
输入字符串:"id",做数字格式化异常……
[解决办法]
14楼分析的是
[解决办法]
疏忽大意