java web 开发之报错异常笔记(一)

1. eclipse创建动态web工程后报错(Dynamic Web Project)Java compiler level does not match the version of the…

报错如图所示:(我用的是eclipse2020,javaEE视图在这里插入图片描述
在这里插入图片描述
点开Error Pages看,如下图:
在这里插入图片描述
我以为是web.xml这个文件不存在造成的错误,原因是我创建工程的时候没有如图勾选
在这里插入图片描述
但在我重新勾选创建了一个工程时还是会报错!?

最终找到了错误及解决方法:
1.点击eclipse右上角如图图标,打开web视图,发现了真正的错误
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
那就把项目jdk版本改成我自己的jdk版本。(我的是14)

2.右击工程名,选择Properties在这里插入图片描述
3.输入框搜索fac–>点击Project Facets–>修改Java版本–》应用并关闭
在这里插入图片描述
最终问题解决!
额。。有关这个项目jdk版本冲突问题,小白们真的需要注意下,😂,找不到错的情况下可以考虑一下版本冲突问题了。

其实这个红叉对项目运行没什么影响,但是,做编程的的总有些强迫症,看着红叉,我难受啊ヾ(≧へ≦)〃,

2. 报错:Project xxx is missing required source folder: ‘src/main/resources’

原因 : 开发环境中,eclipse.project文件可能存在对缺失文件夹的引用,但是project中已经没有了该文件夹,导致编译的时候找不到该文件夹。
解决方法: 选中project–>右键–>properties—>java build path–>Source,把缺少的文件夹remove掉(文件夹后都有提示missing)

3. Whitelabel Error Page :This application has no explicit mapping for /error,so you seeing this as a fallback…

我想把html中的表单元素的值传给控制台,报错
在这里插入图片描述
参数 quantity 存在,但是无法将其转为为 null
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
用基本数据类型,不能给其赋值为空
改用包装类
在这里插入图片描述
在这里插入图片描述

4. 报错:The import javax.servlet.http cannot be resolved

eclipse导入web项目后报错:
最近要做一个项目实训,在eclipse导入了老师给的一个web项目原型,
eclipse导入项目 具体导入步骤:File–>open Projects from File System–>
​​​​​​​在这里插入图片描述
导入后会发现你的项目报错了,工程名上有个小红叉,我第一秒想法是 jdk版本和项目jdk版本不同步的问题,该问题解决方法 参考本文第一条

然而·红叉还在,说明不是这个原因。

(1) 打开web视图,查看具体错误,如下·

The import javax.servlet.http cannot be resolved

错误原因:缺少了有关 tomcat 服务所带的 servlet 配置文件,因为我们的机器上可能缺少或版本不对应项目运行所需的tomcat

解决方法:右击项目选择 properties -->选择java Build Path -->选择Libraries 选项卡,把他原有的tomcat 从依赖列表中选中Remove掉–>Add Library (添加上自己机器里有的tomcat)–>Apply and Close

(2) 右键刷新项目,发现又报了一个 Targeted Runtime 运行时环境的错

解决方法:右击项目选择 properties -->选择 Targeted Runtimes -->选择自己的tomcat–>Apply and close

5. 不小心移动了目录结构, src/main/java 变成了 java,项目不能运行了

阿拉,,这是一个手贱,不小心移动了目录结构导致项目不能运行的悲惨故事。🙂

我最近在用 eclipse 完成一个 javaWeb 项目,基于 SSM 框架的。
今天调项目改代码的时候,不小心多点了一下(我习惯用触摸板),然后 maven 项目的 src/main/java 目录结构就变成了java…我意图挽救,然而没有成功,继上一次手贱后成功的把 src/main/resources 目录也变成了resources
由这个样子
在这里插入图片描述
变成了这个样子
在这里插入图片描述
构建路径变了,找不到要执行的文件,项目理所当然的不能用了,

解决方法:
1. 将Java build path的路径改回来
右击项目,选择 properties–> Java Build Path --> Source
(1) 有红叉就把错误的路径 remove 掉,然后 Add Folder…,选中需要修改的路径,把它添加进来。
(2) 没有红叉就 可以选中错误的路径,点击 编辑,把名字修改过来就可以了
在这里插入图片描述
改完就是这个样子
在这里插入图片描述
然后我们可能会看到如下情况
src/main/java的目录结构不在首位了,但不影响项目正常运行。
在这里插入图片描述

但是稍有强迫症的人会觉得不舒服,怎么把它改回来呢?
找到你的项目文件位置,修改 .classpath文件
在这里插入图片描述
找到 src/main/java 和 src/main/resources 路径,把它移动到首位就可以
在这里插入图片描述
最后右击刷新一下项目就可以看到原本的目录结构了~
最后,细节很重要。

6. java.lang.RuntimeException: java.sql.SQLException: Cannot create com.beans.RoleInfo:

项目运行报错:
在这里插入图片描述
我以为是我的sql语句写错了,检查半天无果。
在这里插入图片描述
在这里插入图片描述
原因是:
因为我在new一个对象时,调用了实体类的带参构造方法后,没有创建无参构造函数,导致下面语句用一个实体类对象接收时报sql的异常
(这里的 RoleInfo roleinfo 相当于直接调用了类RoleInfo默认的无参构造函数创造了一个类对象roleinfo。通常实体类里不用显示定义无参构造,用的时候系统默认会调用。但是RoleInfo已经有带参构造方法后,系统不会再默认调用无参构造函数,需要手动创建无参构造函数)。
在这里插入图片描述
解决方法:
(eclipse)Alt+shift+s,创建无参构造函数 (不然就自己手写一个)
在这里插入图片描述
所以,在创建了带参构造函数后,要记得手动生成一个无参构造函数,用不用再说,避免报异常不知道从哪里修改,要不然new实体类对象的时候就用下图这种方式,一个一个字段的set.也不用创建什么带参构造函数了,直接调用系统默认。
两个方式都可,看个人习惯,我更偏向前者,看着简洁
在这里插入图片描述

7. Uncaught ReferenceError: xxx is not defined

引用一个不存在的变量时发生的错误。将一个值分配给无法分配的对象,比如对函数的运行结果或者函数赋值。
我遇到过两种情况:
(1)在这里插入图片描述
在这里插入图片描述

<a href="javascript:;" onclick="delcate(id=${c_sub.id })">删除</a>

我一开始以为是我id传值传错了,导致触发点击方法时是传的是正确的25,传到ajax请求那里传成了错误的1,但我检查了整个流程,发现并没有错啊,
最后突然想到,会不会是id这个名与不知名的东东冲突了,,于是我改成了别的

<a href="javascript:;" onclick="delcate(cateid=${c_sub.id })">删除</a>

在这里插入图片描述
结果,,就成功了,心碎。以后命名还是尽量避免这些经常是字段属性的东东

(2) Uncaught ReferenceError: goodsadmin is not defined
检查了好几遍,结果居然是因为,adminName是字符串类型的,我传参的时候写的是adminName=${a.adminName},没加引号,所以接收不到

<a href="javascript:;" onclick="delAdmin(adminId=${a.id},adminName='${a.adminName}')">删除</a>

8. 控制台: java.lang.NumberFormatException: For input string: “”

浏览器:Uncaught SyntaxError: missing ) after argument list at goods_add.jsp 21:41
语法错误: 参数列表后面缺少 ),在goods_add.jsp页面的21行处
在这里插入图片描述
在这里插入图片描述
没错啊
最终检查半天,还是语法的问题,

$("#smallCateId").append("<option value="-1">-所属小分类</option>");

我复制过来的时候,什么也没改,value的双引号应该改成单引号的

9. 未完待续

有其他相关经验可以评论区回复或者私信都可以,一同进步!

java学习ing.jpg 😊o( ̄▽ ̄)ブ

有其他见解,评论区留言或者私信,一起讨论,纠正。

关注我,努力鸭~和我一起学习鸭~

另外,转载文章请记得附上原文链接哦

参与评论 您还未登录,请先 登录 后发表或查看评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:游动-白 设计师:我叫白小胖 返回首页

打赏作者

努力鸭~

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值