struts2--java.lang.IllegalAccessException: Class ognl.OgnlRuntime can not access a member of

这个问题是我碰到的一个比较纠结的问题,如果第一次碰到肯定能让你也很纠结,哈哈

[c-sharp] view plaincopyprint?
01.2010-10-19 18:27:22 com.opensymphony.xwork2.util.logging.jdk.JdkLogger warn  
02.警告: Error setting expression 'nnew.nTitle' with value '[Ljava.lang.String;@df804e'  
03.ognl.NoSuchPropertyException: com.center.vo.News_Table.nTitle [java.lang.IllegalAccessException: Class ognl.OgnlRuntime can not access a member of class com.center.vo.News_Table with modifiers "private"]  
04.    at ognl.OgnlRuntime.setFieldValue(OgnlRuntime.java:1663)  
05.    at ognl.ObjectPropertyAccessor.setPossibleProperty(ObjectPropertyAccessor.java:87)  
06.    at ognl.ObjectPropertyAccessor.setProperty(ObjectPropertyAccessor.java:162)  
07.    at com.opensymphony.xwork2.ognl.accessor.ObjectAccessor.setProperty(ObjectAccessor.java:27)  
08.    at ognl.OgnlRuntime.setProperty(OgnlRuntime.java:2245)  
09.    at ognl.ASTProperty.setValueBody(ASTProperty.java:127)  
10.    at ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:220)  
11.    at ognl.SimpleNode.setValue(SimpleNode.java:301)  
12.    at ognl.ASTChain.setValueBody(ASTChain.java:227)  
13.    at ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:220)  
14.    at ognl.SimpleNode.setValue(SimpleNode.java:301)  
15.    at ognl.Ognl.setValue(Ognl.java:737)  
16.    at com.opensymphony.xwork2.ognl.OgnlUtil.setValue(OgnlUtil.java:209)  
17.    at com.opensymphony.xwork2.ognl.OgnlValueStack.trySetValue(OgnlValueStack.java:173)  
18.    at com.opensymphony.xwork2.ognl.OgnlValueStack.setValue(OgnlValueStack.java:160)  
19.    at com.opensymphony.xwork2.ognl.OgnlValueStack.setValue(OgnlValueStack.java:151)  
20.    at com.opensymphony.xwork2.interceptor.ParametersInterceptor.setParameters(ParametersInterceptor.java:288)  
21.    at com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:199)  
22.    at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)  
23.    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)  
24.    at com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:207)  
25.    at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)  
26.    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)  
27.    at com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:190)  
28.    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)  
29.    at org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:75)  
30.    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)  
31.    at org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:94)  
32.    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)  
33.    at org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:243)  
34.    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)  
35.    at com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:100)  
36.    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)  
37.    at com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:141)  
38.    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)  
39.    at org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:267)  
40.    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)  
41.    at com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:142)  
42.    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)  
43.    at com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:166)  
44.    at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)  
45.    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)  
46.    at com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:176)  
47.    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)  
48.    at org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)  
49.    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)  
50.    at com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:190)  
51.    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)  
52.    at com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:187)  
53.    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)  
54.    at org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52)  
55.    at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:485)  
56.    at org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:395)  
57.    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)  
58.    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)  
59.    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)  
60.    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)  
61.    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)  
62.    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)  
63.    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)  
64.    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)  
65.    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849)  
66.    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)  
67.    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454)  
68.    at java.lang.Thread.run(Unknown Source)  
69.Caused by: java.lang.IllegalAccessException: Class ognl.OgnlRuntime can not access a member of class com.center.vo.News_Table with modifiers "private"  
70.    at sun.reflect.Reflection.ensureMemberAccess(Unknown Source)  
71.    at java.lang.reflect.Field.doSecurityCheck(Unknown Source)  
72.    at java.lang.reflect.Field.getFieldAccessor(Unknown Source)  
73.    at java.lang.reflect.Field.set(Unknown Source)  
74.    at ognl.OgnlRuntime.setFieldValue(OgnlRuntime.java:1655)  

引起这种原因就是属性名称的不规范!!就像上面的错误信息中写出的,"nTitle"这样的属性名生成set和get方法是不规范的!所以struts2用DomainModel传递参数,会引起struts2的"误会"!!是不是很纠结啊

转载于:https://www.cnblogs.com/shenliang123/archive/2013/05/16/3082256.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/461066.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

情怀真的可以吃~致文青

说实在的,这首歌名如其实的平凡。最标准的Trip-Hop节奏,最普通的四个和弦,最没有惊喜的合成器音色,歌词也是那山那山的波澜不惊。就是这么一首平平无奇的歌,却在首发的7个小时内,狂刷一百万次试听点击。 …

决策树php,决策树模型组合之随机森林与GBDT

前言:决策树这种算法有着很多良好的特性,比如说训练时间复杂度较低,预测的过程比较快速,模型容易展示(容易将得到的决策树做成图片展示出来)等。但是同时,单决策树又有一些不好的地方,比如说容易over-fitti…

关于uboot的简介——uboot的目录结构

以下内容源于朱有鹏嵌入式课程的学习与整理,如有侵权请告知删除。 不同版本的uboot,或者同一版本不同人员移植的uboot,目录结构和文件内容都会有所不同,也就是说,可以根据需要去添加、删除或者更改目录结构。在以三星的…

为何不精通C? 03 深入剖析声明

对于复杂的C函数声明,或者被typedef别名后的声明,很多人往往一头雾水。本文主要解析下C语言中声明过程所遵循的原则。 声明 引用《C专家编程》的第三章内容,说明下声明的优先级规则: 声明从它的名字开始读,然后按照优先…

