Java问题汇集(1)
1.javax.el.PropertyNotFoundException: Property 'Price' not found on type pet.petshop.dto.WareDto
简答:主要是原因是WareDto中的属性Price的命名不规范造成的
private float Price 错误的写法 private float price 正确的写法 ${ware.Price}获取不到 ${ware.price}可以获取到
private float MyName 错误的写法 private float myName 正确的写法 ${ware.Myname}获取不到 ${ware.myName}可以获取到
注解:也许按java的语法来说,这两种写法都没有错,但是使用el表达式的时候,它会默认属性名是小写开头,即我们通常的写法.当然大家也许觉得这是个bug,但是大家也许会注意到另一个问题,struts2传参时,struts的机制到底是通过你的属性名来传值,还是通过setter/getter方法名来确定传值呢,答案是后者。这里是题外话。这里给出出现该类异常的常见原因:1.可能是el表达式中你的属性名写错,跟没有该属性是同一种错误 2.可能是setter/getter方法没写
2.org.apache.jasper.JasperException: <h3>Validation error messages from TagLibraryValidator for c in /manager/ware_management.jsp</h3><p>182: Illegal child tag in "c:choose" tag: "c:forEach" tag</p>
简答:这个问题是c:choose标签被截断引起的
错误代码:
<c:choose>
<c:when test="${fn:length(requestScope.pages.list)>0}"></c:when>
<c:forEach items="${requestScope.pages.list}" var="ware">
<tr>
<td><input type="checkbox" name="DeleteID" value='${ware.wareID}'/></td>
<td> ${ware.sortName}</td>
<td> <a href="${ctx}/ware/WaretServlet?action=ware_info&flag=0&WareID=${ware.wareID}">${ware.wareName}</a></td>
<td> ${ware.addr}</td>
<td> ${ware.company}</td> <td><a href="${ctx}/ware/WaretServlet?action=ware_info&flag=1&WareID=${ware.wareID}"><img src="${ctx}/manager/images/user_edit.png" alt="" title="" border="0" /></a></td>
<td><a href="#" class="ask"><img src="${ctx}/manager/images/trash.png" alt="" title="" border="0" /></a></td>
</tr>
</c:forEach> <c:otherwise>
<tr>
<td colspan="7">还没有相关产品哦,快去添加一些吧~~~</td>
</tr>
</c:otherwise>
</c:choose>
正确的代码:
<c:choose>
<c:when test="${fn:length(requestScope.pages.list)>0}">
<c:forEach items="${requestScope.pages.list}" var="ware">
<tr>
<td><input type="checkbox" name="DeleteID" value='${ware.wareID}'/></td>
<td> ${ware.sortName}</td>
<td> <a href="${ctx}/ware/WaretServlet?action=ware_info&flag=0&WareID=${ware.wareID}">${ware.wareName}</a></td>
<td> ${ware.addr}</td>
<td> ${ware.company}</td> <td><a href="${ctx}/ware/WaretServlet?action=ware_info&flag=1&WareID=${ware.wareID}"><img src="${ctx}/manager/images/user_edit.png" alt="" title="" border="0" /></a></td>
<td><a href="#" class="ask"><img src="${ctx}/manager/images/trash.png" alt="" title="" border="0" /></a></td>
</tr>
</c:forEach>
</c:when>
<c:otherwise>
<tr>
<td colspan="7">还没有相关产品哦,快去添加一些吧~~~</td>
</tr>
</c:otherwise>
</c:choose>
看上面的代码,大家会发现是在第2行的c:when截断了choose代码
3.js中使用el表达式问题
一:可以通过window.onload()来得到EL的值再传送给JS文件里的全局变量、方法进行变量初始化 。
二:可以在JSP页面中添加一个隐藏域,给它赋值,在单独的js文件中,通过获取隐藏域的值就间接的获取到了EL表达式的值。
4.javax.servlet.jsp.JspTagException: Don't know how to iterate over supplied "items" in <forEach>
出错代码:
<%--<c:set var="goods" value="${requestScope.pages.list}"/>正确代码--%>
<%--<c:set var="goods" value="${requestScope.pages}"/>错误代码--%>
<c:set var="goods" value="${requestScope.pages}"/>
<c:forEach items="${goods}" var="good">
<tr>
<td><input type="checkbox" name="DeleteID" value="${good.goodsID}" /></td>
<td> ${good.goodsID}</td>
<td><a href="../ware_detail.jsp?WareID=${good.wareID}" >${good.wareName}</a></td>
<td> <a href="user_detail.jsp?UserID=${good.userID}" >${good.userName}</a></td>
<td> ${good.buyNumber}</td>
<td> ${good.createtime}</td>
</tr>
</c:forEach>
原因: 这里面错误的原因就是items里面不是集合
5.net.sf.json.JSONException: java.lang.reflect.InvocationTargetException
具体:把ArrayList<WareDto>转化为Json数据时出错。
原因:WareDto为非标准的JavaBean或里面有属性没有提供setter/getter方法
6.严重: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sqlMapClient' defined in ServletContext resource [/WEB-INF/classes/applicationContext.xml]: Invocation of init method failed; nested exception is org.springframework.core.NestedIOException: Failed to parse config resource: ServletContext resource [/WEB-INF/sqlmap-config.xml]; nested exception is com.ibatis.common.xml.NodeletException: Error parsing XML. Cause: java.lang.RuntimeException: Error parsing XPath '/sqlMapConfig/sqlMap'. Cause: com.ibatis.common.xml.NodeletException: Error parsing XML. Cause: java.lang.RuntimeException: Error parsing XPath '/sqlMap/resultMap/result'. Cause: com.ibatis.common.beans.ProbeException: There is no WRITEABLE property named 'userName_cn' in class 'com.sie.vo.User'
57 more
提示:遇到这种问题,应该顺着Cause一个一个往下找,最后找到了'userName_cn' in class 'com.sie.vo.User'
7.An internal error occurred during: "Launching SSI2 on Tomcat 6.x".
解决方案:
1、首先关闭MyEclipse工作空间。
2、然后删除工作空间下的
“/.metadata/.plugins/org.eclipse.core.runtime/.settings/com.genuitec.eclipse.ast.deploy.core.prefs”
这个文件。在这个文件中存储了一些部署项目的信息。删了这个部署的项目的信息就没有错误了。
3、重启启动MyEclipse即可解决了。
Java问题汇集(1)的更多相关文章
- Java问题汇集(2)
1.Error setting driver on UnpooledDataSource 具体:Exception in thread "main" org.apache.ibat ...
- Spark案例分析
一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...
- java基础概念经典题目汇集
1.下面是People和Child类的定义和构造方法,每个构造方法都输出编号.在执行new Child("mike")的时候都有哪些构造方法被顺序调用?请选择输出结果 ( ) cl ...
- java.lang.UnsatisfiedLinkError解决方法汇集(转载)
我的解决方法: 将sigar.jar拷贝到/WEB-INF/lib/下,但这个方法不知道是不是终极解决办法,暂时没问题,其他方法可参考下面. 运行JSP报表程序页面出现java.lang.Unsati ...
- java 规则引擎资料汇集
1. ibm的developworks中较早的一篇关于规则引擎的文章 https://www.ibm.com/developerworks/cn/java/j-java-rules/ 2. 一篇硕士论 ...
- 【JavaSE】Java基础·疑难点汇集
Java基础·疑难点 2019-08-03 19:51:39 by冲冲 1. 部分Java关键字 instanceof:用来测试一个对象是否是指定类型的实例. native:用来声明一个方法是由与 ...
- 【Java心得总结五】Java容器上——容器初探
在数学中我们有集合的概念,所谓的一个集合,就是将数个对象归类而分成为一个或数个形态各异的大小整体. 一般来讲,集合是具有某种特性的事物的整体,或是一些确认对象的汇集.构成集合的事物或对象称作元素或是成 ...
- 《Java学习笔记(第8版)》学习指导
<Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...
- 大型网站系统与Java中间件实践
大型网站系统与Java中间件实践(贯通分布式高并发高数据高访问量网站架构与实现之权威著作,九大一线互联网公司CTO联合推荐) 曾宪杰 著 ISBN 978-7-121-22761-5 2014年4 ...
随机推荐
- Poj 1006 / OpenJudge 2977 1006 Biorhythms/生理周期
1.链接地址: http://poj.org/problem?id=1006 http://bailian.openjudge.cn/practice/2977 2.题目: Biorhythms Ti ...
- 转载:mysql 对于百万 千万级数据的分表实现方法
一般来说,当我们的数据库的数据超过了100w记录的时候就应该考虑分表或者分区了,这次我来详细说说分表的一些方法.目前我所知道的方法都是MYISAM的,INNODB如何做分表并且保留事务和外键,我还不是 ...
- PHP 透明水印生成代码
PHP 透明水印生成代码,需要的朋友可以参考下. 复制代码代码如下: <?php /* * Created on 2010-10-27 * BY QQ542900563 * Copyri ...
- wamp——利用phpmyadmin修改数据库密码
一.wamp版本 我采用的是 WampServer2.2a-x32.exe 这个版本的安装程序. 二.问题描述 安装wamp后,mysql数据库默认密码为空,但是由于某 ...
- 【原创】一起学C++ 之enum ---------C++ primer plus(第6版)
枚举 定义:在默认情况下讲整数值赋给枚举量,第一个枚举量的值为0,第二个枚举量的值为1,依次+1 一.定义一个枚举,枚举类型,枚举量 *与C#相比个人认为C++的enum不好一点是不能通过枚举名点其中 ...
- Class.forName()的作用与使用总结(转载)
转载自:Class.forName()的作用与使用总结 1.Class类简介: Java程序在运行时,Java运行时系统一直对所有的对象进行所谓的运行时类型标识.这项信息纪录了每个对象所属的类.虚拟机 ...
- 成为Java GC专家(5)—Java性能调优原则
并不是每个程序都需要调优.如果一个程序性能表现和预期一样,你不必付出额外的精力去提高它的性能.然而,在程序调试完成之后,很难马上就满足它的性能需求,于是就有了调优这项工作.无论哪种编程语言,对应用程序 ...
- Android手势监听
public class MainActivity extends Activity { /* * 要实现手指在屏幕上左右滑动的事件需要实例化对象GestureDetector,new * Gestu ...
- SpringMVC的controller方法中注解方式传List参数使用@RequestBody
在SpringMVC控制器方法中使用注解方式传List类型的参数时,要使用@RequestBody注解而不是@RequestParam注解: //创建文件夹 @RequestMapping(value ...
- ExtJS4.2学习(17)表单基本输入控件Ext.form.Field(转)
鸣谢:http://www.shuyangyang.com.cn/jishuliangongfang/qianduanjishu/2013-12-11/189.html --------------- ...