STRUTS2开发中遇到的错误及解决方案.doc

上传人:仙人指路1688 文档编号:2386270 上传时间:2023-02-17 格式:DOC 页数:4 大小:36.50KB
返回 下载 相关 举报
STRUTS2开发中遇到的错误及解决方案.doc_第1页
第1页 / 共4页
STRUTS2开发中遇到的错误及解决方案.doc_第2页
第2页 / 共4页
STRUTS2开发中遇到的错误及解决方案.doc_第3页
第3页 / 共4页
STRUTS2开发中遇到的错误及解决方案.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《STRUTS2开发中遇到的错误及解决方案.doc》由会员分享,可在线阅读,更多相关《STRUTS2开发中遇到的错误及解决方案.doc(4页珍藏版)》请在三一办公上搜索。

1、笔者记录下自己在开发过程中所遇到的一些常见的错误和警告,以供参考:1、 警告:Settings: Could not parse struts.locale setting, substituting default VM locale分析及解决方法:这是默认环境没有设置好,有两种方法可以解决。在WEB-INF/classes/struts.properties或者src/struts.properties文件中如下配置:struts.locale=en_GB;或者在struts.xml中如下配置:2、 警告:No configuration found for the specified a

2、ction: sum.action in namespace: . Form action defaulting to action attributes literal value.分析及解决方法:由于jsp文件中标签它对应的源文件是,sturts把action属性值当成了一个action name了,但这也不影响使用;但是对于使用了动态方法调用(struts.enable.DynamicMethodInvocation = true)就没有那么幸运了,提交时就会得到HTTP Status 404 - /context/sum错误。对于以上情况,可以把标签写成及3、 ERROR:Cannot

3、 create JDBC driver of class for connect URL null分析及解决方法:这是由于tomcat下的server.xml里的没有配置好或没有相应的配置,可按如下配置:4、 ERROR:Cannot load JDBC driver class com.microsoft.jdbc.sqlserver.SQLServerDriver分析及解决方法:这是由于JDBC的驱动没有装,可将sqlserver需要的三个驱动包msbase.jar,mssqlserver.jar,msutil.jar拷贝到tomcat的安装目录下的 commonlib文件夹下面即可。5、

4、 ERROR: Cannot create resource instance分析及解决方法:这是由于里type属性设置不正确,按不同的数据库相应的做出调整就好了。6、 ERROR:javax.naming.NameNotFoundException: Name jdbc is not bound in this Context分析及解决方法:这个很明显,上下文中找不到所给的jdbc名称,仔细查看纠正一下就好了7、 严重: Exception starting filter struts2、Error filterStart、Context /struts2 startup failed du

5、e to previous errors分析及解决方法:(1)在struts.xml中action中的包路径出错(2)在工程中导入一个commons-fileupload的包8、 java.sql.SQLException: MicrosoftSQLServer 2000 Driver for JDBCSQLServer对象名 info 无效分析及解决方法:出现这情况由两种可能性:(1)配置的数据库中没有info表或者是表名写错了,这是就要将其更改为info表所在的数据库名或表名; (2)程序当前打开的数据库并非是我们所配置的数据库,虽然机率很小,但是在以不同用户身份登录时就可能出现这种情况,

6、因为server默认打开的是master数据库。这时可以将你要使用的数据库设置为默认或者是在sql语句中打开数据库(如:”use st select * from info”)9、 struts2中使用datetimePicker组件时的乱码显示分析及解决方法:参考 datetimePicker的使用.docx10、 log4j:WARN No appenders could be found for logger(mons.digester.Digester.sax)log4j:WARN Please initialize the log4j system properly分析及解决方法:由

7、于缺少log4j.properties文件引起的,或是该文件位置放置不正确。可以按要求格式创建一个log4j.properties文件,放到src目录下(会自动拷贝到WEB-INFclasses目录下)或直接放到WEB-INFclasses11、 在struts2表单验证过程中,当遇到验证错误或者类型转换错误时, struts2框架自动生成一条错误信息,并且将该错误信息放到addFieldError里面, 最后这个信息会显示在相应的错误页中.有时我们不希望这些错误出现在页面中,而是用自己的方式来表达,可以通过以下操作实现:1)表单标签有一个theme(主题)属性, 默认主题是使用表格; 还有A

8、jax等主题, 这里换为simple主题, 表示不再用表格封装这个标签;这样就可以消除自动错误提示了2)可以使用来显示错误,如果错误时ActionError,就需要标签来显示3)在表单提交失败时,希望原来填过的值可以保留,struts2的s标签自动有保留功能,html标签需要通过request的el表达式实现保留12、 Struts2环境下,使用自己定义的拦截器时,报HTTP-500错误分析及解决方法:HTTP-500是指内部服务器错误,所以错误处在运行的环境配置中;如果这时报NullPointerException,那错误很可能就是因为action.xml中忘记配置,这样就会导致struts

