el表达式取map值 NumberFormatException: For input string

Stack Overflow is a question and answer site for professional and enthusiast programmers. It's 100% free, no registration required.
I keep getting this error here:
SEVERE: java.lang.NumberFormatException: For input string: ""
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:504)
at java.lang.Integer.parseInt(Integer.java:527)
at com.myapp.cmt.web.ContentController.saveContent(ContentController.java:129)
It happens when no options are selected on the dropdown menu for categories on my page.
I'm checking the length, so how come it's still trying to process the parseInt()?
String[] category = request.getParameterValues("categories");
if (category.length & 0) {
content.addCategory(contentDao.findCategory(Integer.parseInt(category[0])));
&strong&Category&/strong&&br/&
&select name="categories"&
&option&&/option&
&c:forEach items="${categories}" var="category"&
&option value="${category.id}" &c:if test="${content.hasCategory(category)}"& CHECKED&/c:if&&${category.name}&/option&
&/c:forEach&
14.7k37150272
The length of your array is only half the story... you have to also check what's in the array. Try some code like this:
if (category.length & 0 &&
category[0] != null &&
category[0].trim().length() & 0)
content.addCategory(contentDao.findCategory(Integer.parseInt(category[0])));
149k24152258
A single empty element of category is returned. In your if statement, you should also check for category[0] != null && !"".equals(category[0].trim())
3,71841339
Your Answer
Sign up or
Sign up using Google
Sign up using Facebook
Sign up using Stack Exchange
Post as a guest
required, but not shown
Post as a guest
required, but not shown
By posting your answer, you agree to the
Not the answer you're looking for?
Browse other questions tagged
Stack Overflow works best with JavaScript enabledEL表达式有关问题:当一个类继承ArrayList后,用EL取时就出错了?
&来源:读书人网&【读书人网():综合教育门户网站】
EL表达式问题:当一个类继承ArrayList后,用EL取时就出错了??很奇怪,反正继承ArrayList后,属性不能通过EL取
EL表达式问题:当一个类继承ArrayList后,用EL取时就出错了??很奇怪,反正继承ArrayList后,属性不能通过EL取到,必须TestEL myList = (TestEL)request.getAttribute(&t&);String name = testEL.getName();这样才能取到。怎样才能以EL取到呢,求助???代码:Java codeimport java.util.ArrayLpublic class TestEL extends ArrayList {
public String getName() {
public void setName(String name) {
this.name =
}jsp页面:HTML code&%@ page language=&java& import=&java.util.*& pageEncoding=&UTF-8&%&&%@page import=&test.*&%&&%TestEL t = new TestEL();t.setName(&testxxxxxxxxxx&);request.setAttribute(&t&, t);%&${t.name}&br/&异常:java.lang.NumberFormatException: For input string: &name&at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)at java.lang.Integer.parseInt(Integer.java:447)at java.lang.Integer.parseInt(Integer.java:497)at javax.el.ListELResolver.coerce(ListELResolver.java:167)at javax.el.ListELResolver.getValue(ListELResolver.java:51)at positeELResolver.getValue(CompositeELResolver.java:54)at org.apache.el.parser.AstValue.getValue(AstValue.java:123)at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)at org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:938)at org.apache.jsp.test_jsp._jspService(test_jsp.java:69)at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:386)at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)at java.lang.Thread.run(Thread.java:619) 15:26:13 org.apache.catalina.core.StandardWrapperValve invoke[解决办法]java.lang.NumberFormatException: For input string: &name&是不是什么地方把t.name当数字用了,检查一下是否还有其他地方在用name。[解决办法]&%@ page language=&java& import=&java.util.*& pageEncoding=&UTF-8&%&&%@page import=&test.*&%&&%TestEL t = new TestEL();t.setName(&100&);request.setAttribute(&t&, t);%&
${t.name}&br/&看下这个可以吗?[解决办法]java.lang.NumberFormatException[解决办法] 把
name换成别的试试 有可能和 arrayList的起冲突了。[解决办法]我想问为什么把一个实体类继承了ArrayList,用el表达式,对象必须的标准的javabean[解决办法]我觉得你的代码要改下了 美女~~~!!你在list里面取值用C标签的里面的一个forEach 你看看你传到jsp里面那个名字加了${你的集合名字}这个没有你没有加$就会出现你的错误一般出现你的那个异常就是由于你的el表达式不合法照成的[解决办法]Java code&%@ page language=&java& import=&java.util.*& pageEncoding=&UTF-8&%&&%@page import=&test.*&%&&%TestEL t = new TestEL();t.setName(&testxxxxxxxxxx&);request.setAttribute(&t&, t);%&${t[0].name}&br/&[解决办法]报错就是name是int型的啊帮帮忙 java.lang.NumberFormatException: For input string:_java吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:208,863贴子:
帮帮忙 java.lang.NumberFormatException: For input string:收藏
try&{
&&&&&&&&&&&&String&
&&&&&&&&&&&&String&
&&&&&&&&&&&&String&front_1;
&&&&&&&&&&&&int&count&=&0;
&&&&&&&&&&&&
&&&&&&&&&&&&FileReader&filename&=&new&FileReader(&H://Demo.txt&);
&&&&&&&&&&&&BufferedReader&b_read&=&new&BufferedReader(filename);
&&&&&&&&&&&&while&((li&=&b_read.readLine())&!=&null)&{
&&&&&&&&&&&&&&&&int&p&=&li.indexOf(&=&);&//变量p是“=”的下标值
&&&&&&&&&&&&&&&&li.length();&//每行的长度;
&&&&&&&&&&&&&&&&//“=”前面的部分
&&&&&&&&&&&&&&&&front_1&=&li.substring(0,&p&+&1);&//算前不算后如果到p的话是打印不出来等号的,
&&&&&&&&&&&&&&&&//p+1的时候可以打印等号,而且front_1&=&li.substring(0,&p)还会出错,奇怪吧
&&&&&&&&&&&&&&&&//&System.out.println(front_1);打印的是等号前面的包括等号
&&&&&&&&&&&&&&&&//“=”后面的部分
&&&&&&&&&&&&&&&&infor&=&li.substring(p&+&1,&li.length());
&&&&&&&&&&&&&&&&if&(front_1.equals(&salary=&))&{
&&&&&&&&&&&&&&&&&&&&count&=&count&+&1;
&&&&&&&&&&&&&&&&&&&&int&ddd=&Integer.parseInt(infor);
&&&&&&&&&&&&&&&&&&&&System.out.println(infor);
&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&}
&&&&&&&&&&&&&&&&//System.out.println(infor);&//打印出等号后面的,也就是我们所要的信息
&&&&&&&&&&&&&&&&//System.out.println(li);//将文件中的所有东西都打印出来
&&&&&&&&&&&&&}
&&&&&&&&&&&&
&&&&&&&&&&&&//&System.out.print(count);//&人数
&&&&&&&&}&catch&(Exception&e)&{
&&&&&&&&&&&&e.printStackTrace();
&&&&&&&&}
&&&&
为何总是出现&String转化为int&的错误呢,Demo.txt中数据为
Department=shichangbu
name=zhangyang
birthday=1984
salary=2000&
Department=kafabu&
name=humin&
birthday=1988&
salary=2222
快试试吧,可以对自己使用挽尊卡咯~◆◆
把int&ddd=&Integer.parseInt(infor);&这一行改成:
int&ddd=&Integer.parseInt(infor.trim());
谢谢,问题解决了,十分感谢,
如何&分页显示文本中的&内容,
&也就是说,&我有一个c/s&桌面应用程序,读出文本的
shichangbu
内容
我想知道&点击按钮(上一页&,下一页)&后怎么样出现一条一条的,
先拿2000&和2222&作例子,点下一页出现2000&,再点&出现2222
看一下我的部分代码,
if&(front_1.equals(&salary=&))&{
&count&=&count&+&1;
&information.trim();
&information.toCharArray();
&infor&=&Integer.parseInt(information);
&//System.out.println(infor&+&&......&&+&count);
&total&+=&
&final&StringBuffer&sb&=&new&StringBuffer(information);
&b_back.addActionListener(
&new&ActionListener()&{
&public&void&actionPerformed(ActionEvent&e)&{
&
&System.out.println(sb);
&
&}
&
&}
&);
&
&}是上一贴的补充,点击下一页,
他打印的是
2000
2222
在点击下一页,
还是
2000
2222
快试试吧,可以对自己使用挽尊卡咯~◆◆
我正好也遇到这问题了
用&218.75.242.*&的答案解决了&
谢谢
快试试吧,可以对自己使用挽尊卡咯~◆◆
用&218.75.242.*&的答案解决bu了
555
快试试吧,可以对自己使用挽尊卡咯~◆◆
我的问题也解决不了
java.lang.NumberFormatException:&For&input&string&:&,&
快试试吧,可以对自己使用挽尊卡咯~◆◆
java.lang.NumberFormatException:&For&input&string:&&,&
这个问题怎么解决啊/?
请各位兄弟帮帮忙?
急需....
快试试吧,可以对自己使用挽尊卡咯~◆◆
内部服务器错误
服务器遇到了一个内部错误而无法完成请求。&
java.lang.NumberFormatException:&For&input&string:&&?&
at&java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
at&java.lang.Integer.parseInt(Integer.java:447)
at&java.lang.Integer.parseInt(Integer.java:497)
at&com.util.ConvertUtil.getMerchandiseType(ConvertUtil.java:86)
at&_jspx._flowanalyse._product__jsp._jspService(flowanalyse/product.jsp:112)
at&com.apusic.web.jsp.runtime.HttpJspPageImpl.service(Unknown&Source)
at&javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at&com.apusic.web.container.ServletComponent.service(Unknown&Source)
at&com.apusic.web.container.WebContainer.invoke(Unknown&Source)
at&com.apusic.web.container.WebContainer.invoke(Unknown&Source)
at&com.apusic.web.jsp.JspServlet.service(Unknown&Source)
at&javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at&com.apusic.web.container.ServletComponent.service(Unknown&Source)
at&com.apusic.web.container.WebContainer.invoke(Unknown&Source)
at&com.apusic.web.container.WebContainer.processRequest(Unknown&Source)
at&com.apusic.web.http.VirtualHost.processRequest(Unknown&Source)
at&com.apusic.web.http.HttpServer.processRequest(Unknown&Source)
at&com.apusic.web.http.HttpConnectionHandler.service(Unknown&Source)
at&com.apusic.web.http.ConnectionHandler.processRequest(Unknown&Source)
at&com.apusic.web.http.ConnectionHandler.processConnection(Unknown&Source)
at&com.apusic.web.http.ConnectionHandler.run(Unknown&Source)
at&com.apusic.util.ThreadPoolImpl$WorkerThread.run(Unknown&Source)
________________________________________
Apusic/5.1
快试试吧,可以对自己使用挽尊卡咯~◆◆
rs.getString(&你要输入&)
快试试吧,可以对自己使用挽尊卡咯~◆◆
登录百度帐号我的游戏推荐游戏
后查看最近玩过的游戏
为兴趣而生,贴吧更懂你。或java.lang.NumberFormatException: For input string: &&
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
at java.lang.Integer.parseInt(Integer.java:468)
at java.lang.Integer.parseInt(Integer.java:497)
at qing.log.struts.action.LiuAction.execute(LiuAction.java:44)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
怎样将上面的内容记录到日志文件中???-----参考解决方法-------%m%n
-----参考解决方法-------Java code
在log4j.properties文件!
log4j.appender.file=org.apache.log4j.FileAppender
log4j.appender.file.File=D://info.log
//这里设置日志文件输出路径
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %m %n
log4j.rootLogger=DEBUG, file
//定义一个类
public class LogInfo {
Logger logger = Logger.getLogger(LogInfo.class.getName());
* 系统管理
* @param addmin(String
name,String addname)添加管理员
* @param name
* @param addname
public void addadmin(String name, String addname) {
logger.debug(&管理员:& + name + &添加& + addname + &为管理员&);
} catch (Exception ex) {
(ex.getMessage());
//……各种各样的方法自己定义
-----参考解决方法-------当发生异常的时候在catch处调用该方法即可!new LogInfo().addadmin(u.getUserName(),userName);//记录到日志中
-----参考解决方法-------Java code
* org.apache.log4j.Logger
* private static Logger log = Logger.getLogger(&在log4j.properties文件中的 appenderName&);
* 把log4j.properties 放在src下.
* log4j.properties 包含的内容如下:
* log4j.rootLogger = [priority] , appenderName
-- appenderName 为该日志的名称 , 可以为多个.
* log4j.appender 为 输出源 指定信息输出的地址: ConsoleAppender为控制台 RollingFileAppender 为文件大小到指定尺寸产生一个新的文件
* log4j.appender.layout 设置 输出源 显示格式.
配置 log4j.properties
log4j.rootLogger = ALL,Mylog,R
log4j.appender.Mylog = org.apache.log4j.ConsoleAppender
log4j.appender.Mylog.layout = org.apache.log4j.PatternLayout
log4j.appender.Mylog.layout.conversionPattern = %d %p %c --& %m%n
指定日志文件放的位置
log4j.appender.R.File=D:/env/environment/webEnv/WEB-INF/log4j.log
log4j.appender.R.MaxFileSize=100KB
log4j.appender.R.MaxBackupIndex=1
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n
log4j.appender.R.layout.ConversionPattern=%d %-5p [%t] (%13F:%L) %3x - %m%n
* ---------------------------------------
Logger logger = Logger.getLogger(&Mylog&);
PropertyConfigurator.configure(&log4j.properties&);
-- 自动快速的使用默认Log4j环境
logger.debug(&&);
logger.error(&&);
logger.fatal(&&);
logger.warn(&&);
那个类使用日志 则参照上面代码即可.
开发者笔记
软件开发/管理/测试
企业管理/开发
嵌入式开发
高性能开发
编程语言/框架
专题项目/开发/技术
Linux/UnixExample of try-catch blocks to handle NumberFormatException_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
评价文档:
暂无相关推荐文档
Example of try-catch blocks to handle NumberFormatException|
把文档贴到Blog、BBS或个人站等:
普通尺寸(450*500pix)
较大尺寸(630*500pix)
你可能喜欢}

我要回帖

更多关于 el表达式获取map 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信