Hybris 6.0.0.1 NullPointerException,同时为旋转的图像组件创建标题元素

2020-09-26 05:24发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)当我们尝试创建横幅组件时,我们有...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


当我们尝试创建横幅组件时,我们有NPE

 信息|  jvm 1 | 主|  2016/07/05 11:12:12.835 |  2016年7月5日11:12:12 org.zkoss.zk.ui.impl.HybrisUiEngineImpl handleError:1616
  信息|  jvm 1 | 主|  2016/07/05 11:12:12.835 | 严重:>> java.lang.NullPointerException
  信息|  jvm 1 | 主|  2016/07/05 11:12:12.835 |  >>在de.hybris.platform.servicelayer.internal.converter.impl.ItemModelConverter $ ModelAttributeInfo.getMethodForClass(ItemModelConverter.java:3079)
  信息|  jvm 1 | 主|  2016/07/05 11:12:12.835 |  >>在de.hybris.platform.servicelayer.internal.converter.impl.ItemModelConverter $ ModelAttributeInfo.getLocalizedSetter(ItemModelConverter.java:3112)
  信息|  jvm 1 | 主|  2016/07/05 11:12:12.836 |  >>位于de.hybris.platform.servicelayer.internal.converter.impl.ItemModelConverter.getLocalizedSetter(ItemModelConverter.java:3188)
  信息|  jvm 1 | 主|  2016/07/05 11:12:12.836 |  >>位于de.hybris.platform.servicelayer.internal.converter.impl.ItemModelConverter.setAttributeValue(ItemModelConverter.java:1148)
  信息|  jvm 1 | 主|  2016/07/05 11:12:12.836 |  >>位于de.hybris.platform.servicelayer.internal.model.impl.DefaultModelService.setAttributeValue(DefaultModelService.java:836)
  信息|  jvm 1 | 主|  2016/07/05 11:12:12.836 |  >>位于de.hybris.platform.cockpit.wizards.generic.DefaultGenericItemMandatoryPageController.setModelLocalizedValue(DefaultGenericItemMandatoryPageController.java:425)
  信息|  jvm 1 | 主|  2016/07/05 11:12:12.836 |  >>位于de.hybris.platform.cockpit.wizards.generic.DefaultGenericItemMandatoryPageController.validate(DefaultGenericItemMandatoryPageController.java:193)
  信息|  jvm 1 | 主|  2016/07/05 11:12:12.837 |  >>位于de.hybris.platform.cockpit.wizards.Wizard.doDone(Wizard.java:526)
  信息|  jvm 1 | 主|  2016/07/05 11:12:12.837 |  >>位于de.hybris.platform.cockpit.wizards.generic.GenericItemWizard.doDone(GenericItemWizard.java:680)
  信息|  jvm 1 | 主|  2016/07/05 11:12:12.837 |  >>在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处
  信息|  jvm 1 | 主|  2016/07/05 11:12:12.837 |  >>在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
  信息|  jvm 1 | 主|  2016/07/05 11:12:12.837 |  >>在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  信息|  jvm 1 | 主|  2016/07/05 11:12:12.837 |  >>在java.lang.reflect.Method.invoke(Method.java:498)
  信息|  jvm 1 | 主|  2016/07/05 11:12:12.837 |  >>在bsh.Reflect.invokeMethod(Reflect.java:134)
  信息|  jvm 1 | 主|  2016/07/05 11:12:12.837 |  >>在bsh.Reflect.invokeObjectMethod(Reflect.java:80)
  信息|  jvm 1 | 主|  2016/07/05 11:12:12.837 |  >>在bsh.Name.invokeMethod(Name.java:858)
  信息|  jvm 1 | 主|  2016/07/05 11:12:12.837 |  >>在bsh.BSHMethodInvocation.eval(BSHMethodInvocation.java:75)
  信息|  jvm 1 | 主|  2016/07/05 11:12:12.837 |  >>在bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:102)
  信息|  jvm 1 | 主|  2016/07/05 11:12:12.838 |  >>在bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:47)
  信息|  jvm 1 | 主|  2016/07/05 11:12:12.838 |  >>在bsh.Interpreter.eval(Interpreter.java:645)
  信息|  jvm 1 | 主|  2016/07/05 11:12:12.838 |  >>在bsh.Interpreter.eval(Interpreter.java:739)
  信息|  jvm 1 | 主|  2016/07/05 11:12:12.838 |  >> org.zkoss.zk.scripting.bsh.BSHInterpreter.exec(BSHInterpreter.java:119)
  信息|  jvm 1 | 主|  2016/07/05 11:12:12.838 |  >> org.zkoss.zk.scripting.util.GenericInterpreter.interpret(GenericInterpreter.java:310)
  信息|  jvm 1 | 主|  2016/07/05 11:12:12.838 |  >> org.zkoss.zk.ui.impl.PageImpl.interpret(PageImpl.java:797)
  信息|  jvm 1 | 主|  2016/07/05 11:12:12.838 |  >> org.zkoss.zk.ui.impl.EventProcessor.process0(EventProcessor.java:176)
  信息|  jvm 1 | 主|  2016/07/05 11:12:12.838 |  >> org.zkoss.zk.ui.impl.EventProcessor.process(EventProcessor.java:141)
  信息|  jvm 1 | 主|  2016/07/05 11:12:12.839 |  >>在org.zkoss.zk.ui.impl.EventProcessingThreadImpl.process0(EventProcessingThreadImpl.java:519)
  信息|  jvm 1 | 主|  2016/07/05 11:12:12.839 |  >>在org.zkoss.zk.ui.impl.EventProcessingThreadImpl.run(EventProcessingThreadImpl.java:446)


  

我们将de.hybris.platform.servicelayer.internal.converter.impl.ItemModelConverter 6.0与5.7进行了比较,区别是:

5.7:

 私有方法findSetterForAttribute(Class modelClass,String attributeName,Object attributeValue,boolean localized){
          ItemModelConverter.MatchMethodCallback matchMethodCallback = new ItemModelConverter.MatchMethodCallback((ItemModelConverter.MatchMethodCallback)null);
          ItemModelConverter.MatchSetterFilter matchMethodFilter = new ItemModelConverter.MatchSetterFilter(attributeName,localized,attributeValue,(ItemModelConverter.MatchSetterFilter)null);
          ReflectionUtils.doWithMethods(modelClass,matchMethodCallback,matchMethodFilter);
          方法foundMethod = matchMethodCallback.getFoundMethod();
          Preconditions.checkArgument(foundMethod!= null,"在模型类" + modelClass.getName()处找不到属性的设置器+ attributeName +"和值\'" + attributeValue +" \'));
          返回foundMethod;
      }

  

6.0:

 私有方法findSetterForAttribute(Class modelClass,String attributeName,Object attributeValue,boolean localized){
          ItemModelConverter.MatchMethodCallback matchMethodCallback = new ItemModelConverter.MatchMethodCallback((ItemModelConverter.MatchMethodCallback)null);
          ItemModelConverter.MatchSetterFilter matchMethodFilter = new ItemModelConverter.MatchSetterFilter(attributeName,localized,attributeValue,(ItemModelConverter.MatchSetterFilter)null);
          ReflectionUtils.doWithMethods(modelClass,matchMethodCallback,matchMethodFilter);
          方法foundMethod = matchMethodCallback.getFoundMethod();
          返回foundMethod;
      }
  
6048-screen-shot-2016-06-30-at-44338-pm .jpg (209.8 kB)