GVKun编程网logo

javax.el.PropertyNotFoundException:属性'foo'在类型java.lang.Boolean上不可读(javabean属性值无效)

9

本文将带您了解关于javax.el.PropertyNotFoundException:属性'foo'在类型java.lang.Boolean上不可读的新内容,同时我们还将为您解释javabean属性

本文将带您了解关于javax.el.PropertyNotFoundException:属性'foo'在类型java.lang.Boolean上不可读的新内容,同时我们还将为您解释javabean属性值无效的相关知识,另外,我们还将为您提供关于Android Studio,OpenCV jar,java.lang.ClassNotFoundException:org.opencv.R $styleable、android – java.lang.RuntimeException:无法实例化活动ComponentInfo / java.lang.ClassNotFoundException、android – java.lang.RuntimeException:无法实例化活动ComponentInfo … java.lang.ClassNotFoundException、Caused by: javax.el.PropertyNotFoundException: Property ''product'' not found on type java....的实用信息。

本文目录一览:

javax.el.PropertyNotFoundException:属性'foo'在类型java.lang.Boolean上不可读(javabean属性值无效)

javax.el.PropertyNotFoundException:属性'foo'在类型java.lang.Boolean上不可读(javabean属性值无效)

我有一堂课,看起来像这样:

public class ScoreDefinition {    protected Boolean primary;    public Boolean isPrimary() {        return primary;    }    public void setPrimary(Boolean value) {        this.primary = value;    }}

我试图primary像这样访问其在EL中的属性:

<c:forEach var="score" items="${scores}">    <input type="checkbox"           value="${score.primary}"           name="someName"/></c:forEach>

但我得到了例外:

javax.el.PropertyNotFoundException: Property ''primary'' not readable on type java.lang.Boolean    at javax.el.BeanELResolver$BeanProperty.read(BeanELResolver.java:280)    at javax.el.BeanELResolver$BeanProperty.access$000(BeanELResolver.java:230)    at javax.el.BeanELResolver.getValue(BeanELResolver.java:81)    at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:54)    at org.apache.el.parser.AstValue.getValue(AstValue.java:123)    at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)    at org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:938)    at org.apache.jsp.WEB_002dINF.views.administer.projectBlocks_jsp._jspx_meth_c_005fforEach_005f2(projectBlocks_jsp.java:806)    at org.apache.jsp.WEB_002dINF.views.administer.projectBlocks_jsp._jspx_meth_c_005fif_005f2(projectBlocks_jsp.java:709)    at org.apache.jsp.WEB_002dINF.views.administer.projectBlocks_jsp._jspx_meth_form_005fform_005f0(projectBlocks_jsp.java:245)    at org.apache.jsp.WEB_002dINF.views.administer.projectBlocks_jsp._jspService(projectBlocks_jsp.java:150)    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388)    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)    at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)    at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)    at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)    at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)    at org.springframework.web.servlet.view.InternalResourceView.renderMergedOutputModel(InternalResourceView.java:238)    at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:262)    at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1180)    at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:950)    at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852)    at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882)    at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:778)    at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)    at com.groupgti.webclient.filter.SecurityFilter.doFilter(SecurityFilter.java:51)    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)    at com.groupgti.webclient.filter.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:43)    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)    at java.lang.Thread.run(Thread.java:662)

我不能更改此类,因为它是从WSDL文件生成的。所以问题是,如何不使用任何自定义EL函数将in转换为Booleanin
String或不将其转换为mine 来解决此问题?是否可以不做任何其他修改就以某种方式读取EL中的此属性?

答案1

小编典典

is前缀是boolean唯一的,而不是为Boolean

您有2个选择:

  1. 使用boolean代替Boolean

  2. 或者,将方法重命名isPrimary()getPrimary()

对于自动生成错误方法的JAXB错误,您需要至少升级到JAXB
2.1.13或-B-enableIntrospection根据此JAXB文档添加到wsimport调用中。

Android Studio,OpenCV jar,java.lang.ClassNotFoundException:org.opencv.R $styleable

Android Studio,OpenCV jar,java.lang.ClassNotFoundException:org.opencv.R $styleable

网络上有关如何在Android Studio中使用OpenCV的大多数示例都涉及将OpenCV模块导入到您的项目中.但是,我试图将OpenCV用作jar,以便避免使用OpenCV的副本使源代码控制存储库混乱.

