求助!java.lang.NumberFormatException: For input string: "+price+"高手请进!谢谢!急!!!!!

shyskyshy 2010-04-10 02:18:36
代码如下:
while(rs.next())
{
int productsId=rs.getInt(1) ;
String productsName=rs.getString(2) ;
String productsType=rs.getString(3);
float price=rs.getFloat(4);
float priceoff=rs.getFloat(5);
String supplier=rs.getString(6) ;
String place=rs.getString(7);
int storage=rs.getInt(8);
%>
<tr>
<td bgcolor="27CCF5"><%=productsName%></td>
<td bgcolor="27CCF5"><%=productsType%></td>
<td bgcolor="27CCF5"><%=price%></td>
<td bgcolor="27CCF5"><%=priceoff%></td>
<td bgcolor="27CCF5"><%=supplier%></td>
<td bgcolor="27CCF5"><%=place%></td>
<td bgcolor="27CCF5"><%=storage%></td>
<form method="post"action="addProducts.jsp"target="cart">
<input type='hidden'name='productsId'value="+productsId+">
<input type='hidden'name='productsName'value="+productsName+">
<input type='hidden'name='productsType'value="+productsType+">
<input type='hidden'name='price'value="+price+">
<input type='hidden'name='priceoff'value="+priceoff+">
<input type='hidden'name='supplier'value="+supplier+">
<input type='hidden'name='place'value="+place+">
<td bgcolor="27CCF5"><input type='text'name='number'size=8></td>
<td bgcolor="27CCF5"><input type='submit'value='购买'></td>
</form>
</tr>
出现以下问题,看了半天了,都不知道哪里错了,按理说+price+这里没错的啊,请高手指点!
exception

org.apache.jasper.JasperException: For input string: "+price+"
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:372)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)


root cause

java.lang.NumberFormatException: For input string: "+price+"
sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1224)
java.lang.Float.valueOf(Float.java:360)
java.lang.Float.<init>(Float.java:461)
org.apache.jsp.client.addProducts_jsp._jspService(addProducts_jsp.java:95)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

...全文
3288 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
a745248674 2011-09-28
  • 打赏
  • 举报
回复
每日回帖有分拿~回个帖先
mamaodenghu 2010-11-27
  • 打赏
  • 举报
回复
haha
yang717056084 2010-07-29
  • 打赏
  • 举报
回复
牛。我现在才碰到这样的问题,
yanghuistart 2010-04-12
  • 打赏
  • 举报
回复
<input type='hidden' name='price' value="<%=price%>" /> 应该就ok了!
ysfxhxyyy 2010-04-12
  • 打赏
  • 举报
回复
<input type='hidden' name='price' value="<%=price%>">如果不行就改成<input type='hidden' name='price' value="<%=(String)price%>">
shyskyshy 2010-04-11
  • 打赏
  • 举报
回复
String price=rs.getFloat(4)+"";
转换为String类型,还是出现这个错误

[Quote=引用 1 楼 kakukyowu 的回复:]
float price=rs.getFloat(4); // float类型

<input type='hidden'name='price'value="+price+"> // String类型


==》格式化错误,float类型的属性不能赋予String类型的值。
[/Quote]
huanec 2010-04-11
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 qingzhe2008 的回复:]
<input type='hidden'name='price'value="+price+">
中+price+什么意思,没看懂这样的写法?
[/Quote]
LZ的意思是想让非字符串类型的直接输出吧.没必要用 "+valueName+".
本身是没错的.你读取数据的时候 float f=rs.getFloat(4f) ? 试一下

为何不用 <input type='hidden'name='price'value="<%=price%>">
qingzhe2008 2010-04-11
  • 打赏
  • 举报
回复
<input type='hidden'name='price'value="+price+">
中+price+什么意思,没看懂这样的写法?
owner188 2010-04-10
  • 打赏
  • 举报
回复
可能你的数据有问题
  • 打赏
  • 举报
回复
试试把你的那个属性放到setAttribute中,再拿出来试试
KAKUKYOWU 2010-04-10
  • 打赏
  • 举报
回复
float price=rs.getFloat(4); // float类型

<input type='hidden'name='price'value="+price+"> // String类型


==》格式化错误,float类型的属性不能赋予String类型的值。

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