Photoshop绘制植物大战僵尸中的食人花

本人意见:我打算使用本文中的食人花形象作为我的一次讲课中的主要参考。我想说明的是,通过FLASH和PS都能够轻松地绘制出如本文所描述的食人花卡通效果。独立游戏开发者如果安排好时间,完全可以通过1-2个月掌握FLASH和PS绘制(想精通…

ios手机 php无法上传文件,【已解决】uni.uploadFile 苹果ios图片上传不成功

安卓正常上传,苹果里我到相册里选了一张20k的图片,服务器都得不到数据,服务器端是PHP,$_FILES居然是空的,下面是简单的代码openPic(){var that this;uni.chooseImage({count: 1,sourceType: [album, camera],sizeType…

uboot源码——uboot启动内核过程总结

总结的思维导图,其下载地址:Uboot启动.mmap_免费高速下载|百度网盘-分享无限制 第一阶段:汇编阶段,即start.S文件的工作。 第二阶段:C代码阶段,即start_armboot函数的工作。 值得一提的是,star…

虚拟化运行[OpenStack] VMWare产品介绍

最近使用开发的过程中出现了一个小问题,顺便记录一下原因和方法--虚拟化运行 世界上最早研制虚拟化软件的厂商之一。目前是是寰球桌面到数据中心虚拟化解决方案的引导厂商。中文名“威睿”,纽约证券交易所代码:VMW。总部设在加利福尼亚州的帕…

oracle模拟重叠事务,ORACLE的事务读一致性与语句读一致性

SET TRANSACTION READ ONLY来实现事物级别的一致性。一个事物所有语句读到的数据都是一致的。我们开始试验一,模拟语句级别读一致性。第一个session使用显示打开一个游标模拟数据读,同时在游标读数据的过程中,启动另外一个session更改数据&am…

内核源码——kernel启动过程的思维导图

参考博客 内核源码——汇编阶段的head.S文件_天糊土的博客-CSDN博客___head汇编 内核源码——C语言阶段的start_kernel函数_天糊土的博客-CSDN博客_start_kernel 思维导图 kernel启动过程的思维导图下载地址:内核启动过程.mmap

能力=知识+技能+经验

知识少则眼光不够深远;技能不精则难以服众经验太少则容易应变不灵。那么如果想让老板提升你,最“靠谱”的方法就是用这几方面检验自己,寻找机会进行自我提升,全面而优质的能力自然会让HR对你另眼相看。 然而这种理想的状态并非短期…

oracle 01013 02063,Oracle11g dblink用户密码大写限制-ORA-02063: preceding line from FOR244_DBLINK...

[oracleKY22 ~]$ sqlplus admin/admin4567SQL*Plus: Release 10.2.0.1.0 - Production on D???t 6?? 12 13:52:50 2012Copyright (c) 1982, 2005, Oracle. All rights reserved.Connected to:Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Product…

oracle的等保,3.Oracle 检查(部分)

这是3级等保中oracle的检查方法,剩下的检查项可通过询问的方式进行检查。1.身份鉴别a.1 查看数据库用户select username,account_status from dba_users;b.1 检查用户的profileselect username,account_status,profile from dba_users;b.2 检查密码策略select profi…

Activiti配置实例以及Spring集成配置

public class TestDB {public static void main(String[] args) {//1。 创建Activiti配置对象的实例ProcessEngineConfiguration configuration ProcessEngineConfiguration.createStandaloneProcessEngineConfiguration();//2. 设置数据库连接信息// 设置数据库地址configura…

Linux字符设备驱动剖析

以下内容整理于Linux字符设备驱动剖析,如有侵权请告知删除 。 一、应用层的程序 应用程序一般都是open打开设备文件,read、write、ioctl设备文件,最后close设备文件退出。 int main(int argc ,char *argv[]) { unsigned char val[1] 1; …

php处理form多文件上传,ajax利用FormData、FileReader实现多文件上传php获取

前台代码(注意,不需要用到form标签):a. html部分:b. js部分:c. 完整代码:function loadDoc(file,data,asynctrue){if(window.XMLHttpRequest){ // code for IE7, Firefox, Chrome, Opera, Safarixmlhttpnew XMLHttpReq…

getattr

getattr(object, name[, default]) -> value Get a named attribute from an object; getattr(x, y) is equivalent to x.y. When a default argument is given, it is returned when the attribute doesnt exist; without it, an exception is raised in that case转载于:h…

rpmbuild FILE

2、一些rpm相关信息rpm软件包系统的标准分组:/usr/share/doc/rpm-4.3.3/GROUPS各种宏定义: /usr/lib/rpm/macros已经安装的rpm包数据库: /var/lib/rpm如果要避免生成debuginfo包:这个是默认会生成的rpm包。则可以使用下面的命令&a…

Linux设备文件的创建和mdev

以下内容源于微信公众号嵌入式企鹅圈,有格式内容上的修改,如有侵权请告知删除。 本文将从代码级去理解Linux设备类和设备文件的创建过程。 一、设备类相关知识 设备类是虚拟的,并没有直接对应的物理实物,只是为了更好地管理同一类…

linux查看执行过的命令行,在Linux命令终端中查看和编辑曾执行过的命令 – LINUX笔记 – CFEI.NET...

今天我们来讲讲linux的知识,积累的这些知识就是我们以后的财富,各位加油.因为水平有限,难免有疏忽或者不准确的地方,希望大家能够直接指出来,我会及时改正。一切为了知识的分享。history 命令可以用来显示曾执行过的命令,也可以根…