这些就是我为名为“ app”的应用所执行的步骤.

答:在/ Project / apps下创建一个libs目录.将OpenCV jar放在此处.还将opencv本机库放在子目录中.

B.在/Project/app/build.gradle中执行以下操作

将这些行放在顶部:

repositories { flatDir { dirs 'libs'    } }

将这些行放在android部分中:

sourceSets.main.jniLibs.srcDirs = ['libs']

将此行放在依赖项部分:

    compile filetree(dir: 'libs', include: ['*.jar'])

C.在应用程序标签之后,将这些行添加到AndroidManifest.xml中.

    <uses-sdk android:minSdkVersion="9"/>
    <uses-permission android:name="android.permission.CAMERA"/>
    <uses-feature android:name="android.hardware.camera" android:required="false"/>
    <uses-feature android:name="android.hardware.camera.autofocus" android:required="false"/>
    <uses-feature android:name="android.hardware.camera.front" android:required="false"/>
    <uses-feature android:name="android.hardware.camera.front.autofocus" android:required="false"/>

D.不确定是否需要这样做,我尝试了是否使用-似乎没有区别:我在AndroidManifest.xml的application标记内添加以下行:

        <uses-library android:name="org.opencv.android.JavaCameraview" />

E.最后是我的布局xml:

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:opencv="http://schemas.android.com/apk/lib/org.opencv.android.JavaCameraview"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <org.opencv.android.JavaCameraview
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:visibility="gone"
        android:id="@+id/main_activity_surface_view"
        opencv:show_fps="true"
        opencv:camera_id="any" />

    </LinearLayout>

这一切都很好.我可以在自己的活动中引用OpenCV,而不会出错.但是布局编辑器给出以下错误:无法实例化以下类:org.opencv.android.JavaCameraview. java.lang.classNotFoundException:org.opencv.R $styleable.

如果只是一个渲染问题,也许我可以忽略它,但是当我运行它时会发生类似的错误.

我想念什么?

(我知道SO中关于此错误的问题有点类似,但他的解决方案涉及导入整个模块,该模块确实有效,但正是我要避免的事情.)

解决方法:

错误消息:

The following classes Could not be instantiated: org.opencv.android.JavaCameraview. java.lang.classNotFoundException: org.opencv.R$styleable

表示在构建时找不到OpenCV资源.如果您将OpenCV包含在jar库中,那将是问题的根源-jar中没有资源.

解决方案是将OpenCV构建为AAR,因为AAR确实有资源.为此构造一个库模块,将其编译为AAR,然后在需要的任何地方重复使用该归档文件.

android – java.lang.RuntimeException:无法实例化活动ComponentInfo / java.lang.ClassNotFoundException

android – java.lang.RuntimeException:无法实例化活动ComponentInfo / java.lang.ClassNotFoundException

我在设备上运行时遇到此错误.我一直在浏览这个问题,我很确定我没有提到的问题.我的两个活动都在 AndroidManifest中声明,而intent过滤器就在那里.我没有任何库(除了v4支持库,但声明它不会改变问题).我尝试用.MainActivity替换我的Manifest carpedujourproductions.quickpronote.MainActivity,但仍然没有运气.我正在运行Android Studio 0.2.5,所以我找不到如何解决与Java Build Path / Order and Export相关的潜在问题

我忍不住注意到我的MainActivity图标在树的左上角有一个灰色的十字架.

logcat的:

