JEE一些常用错误收集

2024-05-26 01:48
文章标签 错误 常用 收集 jee

本文主要是介绍JEE一些常用错误收集,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

/*

  该博文长期更新  欢迎大家提问   如果新的值得收录的问题 我也将收录进去

  最新跟新时间 2015年6月12日12:12:45

*/

1首先是最常见的错误no result defined for action

直接字面翻译,对应名称的resut  没有定义,  出现这个错误 大致是struts  配置文件出错,补上响应的result即可


2另外一个是这个异常的特例  no result defined for action result input

input  这个result  name   我们一般不会主动去抛出,这个错误基本上是在struts 自动注入的时候产生的,我遇到了2种可能导致这个错误的情况

    传入类型不匹配 注入失败

    这个bug  可以通过跟踪 浏览器发出的request请求 检查出来,   检查传入值的类型 与 对应的变量名称


action bean  是单例对象,前一次的input 异常被单例保留 影响到下一次的方法调用

  这个bug 是在struts 与spring 整合的时候出现, struts  将classFactory 交给spring来处理。  spring 在初始化的时候会默认生成单例对象,在实际测试过程中struts2 与spring结合时,如果spring 生成的是单例   系统注入bean  出现了input 错误   这个错误会被保留在单例相关的变量中,下一次调用将会继续抛出异常,表现行为为一次输出出错,相关的所有行为都会报错。解决方案是将spring 中action bean 的属性集中加入  scope="prototype"      这个属性表明  将为每一个request  请求创建一个action 对象,  这样前着的错误将不会出现


3 org.hibernate.QueryException: unexpected char: '`'

 这个错误就比较低级了, 我们都知道  hibernate 是通过实体管理器查询对象  他自身的查询形成了一种被称为hql的查询语言,  我们通过 org.hibernate.Session.createQuery("")查询用的语句 就是使用hql  解析的   hql语句 与sql语句 有很大区别, sql中的 通配 *   与列名标注 · 都是不支持的,出现这种情况我们大多是想要使用sql语句查询  那么我们需要调用的时候  createSQLQuery('')


这个异常也设计到一些相关的东西  在sql中会存在一些保留字,我们表的列名称可能与保留字冲突,sql解析的时候 并不会智能的识别该位置为列名称而不是保留字,解决这个问题的途径有两种, 第一写完整的名称    表明/结果集名 .列名    这就相当于绝对路径,sql 解析的时候会自动补上数据库的名称,   第二个使用 列标注  ·  这个符号在键盘的横排数字键1的左边   用这个将列名框起来  数据库就知道这个为列名了,  这个是最不容易出错的行为


4 unexpected Exception caught setting 'XXXXX' on 'class com.opensymphony.xwork2.ActionSupport:

这个错误也是在struts 注入的时候出现的,  表明在对应类中找不到上传的指定属性,   出现这个错误 大概是请求出错了   class 后面的就是处理你请求的class的完整路径,对着检查就行了,如果报了上述错误,那么就说明请求出错,并且请求被系统默认分派给 根Action  ActionSupport类  解决方案 就是检查请求路径与对应class中的属性名




/*

  这下面记录一些其他  在做JEE项目时候遇到的问题

*/

Calendar对象 与 java.sql.Timestamp  对象 之间的比较问题,    两者不能用after比较  ,比较的值永远是false ,虽然编译通过

                                                                                                                解决方案是  将calendar对象 转换成Timestamp 再比较

                                                                                                                推测原因  after(when) 方法存在类型检测,封装部分异常,两种类型的对象不能比较  直接返回false

这篇关于JEE一些常用错误收集的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1003218

相关文章

Spring Boot中WebSocket常用使用方法详解

《SpringBoot中WebSocket常用使用方法详解》本文从WebSocket的基础概念出发,详细介绍了SpringBoot集成WebSocket的步骤,并重点讲解了常用的使用方法,包括简单消... 目录一、WebSocket基础概念1.1 什么是WebSocket1.2 WebSocket与HTTP

SpringBoot+Docker+Graylog 如何让错误自动报警

《SpringBoot+Docker+Graylog如何让错误自动报警》SpringBoot默认使用SLF4J与Logback,支持多日志级别和配置方式,可输出到控制台、文件及远程服务器,集成ELK... 目录01 Spring Boot 默认日志框架解析02 Spring Boot 日志级别详解03 Sp

golang中reflect包的常用方法

《golang中reflect包的常用方法》Go反射reflect包提供类型和值方法,用于获取类型信息、访问字段、调用方法等,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值... 目录reflect包方法总结类型 (Type) 方法值 (Value) 方法reflect包方法总结

C# 比较两个list 之间元素差异的常用方法

《C#比较两个list之间元素差异的常用方法》:本文主要介绍C#比较两个list之间元素差异,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1. 使用Except方法2. 使用Except的逆操作3. 使用LINQ的Join,GroupJoin

python常用的正则表达式及作用

《python常用的正则表达式及作用》正则表达式是处理字符串的强大工具,Python通过re模块提供正则表达式支持,本文给大家介绍python常用的正则表达式及作用详解,感兴趣的朋友跟随小编一起看看吧... 目录python常用正则表达式及作用基本匹配模式常用正则表达式示例常用量词边界匹配分组和捕获常用re

gitlab安装及邮箱配置和常用使用方式

《gitlab安装及邮箱配置和常用使用方式》:本文主要介绍gitlab安装及邮箱配置和常用使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装GitLab2.配置GitLab邮件服务3.GitLab的账号注册邮箱验证及其分组4.gitlab分支和标签的

Python常用命令提示符使用方法详解

《Python常用命令提示符使用方法详解》在学习python的过程中,我们需要用到命令提示符(CMD)进行环境的配置,:本文主要介绍Python常用命令提示符使用方法的相关资料,文中通过代码介绍的... 目录一、python环境基础命令【Windows】1、检查Python是否安装2、 查看Python的安

python判断文件是否存在常用的几种方式

《python判断文件是否存在常用的几种方式》在Python中我们在读写文件之前,首先要做的事情就是判断文件是否存在,否则很容易发生错误的情况,:本文主要介绍python判断文件是否存在常用的几种... 目录1. 使用 os.path.exists()2. 使用 os.path.isfile()3. 使用

SpringBoot排查和解决JSON解析错误(400 Bad Request)的方法

《SpringBoot排查和解决JSON解析错误(400BadRequest)的方法》在开发SpringBootRESTfulAPI时,客户端与服务端的数据交互通常使用JSON格式,然而,JSON... 目录问题背景1. 问题描述2. 错误分析解决方案1. 手动重新输入jsON2. 使用工具清理JSON3.

如何解决Druid线程池Cause:java.sql.SQLRecoverableException:IO错误:Socket read timed out的问题

《如何解决Druid线程池Cause:java.sql.SQLRecoverableException:IO错误:Socketreadtimedout的问题》:本文主要介绍解决Druid线程... 目录异常信息触发场景找到版本发布更新的说明从版本更新信息可以看到该默认逻辑已经去除总结异常信息触发场景复