9、2默认拦截器不能使用,给程序运行造成严重影响13、 INFO:The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path分析及解决方法:这时由于tomcat没能成功加载APR,可以到http:/tomcat.heanet.ie/native/下载tcnative-1.dll文件,这里需要注意的是tcnative-1.dll有32位和64位两种,根据自己的JDK选择合适的tcnative-1.d

10、ll,放到%JDK-home%bin目录下,再重启tomcat就能加载APR了14、 SQLServer当 IDENTITY_INSERT 设置为 OFF 时,不能向表 person 中的标识列插入显式值分析及解决方法:由于标识列是自动增长类型,在默认情况下是不能插入显式值,也就是IDENTITY_INSERT默认为OFF;15、 使用Hibernate时,表中字段(例如:zd)的默认值失效分析及解决方法:由于hibernate通过session.save()来进行数据添加动作,如果程序中zd没有赋值,那么程序将会使用它的数据类型的默认值来进行添加,从而取代了数据库中配置好的默认值。可以通过以

11、下操作来实现表中默认值生效:1) 在相关表的映射XML文件的class项增加:dynamic-insert=true;2)同时需要在相关字段设置:not-null=”false”16、 ids for this class must be manually assigned before calling save(): hibernate.Person分析及解决方法:hibernate出现这个错误的原因有可能因为,你的表中有个主键。但是你插入的(调用save)时那个值是null.如果主键是int、short或long类型,可以设置generator class为native;如果是char类型

12、,可以在其对应的Person.hbm.xml里的id标签里添加unsaved-value=null;或者在数据表里给主键添加默认值,然后在对应的id标签里添加dynamic-insert=true17、 JSP中out.print(Response.Redirect(login.jsp);语句跳转不成功:分析及解决方法:貌似没有问题,其实Response.Redirect()是asp中的跳转方法,可以使用JavaScript中的location.href=login.jsp来替换,或者直接用java中的response.sendRedirect(url)18、 Exception: Under

13、lying input stream returned zero bytes分析及解决方法:由于数据表中有个字段为text类型的,不能将一个NULL值和一个(empty)存储在text类型的字段中。否则查询时就会出现MicrosoftSQLServer 2000 Driver for JDBCUnderlying input stream returned zero bytes 的异常了。可以将这个字段设个默认值,如” ”,就能解决这个bug了19、 运用JS通过idName.submit()或getElementById(idName).submit()控制弹出层tdiv里表单提交不成功,弹

14、出层里的内容由隐藏层ydiv提供(即tdiv.innerHTML=ydiv.innerHTML),提示对象不可用或提交后取得表单元素属性值为空分析及解决方法:ydiv的display属性为none,虽然IE不会进行预读取,但其他浏览器却会这么做,这样就id为idName的表单就有两个了,通过getElementById(idName).submit()提交的是隐藏层中的表单;通过idName.submit()提交就会提示说对象不可用,这里idName是个对象数组了。解决方法有两种:一是用form自己的提交按钮;而是用document.idName1.submit()来提交就好了20、 Acce

15、ss restriction: The type JPEGImageEncoder is not accessible due to restriction on required library:%java_home%jrelibrt.jar分析及解决方法:Such errors indicate use of non-API classes and those access rules are defined by Eclipse JDT(Joint Design Team)You can change compiler settings to not fail on those rest

16、rictions in workspace settings in Window / Preferences / Java / Compiler / Errors/Warnings / Deprecated and restricted API / Forbidden reference (access rules) / Warnings; or per-project from Project / Properties / Java Compiler / Errors/Warnings / Deprecated and restricted API / Forbidden reference

17、 (access rules) / Warnings21、 Tomcat5.0环境下运行struts2,出现下述异常,Exception starting filter struts2:javax.xml.transform.TransformerFactoryConfigurationError: Provider org.apache.xalan.processor.TransformerFactoryImpl not found, at javax.xml.transform.TransformerFactory.newInstance(Unknown Source)分析及解决方法:$t

18、omcat.homecommonendorsed目录下缺省serializer.jar、xalan.jar、xercesImpl.jar、xml-apis.jar包或版本不合适,22、 Tomcat5.0环境下运行Struts2,出现Unable to load configuration. - bean - jar:file:/$work.dir/WEB-INF/lib/struts2-core-2.1.8.1.jar!/struts-default.xml:47:178分析及解决方法:struts2除了它的5个核心jar包外,common-io-x.x.x.jar和common-fileupload-x.x.x.jar这两个jar包也必须放到lib目录下23、 Tomcat5.5环境下,出现WARNING: Security role name private used in an without being defined in a 分析及解决方法:由于在项目web.xml里配置了auth-constraint,但是没有在%tomcat_dir%confweb.xml中定义标签。例如项目web.xml里这样引用yourname,那么在tomcat下的web.xml就要增加如下标签:yourname

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号