E/AndroidRuntime: FATAL EXCEPTION: main
        java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{carpedujourproductions.quickpronote/carpedujourproductions.quickpronote.MainActivity}: java.lang.classNotFoundException: Didn't find class "carpedujourproductions.quickpronote.MainActivity" on path: DexPathList[[zip file "/data/app/carpedujourproductions.quickpronote-2.apk"],nativeLibraryDirectories=[/data/app-lib/carpedujourproductions.quickpronote-2,/vendor/lib,/system/lib]]
        at android.app.ActivityThread.performlaunchActivity(ActivityThread.java:2157)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2281)
        at android.app.ActivityThread.access$600(ActivityThread.java:148)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1263)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at android.os.Looper.loop(Looper.java:137)
        at android.app.ActivityThread.main(ActivityThread.java:5124)
        at java.lang.reflect.Method.invokeNative(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:525)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
        at de.robv.android.xposed.XposedBridge.main(XposedBridge.java:110)
        at dalvik.system.NativeStart.main(Native Method)
        Caused by: java.lang.classNotFoundException: Didn't find class "carpedujourproductions.quickpronote.MainActivity" on path: DexPathList[[zip file "/data/app/carpedujourproductions.quickpronote-2.apk"],/system/lib]]
        at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:53)
        at java.lang.classLoader.loadClass(ClassLoader.java:501)
        at java.lang.classLoader.loadClass(ClassLoader.java:461)
        at android.app.Instrumentation.newActivity(Instrumentation.java:1061)
        at android.app.ActivityThread.performlaunchActivity(ActivityThread.java:2148)
        ... 12 more

随意浏览AndroidManifest,MainActivity.java,FirstRun.java等代码here.

解决方法

您的MainActivity.java被排除在编译之外,因此该类不包含在.apk中.删除行:
<file url="file://$PROJECT_DIR$/src/carpedujourproductions/quickpronote/MainActivity.java" />

来自.idea / compiler.xml文件的excludeFromCompile部分(或者您可以从IDE设置执行此操作).

android – java.lang.RuntimeException:无法实例化活动ComponentInfo … java.lang.ClassNotFoundException

android – java.lang.RuntimeException:无法实例化活动ComponentInfo … java.lang.ClassNotFoundException

我有一个问题,我正在处理三天,我试图阅读不同的答案,但它没有帮助.
也有人可以帮助我!
我将Ancdroid应用程序作为客户端编写为一个安静的Web服务.我可以从数据库中获取数据而没有问题,但我的问题是我使用的2个活动来处理来自数据库的这个文件.

主要活动

public class MainActivity extends Activity  {



private static final String SERVICE_URL = "http://10.0.2.2:8080/.....";
private static final String TAG = "AndroidRESTClientActivity";   
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

    public void retrieveSampleData(View vw) {
        EditText idTxt = (EditText) findViewById(R.id.id_textfield);
        String id = idTxt.getText().toString();
        String sampleURL = SERVICE_URL +"daten/"+id ;

        Log.d("getrespond()", "service calling");
String url =sampleURL;

                       RestClient client = new RestClient(url);

                       try{
                           client.Execute(RestClient.RequestMethod.GET,this.getApplicationContext());
                       }
                       catch (Exception e) {

                           String error = String.valueOf(e);
                                Log.d("**********client.Execute(RequestMethod.GET);***********",error);    

                       }

                       try {

                           if(client.getResponseCode() == 200) {

                               Log.d("Response is 200", String.valueOf(client.getResponse().length()));
                               System.out.println(this.getFilesDir().getPath().toString());
                               File daten= client.getResponse();
                                  System.out.println(daten.getName());                       

                               Toast.makeText(this.getApplicationContext(), "Responce is "+String.valueOf(client.getResponseCode()), 2000).show();                            

                       }  else {
                               String error = String.valueOf(client.getResponse());
                               Log.d("Response*********** not 200 ************", String.valueOf(client.getResponse()));

                           }

                       }catch (Exception e) {
                           e.printstacktrace();
                            Log.d("EXCEPTIONI IS 3", e.toString());
                           // Todo: handle exception
                       }
                       startActivity(new Intent("android.intent.action.LINEGRAPH"));

我从主要开始的另一项活动:

public class lineGraph extends Activity{



       @Override
    public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);             
            setContentView(R.layout.activity_line_graph);
       }

