日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

struts2 依赖注入boolean类型的属性时报错

發布時間:2024/4/13 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 struts2 依赖注入boolean类型的属性时报错 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

使用IDE:eclipse;

struts2的版本:2.3.4.1

登錄界面代碼如下:

?

Html代碼??
  • <?xml?version="1.0"?encoding="UTF-8"??>??
  • <%@?page?language="java"?contentType="text/html;?charset=UTF-8"??
  • ????pageEncoding="UTF-8"%>??
  • <%??
  • String?path?=?request.getContextPath();??
  • String?basePath?=?request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";??
  • %>??
  • <%@?taglib?prefix="s"?uri="/struts-tags"%>??
  • <!DOCTYPE?html?PUBLIC?"-//W3C//DTD?XHTML?1.0?Transitional//EN"?"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">??
  • <html?xmlns="http://www.w3.org/1999/xhtml">??
  • <head>??
  • <meta?http-equiv="Content-Type"?content="text/html;?charset=UTF-8"?/>??
  • <title>login</title>??
  • </head>??
  • <body>??
  • <center>??
  • <h1>login?platform</h1>??
  • <s:form?action="/login"?method="post"?>??
  • ????<table>??
  • ????<tr><td>username:</td>?<td><s:textfield?name="user.username"??></s:textfield>?</td></tr>??
  • ????<tr><td>password:</td>?<td><s:textfield?name="user.password"??></s:textfield>?</td></tr>??
  • ????<tr><td>age:</td>?<td><s:textfield?name="user.age"??></s:textfield>?</td></tr>??
  • ????<tr><td>isBoy:</td>?<td><s:textfield?name="user.isBoy"??></s:textfield>?</td></tr>??
  • ????<tr>?<td?colspan="2"><s:submit?value="login"?></s:submit>?</td></tr>??
  • ??????
  • ????</table>??
  • ????</s:form>??
  • ??
  • </center>??
  • </body>??
  • </html>??
  • ?

    對應的bean中有一個成員變量是:private boolean?isBoy;(是boolean 類型的)

    ?

    ?

    Java代碼??
  • package?com.jn.bean;??
  • ??
  • public?class?LoginUser?{??
  • ????private?int?age;??
  • ????private?String?username;??
  • ????private?String?password;??
  • ????/***?
  • ?????*?是否是男性?
  • ?????*/??
  • ????private?boolean?isBoy;??
  • ??
  • ????public?LoginUser()?{??
  • ????????super();??
  • ????}??
  • ??
  • ????public?int?getAge()?{??
  • ????????return?age;??
  • ????}??
  • ??
  • ????public?void?setAge(int?age)?{??
  • ????????this.age?=?age;??
  • ????}??
  • ??
  • ????public?String?getUsername()?{??
  • ????????return?username;??
  • ????}??
  • ??
  • ????public?void?setUsername(String?username)?{??
  • ????????this.username?=?username;??
  • ????}??
  • ??
  • ????public?String?getPassword()?{??
  • ????????return?password;??
  • ????}??
  • ??
  • ????public?void?setPassword(String?password)?{??
  • ????????this.password?=?password;??
  • ????}??
  • ??
  • ????public?boolean?isBoy()?{??
  • ????????return?isBoy;??
  • ????}??
  • ??
  • ????public?void?setBoy(boolean?isBoy)?{??
  • ????????this.isBoy?=?isBoy;??
  • ????}??
  • ??
  • }??
  • ?其中的getter,setter方法都是使用eclipse自動生成的。

    ?

    ?

    對應的action為:

    Java代碼??
  • package?com.jn.action;??
  • ??
  • import?com.jn.bean.LoginUser;??
  • import?com.opensymphony.xwork2.ActionSupport;??
  • ??
  • public?class?LoginVerifyAction?extends?ActionSupport?{??
  • ????private?static?final?long?serialVersionUID?=?-5532496750392156543L;??
  • ????private?LoginUser?user;??
  • ??
  • ????@Override??
  • ????public?String?execute()?throws?Exception?{??
  • ????????System.out.println("user?information:");??
  • ????????System.out.println("username:"+user.getUsername());??
  • ????????System.out.println("password:"+user.getPassword());??
  • ????????System.out.println("age:"+user.getAge());??
  • ????????System.out.println("isBoy:"+user.isBoy());??
  • ????????return?super.execute();??
  • ????}??
  • ??????
  • ????public?LoginUser?getUser()?{??
  • ????????return?user;??
  • ????}??
  • ??
  • ????public?void?setUser(LoginUser?user)?{??
  • ????????this.user?=?user;??
  • ????}??
  • ??????
  • }??
  • ?

    ?

    但是登錄時報錯:

    ?

    Xml代碼??
  • 警告:?Error?setting?expression?'user.isBoy'?with?value?'[Ljava.lang.String;@863941'??
  • ognl.NoSuchPropertyException:?com.jn.bean.LoginUser.isBoy?[java.lang.IllegalAccessException:?Class?ognl.OgnlRuntime?can?not?access?a?member?of?class?com.jn.bean.LoginUser?with?modifiers?"private"]??
  • ????at?ognl.OgnlRuntime.setFieldValue(OgnlRuntime.java:1682)??
  • ????at?ognl.ObjectPropertyAccessor.setPossibleProperty(ObjectPropertyAccessor.java:87)??
  • ????at?ognl.ObjectPropertyAccessor.setProperty(ObjectPropertyAccessor.java:162)??
  • ????at?com.opensymphony.xwork2.ognl.accessor.ObjectAccessor.setProperty(ObjectAccessor.java:27)??
  • ????at?ognl.OgnlRuntime.setProperty(OgnlRuntime.java:2315)??
  • ????at?ognl.ASTProperty.setValueBody(ASTProperty.java:127)??
  • ????at?ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:220)??
  • ????at?ognl.SimpleNode.setValue(SimpleNode.java:301)??
  • ????at?ognl.ASTChain.setValueBody(ASTChain.java:227)??
  • ????at?ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:220)??
  • ????at?ognl.SimpleNode.setValue(SimpleNode.java:301)??
  • ????at?ognl.Ognl.setValue(Ognl.java:737)??
  • ????at?com.opensymphony.xwork2.ognl.OgnlUtil.setValue(OgnlUtil.java:217)??
  • ????at?com.opensymphony.xwork2.ognl.OgnlValueStack.trySetValue(OgnlValueStack.java:186)??
  • ????at?com.opensymphony.xwork2.ognl.OgnlValueStack.setValue(OgnlValueStack.java:173)??
  • ????at?com.opensymphony.xwork2.ognl.OgnlValueStack.setParameter(OgnlValueStack.java:151)??
  • ????at?com.opensymphony.xwork2.interceptor.ParametersInterceptor.setParameters(ParametersInterceptor.java:317)??
  • ????at?com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:228)??
  • ????at?com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)??
  • ????at?com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)??
  • ????at?com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:236)??
  • ????at?com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)??
  • ????at?com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)??
  • ????at?com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:190)??
  • ????at?com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)??
  • ????at?org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:75)??
  • ????at?com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)??
  • ????at?org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:90)??
  • ????at?com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)??
  • ????at?org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:243)??
  • ????at?com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)??
  • ????at?com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:100)??
  • ????at?com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)??
  • ????at?com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:141)??
  • ????at?com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)??
  • ????at?com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:145)??
  • ????at?com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)??
  • ????at?com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:171)??
  • ????at?com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)??
  • ????at?com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)??
  • ????at?com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:176)??
  • ????at?com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)??
  • ????at?org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)??
  • ????at?com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)??
  • ????at?com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:192)??
  • ????at?com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)??
  • ????at?com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:187)??
  • ????at?com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)??
  • ????at?org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:54)??
  • ????at?org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:511)??
  • ????at?org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)??
  • ????at?org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:91)??
  • ????at?org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)??
  • ????at?org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)??
  • ????at?org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)??
  • ????at?org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)??
  • ????at?org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)??
  • ????at?org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)??
  • ????at?org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)??
  • ????at?org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)??
  • ????at?org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)??
  • ????at?org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)??
  • ????at?org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1023)??
  • ????at?org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)??
  • ????at?org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)??
  • ????at?java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)??
  • ????at?java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)??
  • ????at?java.lang.Thread.run(Thread.java:662)??
  • Caused?by:?java.lang.IllegalAccessException:?Class?ognl.OgnlRuntime?can?not?access?a?member?of?class?com.jn.bean.LoginUser?with?modifiers?"private"??
  • ????at?sun.reflect.Reflection.ensureMemberAccess(Reflection.java:65)??
  • ????at?java.lang.reflect.Field.doSecurityCheck(Field.java:960)??
  • ????at?java.lang.reflect.Field.getFieldAccessor(Field.java:896)??
  • ????at?java.lang.reflect.Field.set(Field.java:657)??
  • ????at?ognl.OgnlRuntime.setFieldValue(OgnlRuntime.java:1674)??
  • ????...?67?more??
  • /--?Encapsulated?exception?------------\??
  • java.lang.IllegalAccessException:?Class?ognl.OgnlRuntime?can?not?access?a?member?of?class?com.jn.bean.LoginUser?with?modifiers?"private"??
  • ????at?sun.reflect.Reflection.ensureMemberAccess(Reflection.java:65)??
  • ????at?java.lang.reflect.Field.doSecurityCheck(Field.java:960)??
  • ????at?java.lang.reflect.Field.getFieldAccessor(Field.java:896)??
  • ????at?java.lang.reflect.Field.set(Field.java:657)??
  • ????at?ognl.OgnlRuntime.setFieldValue(OgnlRuntime.java:1674)??
  • ????at?ognl.ObjectPropertyAccessor.setPossibleProperty(ObjectPropertyAccessor.java:87)??
  • ????at?ognl.ObjectPropertyAccessor.setProperty(ObjectPropertyAccessor.java:162)??
  • ????at?com.opensymphony.xwork2.ognl.accessor.ObjectAccessor.setProperty(ObjectAccessor.java:27)??
  • ????at?ognl.OgnlRuntime.setProperty(OgnlRuntime.java:2315)??
  • ????at?ognl.ASTProperty.setValueBody(ASTProperty.java:127)??
  • ????at?ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:220)??
  • ????at?ognl.SimpleNode.setValue(SimpleNode.java:301)??
  • ????at?ognl.ASTChain.setValueBody(ASTChain.java:227)??
  • ????at?ognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:220)??
  • ????at?ognl.SimpleNode.setValue(SimpleNode.java:301)??
  • ????at?ognl.Ognl.setValue(Ognl.java:737)??
  • ????at?com.opensymphony.xwork2.ognl.OgnlUtil.setValue(OgnlUtil.java:217)??
  • ????at?com.opensymphony.xwork2.ognl.OgnlValueStack.trySetValue(OgnlValueStack.java:186)??
  • ????at?com.opensymphony.xwork2.ognl.OgnlValueStack.setValue(OgnlValueStack.java:173)??
  • ????at?com.opensymphony.xwork2.ognl.OgnlValueStack.setParameter(OgnlValueStack.java:151)??
  • ????at?com.opensymphony.xwork2.interceptor.ParametersInterceptor.setParameters(ParametersInterceptor.java:317)??
  • ????at?com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:228)??
  • ????at?com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)??
  • ????at?com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)??
  • ????at?com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:236)??
  • ????at?com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)??
  • ????at?com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)??
  • ????at?com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:190)??
  • ????at?com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)??
  • ????at?org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:75)??
  • ????at?com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)??
  • ????at?org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:90)??
  • ????at?com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)??
  • ????at?org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:243)??
  • ????at?com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)??
  • ????at?com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:100)??
  • ????at?com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)??
  • ????at?com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:141)??
  • ????at?com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)??
  • ????at?com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:145)??
  • ????at?com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)??
  • ????at?com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:171)??
  • ????at?com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)??
  • ????at?com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)??
  • ????at?com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:176)??
  • ????at?com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)??
  • ????at?org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)??
  • ????at?com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)??
  • ????at?com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:192)??
  • ????at?com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)??
  • ????at?com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:187)??
  • ????at?com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)??
  • ????at?org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:54)??
  • ????at?org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:511)??
  • ????at?org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)??
  • ????at?org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:91)??
  • ????at?org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)??
  • ????at?org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)??
  • ????at?org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)??
  • ????at?org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)??
  • ????at?org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)??
  • ????at?org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)??
  • ????at?org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)??
  • ????at?org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)??
  • ????at?org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)??
  • ????at?org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)??
  • ????at?org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1023)??
  • ????at?org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)??
  • ????at?org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)??
  • ????at?java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)??
  • ????at?java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)??
  • ????at?java.lang.Thread.run(Thread.java:662)??
  • \--------------------------------------/??
  • ?錯誤信息說明,struts2沒有找到isBoy 的setter方法,因為struts2認為isBoy 的setter方法名應該是setIsBoy

    為什么會設置isBoy時就有問題呢?因為按照struts2 的依賴注入規則,setter方法應該是set+成員變量(首字母變為大寫)

    我把isBoy的setter方法由setBoy 修改為setIsBoy,就好了。

    Java代碼??
  • public?void?setIsBoy(boolean?isBoy)?{??
  • ????????this.isBoy?=?isBoy;??
  • ????}??
  • ?

    總結:如果要依賴注入的屬性是boolean類型并且屬性名以is開頭,就會出現上述問題。

    ?

    解決方法

    如果使用struts2的依賴注入,那么boolean 類型的屬性名不要以is開頭。我修改方法是把屬性名由isBoy改為boy:

    Java代碼??
  • package?com.jn.bean;??
  • ??
  • public?class?LoginUser?{??
  • ????private?int?age;??
  • ????private?String?username;??
  • ????private?String?password;??
  • ????/***?
  • ?????*?是否是男性?
  • ?????*/??
  • ????private?boolean?boy;??
  • ??
  • ????public?LoginUser()?{??
  • ????????super();??
  • ????}??
  • ??
  • ????public?int?getAge()?{??
  • ????????return?age;??
  • ????}??
  • ??
  • ????public?void?setAge(int?age)?{??
  • ????????this.age?=?age;??
  • ????}??
  • ??
  • ????public?String?getUsername()?{??
  • ????????return?username;??
  • ????}??
  • ??
  • ????public?void?setUsername(String?username)?{??
  • ????????this.username?=?username;??
  • ????}??
  • ??
  • ????public?String?getPassword()?{??
  • ????????return?password;??
  • ????}??
  • ??
  • ????public?void?setPassword(String?password)?{??
  • ????????this.password?=?password;??
  • ????}??
  • ??
  • ????public?boolean?isBoy()?{??
  • ????????return?boy;??
  • ????}??
  • ??
  • ????public?void?setBoy(boolean?boy)?{??
  • ????????this.boy?=?boy;??
  • ????}??
  • ??
  • }??
  • ?登錄頁面中把user.isBoy 改為user.boy 就好了。

    總結

    以上是生活随笔為你收集整理的struts2 依赖注入boolean类型的属性时报错的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。