       @Override
    protected void onResume() { 
           super.onResume(); 
           if (mChartView == null) { 
             LinearLayout layout = (LinearLayout) findViewById(R.id.chart); 
             try {
                mChartView = ChartFactory.getLineChartView(this, getDemoDataset(), 
                        getDemoRenderer());
            } catch (IOException e) {
                // Todo Auto-generated catch block
                e.printstacktrace();
            } 
             layout.addView(mChartView, new LayoutParams 
         (LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT)); 

           } else { 
             mChartView.repaint(); 
           } 
         }

的Manifest.xml

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.praktikum.androidcrestclient"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="15" />

    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" >
    </uses-permission>
    <uses-permission android:name="android.permission.INTERNET" >
    </uses-permission>
    <uses-permission android:name="android.permission.WRITE_INTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.READ_CONTACTS" />
    <application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name=".MainActivity"
            android:label="@string/title_activity_main" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name="com.praktikum.androidcrestclient.LineGraph"
            android:label="@string/title_activity_line_graph" >
            <intent-filter>
                <action android:name="android.intent.action.LINEGRAPH" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
        <activity android:name="org.achartengine.GraphicalActivity"/>
    </application>

</manifest>

在这里我的LogCat

10-08 09:23:10.140: D/AndroidRuntime(4706): Shutting down VM
10-08 09:23:10.140: W/dalvikvm(4706): threadid=1: thread exiting with uncaught exception (group=0x40015560)
10-08 09:23:10.161: E/AndroidRuntime(4706): FATAL EXCEPTION: main
10-08 09:23:10.161: E/AndroidRuntime(4706): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.praktikum.androidcrestclient/com.praktikum.androidcrestclient.LineGraph}: java.lang.classNotFoundException: com.praktikum.androidcrestclient.LineGraph in loader dalvik.system.PathClassLoader[/data/app/com.praktikum.androidcrestclient-1.apk]
10-08 09:23:10.161: E/AndroidRuntime(4706):     at android.app.ActivityThread.performlaunchActivity(ActivityThread.java:1569)
10-08 09:23:10.161: E/AndroidRuntime(4706):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663)
10-08 09:23:10.161: E/AndroidRuntime(4706):     at android.app.ActivityThread.access$1500(ActivityThread.java:117)
10-08 09:23:10.161: E/AndroidRuntime(4706):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)
10-08 09:23:10.161: E/AndroidRuntime(4706):     at android.os.Handler.dispatchMessage(Handler.java:99)
10-08 09:23:10.161: E/AndroidRuntime(4706):     at android.os.Looper.loop(Looper.java:123)
10-08 09:23:10.161: E/AndroidRuntime(4706):     at android.app.ActivityThread.main(ActivityThread.java:3683)
10-08 09:23:10.161: E/AndroidRuntime(4706):     at java.lang.reflect.Method.invokeNative(Native Method)
10-08 09:23:10.161: E/AndroidRuntime(4706):     at java.lang.reflect.Method.invoke(Method.java:507)
10-08 09:23:10.161: E/AndroidRuntime(4706):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
10-08 09:23:10.161: E/AndroidRuntime(4706):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
10-08 09:23:10.161: E/AndroidRuntime(4706):     at dalvik.system.NativeStart.main(Native Method)
10-08 09:23:10.161: E/AndroidRuntime(4706): Caused by: java.lang.classNotFoundException: com.praktikum.androidcrestclient.LineGraph in loader dalvik.system.PathClassLoader[/data/app/com.praktikum.androidcrestclient-1.apk]
10-08 09:23:10.161: E/AndroidRuntime(4706):     at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:240)
10-08 09:23:10.161: E/AndroidRuntime(4706):     at java.lang.classLoader.loadClass(ClassLoader.java:551)
10-08 09:23:10.161: E/AndroidRuntime(4706):     at java.lang.classLoader.loadClass(ClassLoader.java:511)
10-08 09:23:10.161: E/AndroidRuntime(4706):     at android.app.Instrumentation.newActivity(Instrumentation.java:1021)
10-08 09:23:10.161: E/AndroidRuntime(4706):     at android.app.ActivityThread.performlaunchActivity(ActivityThread.java:1561)
10-08 09:23:10.161: E/AndroidRuntime(4706):     ... 11 more
10-08 09:23:10.180: W/ActivityManager(89):   Force finishing activity com.praktikum.androidcrestclient/.LineGraph
10-08 09:23:10.180: W/ActivityManager(89):   Force finishing activity com.praktikum.androidcrestclient/.MainActivity
10-08 09:23:10.690: W/ActivityManager(89): Activity pause timeout for HistoryRecord{4094eea0 com.praktikum.androidcrestclient/.LineGraph}
10-08 09:23:12.330: I/Process(4706): Sending signal. PID: 4706 SIG: 9
10-08 09:23:12.350: I/ActivityManager(89): Process com.praktikum.androidcrestclient (pid 4706) has died.
10-08 09:23:12.360: E/Inputdispatcher(89): channel '4065ae98 com.praktikum.androidcrestclient/com.praktikum.androidcrestclient.MainActivity (server)' ~ Consumer closed input channel or an error occurred.  events=0x8
10-08 09:23:12.360: E/Inputdispatcher(89): channel '4065ae98 com.praktikum.androidcrestclient/com.praktikum.androidcrestclient.MainActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
10-08 09:23:12.490: I/WindowManager(89): WIN DEATH: Window{4065ae98 com.praktikum.androidcrestclient/com.praktikum.androidcrestclient.MainActivity paused=true}
10-08 09:23:12.500: I/WindowManager(89): WIN DEATH: Window{406c1140 Toast paused=false}
10-08 09:23:12.600: W/InputManagerService(89): Got remoteexception sending setActive(false) notification to pid 4706 uid 10034
10-08 09:23:12.660: E/Inputdispatcher(89): Received spurIoUs receive callback for unkNown input channel.  fd=168, events=0x8
10-08 09:23:16.820: D/dalvikvm(396): GC_EXPLICIT freed 7K, 54% free 2537K/5511K, external 1625K/2137K, paused 43ms
10-08 09:23:21.626: W/ActivityManager(89): Activity destroy timeout for HistoryRecord{4094e768 com.praktikum.androidcrestclient/.MainActivity}
10-08 09:23:21.626: W/ActivityManager(89): Activity destroy timeout for HistoryRecord{4094eea0 com.praktikum.androidcrestclient/.LineGraph}
10-08 09:23:21.900: D/dalvikvm(299): GC_EXPLICIT freed 12K, 55% free 2589K/5703K, external 1625K/2137K, paused 73ms
10-08 09:23:26.950: D/dalvikvm(407): GC_EXPLICIT freed 4K, 55% free 2532K/5511K, external 1625K/2137K, paused 57ms
10-08 09:24:54.097: D/SntpClient(89): request time Failed: java.net.socketException: Address family not supported by protocol
10-08 09:29:54.106: D/SntpClient(89): request time Failed: java.net.socketException: Address family not supported by protocol
10-08 09:34:54.130: D/SntpClient(89): request time Failed: java.net.socketException: Address family not supported by protocol

你能帮我找一下为什么它找不到这个其他的活动.

谢谢

解决方法:

在此声明中将类的名称更改为“LineGraph”而不是“lineGraph”:

public class LineGraph extends Activity{

Caused by: javax.el.PropertyNotFoundException: Property ''product'' not found on type java....

Caused by: javax.el.PropertyNotFoundException: Property ''product'' not found on type java....

今天在JSP利用EL表达式取值报了 "javax.el.PropertyNotFoundException”,经过debug和打印将问题定位到这段代码:

HTML应该是没啥问题,看提示在java.lang.string类型上找不到属性“product”,应该是EL表达式哪里写错了,然后将图中EL表达式重新写了一遍:

然后神奇的不报错了,搞得我一脸蒙蔽,我将每段代码都比对了一下,没发现哪里不对,干就干彻底,替换每段代码测试,结果第一段替换进去就OK了

仔细检查了两段代码:

//报错代码
<c:forEach items="${order.orderItems } "  var="orderItem">
//成功代码
<c:forEach items="${order.orderItems }"  var="orderItem">

睁开我的钛合狗眼看了N遍,终于发现明明一样的代码,长度却不同。

再检查,细心又帅气的我发现第一段代码在EL表达式的花括号“}”结尾双引号中间多了个空格

这里是不能有空格的

这玩意浪费我两小时的时间去排查,写代码的时候一定要细心细心再细心!

今天的关于javax.el.PropertyNotFoundException:属性'foo'在类型java.lang.Boolean上不可读javabean属性值无效的分享已经结束,谢谢您的关注,如果想了解更多关于Android Studio,OpenCV jar,java.lang.ClassNotFoundException:org.opencv.R $styleable、android – java.lang.RuntimeException:无法实例化活动ComponentInfo / java.lang.ClassNotFoundException、android – java.lang.RuntimeException:无法实例化活动ComponentInfo … java.lang.ClassNotFoundException、Caused by: javax.el.PropertyNotFoundException: Property ''product'' not found on type java....的相关知识,请在本站进行查询。

本文标签: