|
Administrator
|
Hi,
I have a problem with the recent converter changes I guess. In a custom application where I use a <list-options I get an error saying it's not a Map. This is woirking if I revert to r909312. I will try to reproduce on a local update instance, I'm quite sure it's reproductible in the trunk Unfortunately I can't help much on this right now as I will be in vacation for 4 days begining tonigh and it's already rather late here. Jacques |
|
Jacques Le Roux wrote:
> Hi, > > I have a problem with the recent converter changes I guess. In a custom > application where I use a <list-options I get an error > saying it's not a Map. > > This is woirking if I revert to r909312. I will try to reproduce on a > local update instance, I'm quite sure it's reproductible in the trunk > > Unfortunately I can't help much on this right now as I will be in > vacation for 4 days begining tonigh and it's already rather late here. It would be nice to have more info on this, like at the very least what actual version you were running, not just one that happened to work for you. For reference, there was a point where I changed how the converters worked, to be different than what Adrian initially designed. Last week, I ended up undoing most of those modifications, and implemented my features in a different way, that shouldn't affect anyone else. |
|
Administrator
|
I'm workin on it :/
Just a little annoying as it's past midnight here and my wife will be waiting me tomorrow morning for our 4 vacation days she is waiting for so long... Life... Jacques From: "Adam Heath" <[hidden email]> > Jacques Le Roux wrote: >> Hi, >> >> I have a problem with the recent converter changes I guess. In a custom >> application where I use a <list-options I get an error >> saying it's not a Map. >> >> This is woirking if I revert to r909312. I will try to reproduce on a >> local update instance, I'm quite sure it's reproductible in the trunk >> >> Unfortunately I can't help much on this right now as I will be in >> vacation for 4 days begining tonigh and it's already rather late here. > > It would be nice to have more info on this, like at the very least > what actual version you were running, not just one that happened to > work for you. > > For reference, there was a point where I changed how the converters > worked, to be different than what Adrian initially designed. Last > week, I ended up undoing most of those modifications, and implemented > my features in a different way, that shouldn't affect anyone else. > |
|
Administrator
|
I did not reproduce with the lists used in the trunk OOTB (I tried Party Roles and Invoice Items)
But I can reproduce at r911227 I create a states list using (for instance) <set field="states" value="${groovy: postalAddress?.countryGeoId ? org.ofbiz.common.CommonWorkers.getAssociatedStateList(delegator, postalAddress.countryGeoId) : org.ofbiz.common.CommonWorkers.getAssociatedStateList(delegator, null)}" type="List"/> and I use it in (slightly changed for custom labels) <field use-when="states!=null" name="stateProvinceGeoId" title="${uiLabelMap.StateWithSpacesPrefix}" tooltip="${uiLabelMap.Required}" widget-style="required"> <drop-down allow-empty="false"> <list-options list-name="states" key-name="geoId" description="${geoName}"/> </drop-down> </field> I get 2010-02-18 00:58:04,734 (http-0.0.0.0-8443-4) [ ModelScreen.java:399:ERROR] Error rendering screen [component://common/widget/CommonScreens.xml#GlobalDecorator]: java.lang.ClassCastException: Not a map . Rolling back transaction. 2010-02-18 00:58:04,734 (http-0.0.0.0-8443-4) [ TransactionUtil.java:372:WARN ] ---- exception report ---------------------------------------------------------- [TransactionUtil.setRollbackOnly] Calling transaction setRollbackOnly; this stack trace shows where this is happening: Exception: java.lang.Exception Message: Error rendering screen [component://common/widget/CommonScreens.xml#GlobalDecorator]: java.lang.ClassCastException: Not a map ---- stack trace --------------------------------------------------------------- java.lang.Exception: Error rendering screen [component://common/widget/CommonScreens.xml#GlobalDecorator]: java.lang.ClassCastException: Not a map org.ofbiz.entity.transaction.TransactionUtil.setRollbackOnly(TransactionUtil.java:372) org.ofbiz.entity.transaction.TransactionUtil.rollback(TransactionUtil.java:319) org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:402) org.ofbiz.widget.screen.ModelScreenWidget$IncludeScreen.renderWidgetString(ModelScreenWidget.java:576) org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) org.ofbiz.widget.screen.ModelScreenWidget$DecoratorScreen.renderWidgetString(ModelScreenWidget.java:672) org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) org.ofbiz.widget.screen.ModelScreenWidget$DecoratorScreen.renderWidgetString(ModelScreenWidget.java:672) org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:135) org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:97) org.ofbiz.widget.screen.MacroScreenViewHandler.render(MacroScreenViewHandler.java:104) org.ofbiz.webapp.control.RequestHandler.renderView(RequestHandler.java:835) org.ofbiz.webapp.control.RequestHandler.doRequest(RequestHandler.java:554) org.ofbiz.webapp.control.ControlServlet.doGet(ControlServlet.java:223) javax.servlet.http.HttpServlet.service(HttpServlet.java:690) javax.servlet.http.HttpServlet.service(HttpServlet.java:803) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) org.ofbiz.webapp.control.ContextFilter.doFilter(ContextFilter.java:266) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:568) org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) java.lang.Thread.run(Thread.java:619) HTH (I can't do more right now) Jacques From: "Jacques Le Roux" <[hidden email]> > I'm workin on it :/ > > Just a little annoying as it's past midnight here and my wife will be waiting me tomorrow morning for our 4 vacation days she is > waiting for so long... Life... > > Jacques > > From: "Adam Heath" <[hidden email]> >> Jacques Le Roux wrote: >>> Hi, >>> >>> I have a problem with the recent converter changes I guess. In a custom >>> application where I use a <list-options I get an error >>> saying it's not a Map. >>> >>> This is woirking if I revert to r909312. I will try to reproduce on a >>> local update instance, I'm quite sure it's reproductible in the trunk >>> >>> Unfortunately I can't help much on this right now as I will be in >>> vacation for 4 days begining tonigh and it's already rather late here. >> >> It would be nice to have more info on this, like at the very least >> what actual version you were running, not just one that happened to >> work for you. >> >> For reference, there was a point where I changed how the converters >> worked, to be different than what Adrian initially designed. Last >> week, I ended up undoing most of those modifications, and implemented >> my features in a different way, that shouldn't affect anyone else. >> > > |
|
In reply to this post by Jacques Le Roux
I am unable to reproduce that problem in the trunk.
-Adrian Jacques Le Roux wrote: > Hi, > > I have a problem with the recent converter changes I guess. In a custom > application where I use a <list-options I get an error > saying it's not a Map. > > This is woirking if I revert to r909312. I will try to reproduce on a > local update instance, I'm quite sure it's reproductible in the trunk > > Unfortunately I can't help much on this right now as I will be in > vacation for 4 days begining tonigh and it's already rather late here. > > Jacques > > > |
|
Administrator
|
In reply to this post by Jacques Le Roux
Missed the more important part, here it is
---- cause --------------------------------------------------------------------- Exception: java.lang.ClassCastException Message: Not a map ---- stack trace --------------------------------------------------------------- java.lang.ClassCastException: Not a map org.ofbiz.base.util.UtilGenerics.checkMap(UtilGenerics.java:77) org.ofbiz.widget.form.ModelFormField$ListOptions.addOptionValues(ModelFormField.java:1648) org.ofbiz.widget.form.ModelFormField$FieldInfoWithOptions.getAllOptionValues(ModelFormField.java:1529) org.ofbiz.widget.form.MacroFormRenderer.renderDropDownField(MacroFormRenderer.java:666) org.ofbiz.widget.form.ModelFormField$DropDownField.renderFieldString(ModelFormField.java:3043) org.ofbiz.widget.form.ModelFormField.renderFieldString(ModelFormField.java:595) org.ofbiz.widget.form.ModelForm.renderSingleFormString(ModelForm.java:1054) org.ofbiz.widget.form.ModelForm.renderFormString(ModelForm.java:837) org.ofbiz.widget.screen.ModelScreenWidget$Form.renderWidgetString(ModelScreenWidget.java:841) org.ofbiz.widget.screen.MacroScreenRenderer.renderScreenletSubWidget(MacroScreenRenderer.java:704) org.ofbiz.widget.screen.ModelScreenWidget$Screenlet.renderWidgetString(ModelScreenWidget.java:408) org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) org.ofbiz.widget.screen.ModelScreenWidget$DecoratorSection.renderWidgetString(ModelScreenWidget.java:704) org.ofbiz.widget.screen.ModelScreenWidget$SectionsRenderer.render(ModelScreenWidget.java:167) org.ofbiz.widget.screen.ModelScreenWidget$DecoratorSectionInclude.renderWidgetString(ModelScreenWidget.java:736) org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) org.ofbiz.widget.screen.ModelScreenWidget$DecoratorSection.renderWidgetString(ModelScreenWidget.java:704) org.ofbiz.widget.screen.ModelScreenWidget$SectionsRenderer.render(ModelScreenWidget.java:167) org.ofbiz.widget.screen.ModelScreenWidget$DecoratorSectionInclude.renderWidgetString(ModelScreenWidget.java:736) org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) org.ofbiz.widget.screen.ModelScreenWidget$Container.renderWidgetString(ModelScreenWidget.java:296) org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) org.ofbiz.widget.screen.ModelScreenWidget$IncludeScreen.renderWidgetString(ModelScreenWidget.java:576) org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) org.ofbiz.widget.screen.ModelScreenWidget$DecoratorScreen.renderWidgetString(ModelScreenWidget.java:672) org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) org.ofbiz.widget.screen.ModelScreenWidget$DecoratorScreen.renderWidgetString(ModelScreenWidget.java:672) org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:135) org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:97) org.ofbiz.widget.screen.MacroScreenViewHandler.render(MacroScreenViewHandler.java:104) org.ofbiz.webapp.control.RequestHandler.renderView(RequestHandler.java:835) org.ofbiz.webapp.control.RequestHandler.doRequest(RequestHandler.java:554) org.ofbiz.webapp.control.ControlServlet.doGet(ControlServlet.java:223) javax.servlet.http.HttpServlet.service(HttpServlet.java:690) javax.servlet.http.HttpServlet.service(HttpServlet.java:803) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) org.ofbiz.webapp.control.ContextFilter.doFilter(ContextFilter.java:266) org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:568) org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) java.lang.Thread.run(Thread.java:619) -------------------------------------------------------------------------------- Jacques From: "Jacques Le Roux" <[hidden email]> >I did not reproduce with the lists used in the trunk OOTB (I tried Party Roles and Invoice Items) > But I can reproduce at r911227 > > I create a states list using (for instance) > <set field="states" value="${groovy: postalAddress?.countryGeoId ? > org.ofbiz.common.CommonWorkers.getAssociatedStateList(delegator, > postalAddress.countryGeoId) : org.ofbiz.common.CommonWorkers.getAssociatedStateList(delegator, null)}" type="List"/> > > and I use it in (slightly changed for custom labels) > > <field use-when="states!=null" name="stateProvinceGeoId" title="${uiLabelMap.StateWithSpacesPrefix}" > tooltip="${uiLabelMap.Required}" widget-style="required"> > <drop-down allow-empty="false"> > <list-options list-name="states" key-name="geoId" description="${geoName}"/> > </drop-down> > </field> > > I get > > 2010-02-18 00:58:04,734 (http-0.0.0.0-8443-4) [ ModelScreen.java:399:ERROR] Error rendering screen > [component://common/widget/CommonScreens.xml#GlobalDecorator]: java.lang.ClassCastException: Not a map > . Rolling back transaction. > 2010-02-18 00:58:04,734 (http-0.0.0.0-8443-4) [ TransactionUtil.java:372:WARN ] > ---- exception report ---------------------------------------------------------- > [TransactionUtil.setRollbackOnly] Calling transaction setRollbackOnly; this stack trace shows where this is happening: > Exception: java.lang.Exception > Message: Error rendering screen [component://common/widget/CommonScreens.xml#GlobalDecorator]: java.lang.ClassCastException: Not a > map > ---- stack trace --------------------------------------------------------------- > java.lang.Exception: Error rendering screen [component://common/widget/CommonScreens.xml#GlobalDecorator]: > java.lang.ClassCastException: Not a map > org.ofbiz.entity.transaction.TransactionUtil.setRollbackOnly(TransactionUtil.java:372) > org.ofbiz.entity.transaction.TransactionUtil.rollback(TransactionUtil.java:319) > org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:402) > org.ofbiz.widget.screen.ModelScreenWidget$IncludeScreen.renderWidgetString(ModelScreenWidget.java:576) > org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) > org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) > org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) > org.ofbiz.widget.screen.ModelScreenWidget$DecoratorScreen.renderWidgetString(ModelScreenWidget.java:672) > org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) > org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) > org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) > org.ofbiz.widget.screen.ModelScreenWidget$DecoratorScreen.renderWidgetString(ModelScreenWidget.java:672) > org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) > org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) > org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) > org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:135) > org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:97) > org.ofbiz.widget.screen.MacroScreenViewHandler.render(MacroScreenViewHandler.java:104) > org.ofbiz.webapp.control.RequestHandler.renderView(RequestHandler.java:835) > org.ofbiz.webapp.control.RequestHandler.doRequest(RequestHandler.java:554) > org.ofbiz.webapp.control.ControlServlet.doGet(ControlServlet.java:223) > javax.servlet.http.HttpServlet.service(HttpServlet.java:690) > javax.servlet.http.HttpServlet.service(HttpServlet.java:803) > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > org.ofbiz.webapp.control.ContextFilter.doFilter(ContextFilter.java:266) > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) > org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:568) > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) > org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) > java.lang.Thread.run(Thread.java:619) > > HTH (I can't do more right now) > > Jacques > > From: "Jacques Le Roux" <[hidden email]> >> I'm workin on it :/ >> >> Just a little annoying as it's past midnight here and my wife will be waiting me tomorrow morning for our 4 vacation days she is >> waiting for so long... Life... >> >> Jacques >> >> From: "Adam Heath" <[hidden email]> >>> Jacques Le Roux wrote: >>>> Hi, >>>> >>>> I have a problem with the recent converter changes I guess. In a custom >>>> application where I use a <list-options I get an error >>>> saying it's not a Map. >>>> >>>> This is woirking if I revert to r909312. I will try to reproduce on a >>>> local update instance, I'm quite sure it's reproductible in the trunk >>>> >>>> Unfortunately I can't help much on this right now as I will be in >>>> vacation for 4 days begining tonigh and it's already rather late here. >>> >>> It would be nice to have more info on this, like at the very least >>> what actual version you were running, not just one that happened to >>> work for you. >>> >>> For reference, there was a point where I changed how the converters >>> worked, to be different than what Adrian initially designed. Last >>> week, I ended up undoing most of those modifications, and implemented >>> my features in a different way, that shouldn't affect anyone else. >>> >> >> > |
|
Administrator
|
In reply to this post by Adrian Crum
Thanks Adrian,
I did not change anything in the trunk but the theme and locales.available in general.properties, also I use Postgres, that's all. This is for sure reproductible with the last info I sent Jacques From: "Adrian Crum" <[hidden email]> >I am unable to reproduce that problem in the trunk. > > -Adrian > > Jacques Le Roux wrote: >> Hi, >> >> I have a problem with the recent converter changes I guess. In a custom >> application where I use a <list-options I get an error >> saying it's not a Map. >> >> This is woirking if I revert to r909312. I will try to reproduce on a >> local update instance, I'm quite sure it's reproductible in the trunk >> >> Unfortunately I can't help much on this right now as I will be in >> vacation for 4 days begining tonigh and it's already rather late here. >> >> Jacques >> >> >> > |
|
In reply to this post by Jacques Le Roux
Jacques, It looks like the list you are trying to use in the drop-down contains something other than a Map. -David On Feb 17, 2010, at 5:03 PM, Jacques Le Roux wrote: > Missed the more important part, here it is > > ---- cause --------------------------------------------------------------------- > Exception: java.lang.ClassCastException > Message: Not a map > ---- stack trace --------------------------------------------------------------- > java.lang.ClassCastException: Not a map > org.ofbiz.base.util.UtilGenerics.checkMap(UtilGenerics.java:77) > org.ofbiz.widget.form.ModelFormField$ListOptions.addOptionValues(ModelFormField.java:1648) > org.ofbiz.widget.form.ModelFormField$FieldInfoWithOptions.getAllOptionValues(ModelFormField.java:1529) > org.ofbiz.widget.form.MacroFormRenderer.renderDropDownField(MacroFormRenderer.java:666) > org.ofbiz.widget.form.ModelFormField$DropDownField.renderFieldString(ModelFormField.java:3043) > org.ofbiz.widget.form.ModelFormField.renderFieldString(ModelFormField.java:595) > org.ofbiz.widget.form.ModelForm.renderSingleFormString(ModelForm.java:1054) > org.ofbiz.widget.form.ModelForm.renderFormString(ModelForm.java:837) > org.ofbiz.widget.screen.ModelScreenWidget$Form.renderWidgetString(ModelScreenWidget.java:841) > org.ofbiz.widget.screen.MacroScreenRenderer.renderScreenletSubWidget(MacroScreenRenderer.java:704) > org.ofbiz.widget.screen.ModelScreenWidget$Screenlet.renderWidgetString(ModelScreenWidget.java:408) > org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) > org.ofbiz.widget.screen.ModelScreenWidget$DecoratorSection.renderWidgetString(ModelScreenWidget.java:704) > org.ofbiz.widget.screen.ModelScreenWidget$SectionsRenderer.render(ModelScreenWidget.java:167) > org.ofbiz.widget.screen.ModelScreenWidget$DecoratorSectionInclude.renderWidgetString(ModelScreenWidget.java:736) > org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) > org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) > org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) > org.ofbiz.widget.screen.ModelScreenWidget$DecoratorSection.renderWidgetString(ModelScreenWidget.java:704) > org.ofbiz.widget.screen.ModelScreenWidget$SectionsRenderer.render(ModelScreenWidget.java:167) > org.ofbiz.widget.screen.ModelScreenWidget$DecoratorSectionInclude.renderWidgetString(ModelScreenWidget.java:736) > org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) > org.ofbiz.widget.screen.ModelScreenWidget$Container.renderWidgetString(ModelScreenWidget.java:296) > org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) > org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) > org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) > org.ofbiz.widget.screen.ModelScreenWidget$IncludeScreen.renderWidgetString(ModelScreenWidget.java:576) > org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) > org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) > org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) > org.ofbiz.widget.screen.ModelScreenWidget$DecoratorScreen.renderWidgetString(ModelScreenWidget.java:672) > org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) > org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) > org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) > org.ofbiz.widget.screen.ModelScreenWidget$DecoratorScreen.renderWidgetString(ModelScreenWidget.java:672) > org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) > org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) > org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) > org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:135) > org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:97) > org.ofbiz.widget.screen.MacroScreenViewHandler.render(MacroScreenViewHandler.java:104) > org.ofbiz.webapp.control.RequestHandler.renderView(RequestHandler.java:835) > org.ofbiz.webapp.control.RequestHandler.doRequest(RequestHandler.java:554) > org.ofbiz.webapp.control.ControlServlet.doGet(ControlServlet.java:223) > javax.servlet.http.HttpServlet.service(HttpServlet.java:690) > javax.servlet.http.HttpServlet.service(HttpServlet.java:803) > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > org.ofbiz.webapp.control.ContextFilter.doFilter(ContextFilter.java:266) > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) > org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:568) > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) > org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) > java.lang.Thread.run(Thread.java:619) > -------------------------------------------------------------------------------- > > Jacques > > From: "Jacques Le Roux" <[hidden email]> >> I did not reproduce with the lists used in the trunk OOTB (I tried Party Roles and Invoice Items) >> But I can reproduce at r911227 >> >> I create a states list using (for instance) >> <set field="states" value="${groovy: postalAddress?.countryGeoId ? org.ofbiz.common.CommonWorkers.getAssociatedStateList(delegator, >> postalAddress.countryGeoId) : org.ofbiz.common.CommonWorkers.getAssociatedStateList(delegator, null)}" type="List"/> >> >> and I use it in (slightly changed for custom labels) >> >> <field use-when="states!=null" name="stateProvinceGeoId" title="${uiLabelMap.StateWithSpacesPrefix}" >> tooltip="${uiLabelMap.Required}" widget-style="required"> >> <drop-down allow-empty="false"> >> <list-options list-name="states" key-name="geoId" description="${geoName}"/> >> </drop-down> >> </field> >> >> I get >> >> 2010-02-18 00:58:04,734 (http-0.0.0.0-8443-4) [ ModelScreen.java:399:ERROR] Error rendering screen >> [component://common/widget/CommonScreens.xml#GlobalDecorator]: java.lang.ClassCastException: Not a map >> . Rolling back transaction. >> 2010-02-18 00:58:04,734 (http-0.0.0.0-8443-4) [ TransactionUtil.java:372:WARN ] >> ---- exception report ---------------------------------------------------------- >> [TransactionUtil.setRollbackOnly] Calling transaction setRollbackOnly; this stack trace shows where this is happening: >> Exception: java.lang.Exception >> Message: Error rendering screen [component://common/widget/CommonScreens.xml#GlobalDecorator]: java.lang.ClassCastException: Not a >> map >> ---- stack trace --------------------------------------------------------------- >> java.lang.Exception: Error rendering screen [component://common/widget/CommonScreens.xml#GlobalDecorator]: >> java.lang.ClassCastException: Not a map >> org.ofbiz.entity.transaction.TransactionUtil.setRollbackOnly(TransactionUtil.java:372) >> org.ofbiz.entity.transaction.TransactionUtil.rollback(TransactionUtil.java:319) >> org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:402) >> org.ofbiz.widget.screen.ModelScreenWidget$IncludeScreen.renderWidgetString(ModelScreenWidget.java:576) >> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >> org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) >> org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) >> org.ofbiz.widget.screen.ModelScreenWidget$DecoratorScreen.renderWidgetString(ModelScreenWidget.java:672) >> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >> org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) >> org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) >> org.ofbiz.widget.screen.ModelScreenWidget$DecoratorScreen.renderWidgetString(ModelScreenWidget.java:672) >> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >> org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) >> org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) >> org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:135) >> org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:97) >> org.ofbiz.widget.screen.MacroScreenViewHandler.render(MacroScreenViewHandler.java:104) >> org.ofbiz.webapp.control.RequestHandler.renderView(RequestHandler.java:835) >> org.ofbiz.webapp.control.RequestHandler.doRequest(RequestHandler.java:554) >> org.ofbiz.webapp.control.ControlServlet.doGet(ControlServlet.java:223) >> javax.servlet.http.HttpServlet.service(HttpServlet.java:690) >> javax.servlet.http.HttpServlet.service(HttpServlet.java:803) >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >> org.ofbiz.webapp.control.ContextFilter.doFilter(ContextFilter.java:266) >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) >> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) >> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) >> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) >> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) >> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:568) >> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) >> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) >> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) >> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) >> java.lang.Thread.run(Thread.java:619) >> >> HTH (I can't do more right now) >> >> Jacques >> >> From: "Jacques Le Roux" <[hidden email]> >>> I'm workin on it :/ >>> >>> Just a little annoying as it's past midnight here and my wife will be waiting me tomorrow morning for our 4 vacation days she is >>> waiting for so long... Life... >>> >>> Jacques >>> >>> From: "Adam Heath" <[hidden email]> >>>> Jacques Le Roux wrote: >>>>> Hi, >>>>> >>>>> I have a problem with the recent converter changes I guess. In a custom >>>>> application where I use a <list-options I get an error >>>>> saying it's not a Map. >>>>> >>>>> This is woirking if I revert to r909312. I will try to reproduce on a >>>>> local update instance, I'm quite sure it's reproductible in the trunk >>>>> >>>>> Unfortunately I can't help much on this right now as I will be in >>>>> vacation for 4 days begining tonigh and it's already rather late here. >>>> >>>> It would be nice to have more info on this, like at the very least >>>> what actual version you were running, not just one that happened to >>>> work for you. >>>> >>>> For reference, there was a point where I changed how the converters >>>> worked, to be different than what Adrian initially designed. Last >>>> week, I ended up undoing most of those modifications, and implemented >>>> my features in a different way, that shouldn't affect anyone else. >>>> >>> >>> > > |
|
Administrator
|
Yes, actually it's a List of GenericValues returned by CommonWorkers.getAssociatedStateList()
The problem is that this was working at r909312. I call this a regression, maybe it was wrong in the middle before, but it worked. Jacques From: "David E Jones" <[hidden email]> > > Jacques, > > It looks like the list you are trying to use in the drop-down contains something other than a Map. > > -David > > > On Feb 17, 2010, at 5:03 PM, Jacques Le Roux wrote: > >> Missed the more important part, here it is >> >> ---- cause --------------------------------------------------------------------- >> Exception: java.lang.ClassCastException >> Message: Not a map >> ---- stack trace --------------------------------------------------------------- >> java.lang.ClassCastException: Not a map >> org.ofbiz.base.util.UtilGenerics.checkMap(UtilGenerics.java:77) >> org.ofbiz.widget.form.ModelFormField$ListOptions.addOptionValues(ModelFormField.java:1648) >> org.ofbiz.widget.form.ModelFormField$FieldInfoWithOptions.getAllOptionValues(ModelFormField.java:1529) >> org.ofbiz.widget.form.MacroFormRenderer.renderDropDownField(MacroFormRenderer.java:666) >> org.ofbiz.widget.form.ModelFormField$DropDownField.renderFieldString(ModelFormField.java:3043) >> org.ofbiz.widget.form.ModelFormField.renderFieldString(ModelFormField.java:595) >> org.ofbiz.widget.form.ModelForm.renderSingleFormString(ModelForm.java:1054) >> org.ofbiz.widget.form.ModelForm.renderFormString(ModelForm.java:837) >> org.ofbiz.widget.screen.ModelScreenWidget$Form.renderWidgetString(ModelScreenWidget.java:841) >> org.ofbiz.widget.screen.MacroScreenRenderer.renderScreenletSubWidget(MacroScreenRenderer.java:704) >> org.ofbiz.widget.screen.ModelScreenWidget$Screenlet.renderWidgetString(ModelScreenWidget.java:408) >> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >> org.ofbiz.widget.screen.ModelScreenWidget$DecoratorSection.renderWidgetString(ModelScreenWidget.java:704) >> org.ofbiz.widget.screen.ModelScreenWidget$SectionsRenderer.render(ModelScreenWidget.java:167) >> org.ofbiz.widget.screen.ModelScreenWidget$DecoratorSectionInclude.renderWidgetString(ModelScreenWidget.java:736) >> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >> org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) >> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >> org.ofbiz.widget.screen.ModelScreenWidget$DecoratorSection.renderWidgetString(ModelScreenWidget.java:704) >> org.ofbiz.widget.screen.ModelScreenWidget$SectionsRenderer.render(ModelScreenWidget.java:167) >> org.ofbiz.widget.screen.ModelScreenWidget$DecoratorSectionInclude.renderWidgetString(ModelScreenWidget.java:736) >> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >> org.ofbiz.widget.screen.ModelScreenWidget$Container.renderWidgetString(ModelScreenWidget.java:296) >> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >> org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) >> org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) >> org.ofbiz.widget.screen.ModelScreenWidget$IncludeScreen.renderWidgetString(ModelScreenWidget.java:576) >> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >> org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) >> org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) >> org.ofbiz.widget.screen.ModelScreenWidget$DecoratorScreen.renderWidgetString(ModelScreenWidget.java:672) >> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >> org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) >> org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) >> org.ofbiz.widget.screen.ModelScreenWidget$DecoratorScreen.renderWidgetString(ModelScreenWidget.java:672) >> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >> org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) >> org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) >> org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:135) >> org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:97) >> org.ofbiz.widget.screen.MacroScreenViewHandler.render(MacroScreenViewHandler.java:104) >> org.ofbiz.webapp.control.RequestHandler.renderView(RequestHandler.java:835) >> org.ofbiz.webapp.control.RequestHandler.doRequest(RequestHandler.java:554) >> org.ofbiz.webapp.control.ControlServlet.doGet(ControlServlet.java:223) >> javax.servlet.http.HttpServlet.service(HttpServlet.java:690) >> javax.servlet.http.HttpServlet.service(HttpServlet.java:803) >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >> org.ofbiz.webapp.control.ContextFilter.doFilter(ContextFilter.java:266) >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) >> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) >> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) >> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) >> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) >> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:568) >> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) >> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) >> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) >> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) >> java.lang.Thread.run(Thread.java:619) >> -------------------------------------------------------------------------------- >> >> Jacques >> >> From: "Jacques Le Roux" <[hidden email]> >>> I did not reproduce with the lists used in the trunk OOTB (I tried Party Roles and Invoice Items) >>> But I can reproduce at r911227 >>> >>> I create a states list using (for instance) >>> <set field="states" value="${groovy: postalAddress?.countryGeoId ? >>> org.ofbiz.common.CommonWorkers.getAssociatedStateList(delegator, >>> postalAddress.countryGeoId) : org.ofbiz.common.CommonWorkers.getAssociatedStateList(delegator, null)}" type="List"/> >>> >>> and I use it in (slightly changed for custom labels) >>> >>> <field use-when="states!=null" name="stateProvinceGeoId" title="${uiLabelMap.StateWithSpacesPrefix}" >>> tooltip="${uiLabelMap.Required}" widget-style="required"> >>> <drop-down allow-empty="false"> >>> <list-options list-name="states" key-name="geoId" description="${geoName}"/> >>> </drop-down> >>> </field> >>> >>> I get >>> >>> 2010-02-18 00:58:04,734 (http-0.0.0.0-8443-4) [ ModelScreen.java:399:ERROR] Error rendering screen >>> [component://common/widget/CommonScreens.xml#GlobalDecorator]: java.lang.ClassCastException: Not a map >>> . Rolling back transaction. >>> 2010-02-18 00:58:04,734 (http-0.0.0.0-8443-4) [ TransactionUtil.java:372:WARN ] >>> ---- exception report ---------------------------------------------------------- >>> [TransactionUtil.setRollbackOnly] Calling transaction setRollbackOnly; this stack trace shows where this is happening: >>> Exception: java.lang.Exception >>> Message: Error rendering screen [component://common/widget/CommonScreens.xml#GlobalDecorator]: java.lang.ClassCastException: Not >>> a >>> map >>> ---- stack trace --------------------------------------------------------------- >>> java.lang.Exception: Error rendering screen [component://common/widget/CommonScreens.xml#GlobalDecorator]: >>> java.lang.ClassCastException: Not a map >>> org.ofbiz.entity.transaction.TransactionUtil.setRollbackOnly(TransactionUtil.java:372) >>> org.ofbiz.entity.transaction.TransactionUtil.rollback(TransactionUtil.java:319) >>> org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:402) >>> org.ofbiz.widget.screen.ModelScreenWidget$IncludeScreen.renderWidgetString(ModelScreenWidget.java:576) >>> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >>> org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) >>> org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) >>> org.ofbiz.widget.screen.ModelScreenWidget$DecoratorScreen.renderWidgetString(ModelScreenWidget.java:672) >>> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >>> org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) >>> org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) >>> org.ofbiz.widget.screen.ModelScreenWidget$DecoratorScreen.renderWidgetString(ModelScreenWidget.java:672) >>> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >>> org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) >>> org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) >>> org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:135) >>> org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:97) >>> org.ofbiz.widget.screen.MacroScreenViewHandler.render(MacroScreenViewHandler.java:104) >>> org.ofbiz.webapp.control.RequestHandler.renderView(RequestHandler.java:835) >>> org.ofbiz.webapp.control.RequestHandler.doRequest(RequestHandler.java:554) >>> org.ofbiz.webapp.control.ControlServlet.doGet(ControlServlet.java:223) >>> javax.servlet.http.HttpServlet.service(HttpServlet.java:690) >>> javax.servlet.http.HttpServlet.service(HttpServlet.java:803) >>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) >>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >>> org.ofbiz.webapp.control.ContextFilter.doFilter(ContextFilter.java:266) >>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) >>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) >>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) >>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) >>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) >>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) >>> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:568) >>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) >>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) >>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) >>> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) >>> java.lang.Thread.run(Thread.java:619) >>> >>> HTH (I can't do more right now) >>> >>> Jacques >>> >>> From: "Jacques Le Roux" <[hidden email]> >>>> I'm workin on it :/ >>>> >>>> Just a little annoying as it's past midnight here and my wife will be waiting me tomorrow morning for our 4 vacation days she >>>> is >>>> waiting for so long... Life... >>>> >>>> Jacques >>>> >>>> From: "Adam Heath" <[hidden email]> >>>>> Jacques Le Roux wrote: >>>>>> Hi, >>>>>> >>>>>> I have a problem with the recent converter changes I guess. In a custom >>>>>> application where I use a <list-options I get an error >>>>>> saying it's not a Map. >>>>>> >>>>>> This is woirking if I revert to r909312. I will try to reproduce on a >>>>>> local update instance, I'm quite sure it's reproductible in the trunk >>>>>> >>>>>> Unfortunately I can't help much on this right now as I will be in >>>>>> vacation for 4 days begining tonigh and it's already rather late here. >>>>> >>>>> It would be nice to have more info on this, like at the very least >>>>> what actual version you were running, not just one that happened to >>>>> work for you. >>>>> >>>>> For reference, there was a point where I changed how the converters >>>>> worked, to be different than what Adrian initially designed. Last >>>>> week, I ended up undoing most of those modifications, and implemented >>>>> my features in a different way, that shouldn't affect anyone else. >>>>> >>>> >>>> >> >> > |
|
No, you may be right. I haven't tested it, but your list should contain GenericValue objects that implement the Map interface and can be treated as Maps, and the list-options tag should accept those fine. Somewhere, either in the query/find operation or in the list-options iterating something is breaking this, and while I don't know if it is the conversion stuff or not it could be. The best bet is to make it easy for others to reproduce it, perhaps by creating an issue that has a patch and instructions for applying and running it. It's great that you've nailed it down to where reverting to a certain revision makes it work, that should be useful for tracking down the cause of this. -David On Feb 17, 2010, at 5:51 PM, Jacques Le Roux wrote: > Yes, actually it's a List of GenericValues returned by CommonWorkers.getAssociatedStateList() > > The problem is that this was working at r909312. I call this a regression, maybe it was wrong in the middle before, but it worked. > > Jacques > > From: "David E Jones" <[hidden email]> >> >> Jacques, >> >> It looks like the list you are trying to use in the drop-down contains something other than a Map. >> >> -David >> >> >> On Feb 17, 2010, at 5:03 PM, Jacques Le Roux wrote: >> >>> Missed the more important part, here it is >>> >>> ---- cause --------------------------------------------------------------------- >>> Exception: java.lang.ClassCastException >>> Message: Not a map >>> ---- stack trace --------------------------------------------------------------- >>> java.lang.ClassCastException: Not a map >>> org.ofbiz.base.util.UtilGenerics.checkMap(UtilGenerics.java:77) >>> org.ofbiz.widget.form.ModelFormField$ListOptions.addOptionValues(ModelFormField.java:1648) >>> org.ofbiz.widget.form.ModelFormField$FieldInfoWithOptions.getAllOptionValues(ModelFormField.java:1529) >>> org.ofbiz.widget.form.MacroFormRenderer.renderDropDownField(MacroFormRenderer.java:666) >>> org.ofbiz.widget.form.ModelFormField$DropDownField.renderFieldString(ModelFormField.java:3043) >>> org.ofbiz.widget.form.ModelFormField.renderFieldString(ModelFormField.java:595) >>> org.ofbiz.widget.form.ModelForm.renderSingleFormString(ModelForm.java:1054) >>> org.ofbiz.widget.form.ModelForm.renderFormString(ModelForm.java:837) >>> org.ofbiz.widget.screen.ModelScreenWidget$Form.renderWidgetString(ModelScreenWidget.java:841) >>> org.ofbiz.widget.screen.MacroScreenRenderer.renderScreenletSubWidget(MacroScreenRenderer.java:704) >>> org.ofbiz.widget.screen.ModelScreenWidget$Screenlet.renderWidgetString(ModelScreenWidget.java:408) >>> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >>> org.ofbiz.widget.screen.ModelScreenWidget$DecoratorSection.renderWidgetString(ModelScreenWidget.java:704) >>> org.ofbiz.widget.screen.ModelScreenWidget$SectionsRenderer.render(ModelScreenWidget.java:167) >>> org.ofbiz.widget.screen.ModelScreenWidget$DecoratorSectionInclude.renderWidgetString(ModelScreenWidget.java:736) >>> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >>> org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) >>> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >>> org.ofbiz.widget.screen.ModelScreenWidget$DecoratorSection.renderWidgetString(ModelScreenWidget.java:704) >>> org.ofbiz.widget.screen.ModelScreenWidget$SectionsRenderer.render(ModelScreenWidget.java:167) >>> org.ofbiz.widget.screen.ModelScreenWidget$DecoratorSectionInclude.renderWidgetString(ModelScreenWidget.java:736) >>> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >>> org.ofbiz.widget.screen.ModelScreenWidget$Container.renderWidgetString(ModelScreenWidget.java:296) >>> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >>> org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) >>> org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) >>> org.ofbiz.widget.screen.ModelScreenWidget$IncludeScreen.renderWidgetString(ModelScreenWidget.java:576) >>> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >>> org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) >>> org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) >>> org.ofbiz.widget.screen.ModelScreenWidget$DecoratorScreen.renderWidgetString(ModelScreenWidget.java:672) >>> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >>> org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) >>> org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) >>> org.ofbiz.widget.screen.ModelScreenWidget$DecoratorScreen.renderWidgetString(ModelScreenWidget.java:672) >>> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >>> org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) >>> org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) >>> org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:135) >>> org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:97) >>> org.ofbiz.widget.screen.MacroScreenViewHandler.render(MacroScreenViewHandler.java:104) >>> org.ofbiz.webapp.control.RequestHandler.renderView(RequestHandler.java:835) >>> org.ofbiz.webapp.control.RequestHandler.doRequest(RequestHandler.java:554) >>> org.ofbiz.webapp.control.ControlServlet.doGet(ControlServlet.java:223) >>> javax.servlet.http.HttpServlet.service(HttpServlet.java:690) >>> javax.servlet.http.HttpServlet.service(HttpServlet.java:803) >>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) >>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >>> org.ofbiz.webapp.control.ContextFilter.doFilter(ContextFilter.java:266) >>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) >>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) >>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) >>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) >>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) >>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) >>> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:568) >>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) >>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) >>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) >>> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) >>> java.lang.Thread.run(Thread.java:619) >>> -------------------------------------------------------------------------------- >>> >>> Jacques >>> >>> From: "Jacques Le Roux" <[hidden email]> >>>> I did not reproduce with the lists used in the trunk OOTB (I tried Party Roles and Invoice Items) >>>> But I can reproduce at r911227 >>>> >>>> I create a states list using (for instance) >>>> <set field="states" value="${groovy: postalAddress?.countryGeoId ? org.ofbiz.common.CommonWorkers.getAssociatedStateList(delegator, >>>> postalAddress.countryGeoId) : org.ofbiz.common.CommonWorkers.getAssociatedStateList(delegator, null)}" type="List"/> >>>> >>>> and I use it in (slightly changed for custom labels) >>>> >>>> <field use-when="states!=null" name="stateProvinceGeoId" title="${uiLabelMap.StateWithSpacesPrefix}" >>>> tooltip="${uiLabelMap.Required}" widget-style="required"> >>>> <drop-down allow-empty="false"> >>>> <list-options list-name="states" key-name="geoId" description="${geoName}"/> >>>> </drop-down> >>>> </field> >>>> >>>> I get >>>> >>>> 2010-02-18 00:58:04,734 (http-0.0.0.0-8443-4) [ ModelScreen.java:399:ERROR] Error rendering screen >>>> [component://common/widget/CommonScreens.xml#GlobalDecorator]: java.lang.ClassCastException: Not a map >>>> . Rolling back transaction. >>>> 2010-02-18 00:58:04,734 (http-0.0.0.0-8443-4) [ TransactionUtil.java:372:WARN ] >>>> ---- exception report ---------------------------------------------------------- >>>> [TransactionUtil.setRollbackOnly] Calling transaction setRollbackOnly; this stack trace shows where this is happening: >>>> Exception: java.lang.Exception >>>> Message: Error rendering screen [component://common/widget/CommonScreens.xml#GlobalDecorator]: java.lang.ClassCastException: Not a >>>> map >>>> ---- stack trace --------------------------------------------------------------- >>>> java.lang.Exception: Error rendering screen [component://common/widget/CommonScreens.xml#GlobalDecorator]: >>>> java.lang.ClassCastException: Not a map >>>> org.ofbiz.entity.transaction.TransactionUtil.setRollbackOnly(TransactionUtil.java:372) >>>> org.ofbiz.entity.transaction.TransactionUtil.rollback(TransactionUtil.java:319) >>>> org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:402) >>>> org.ofbiz.widget.screen.ModelScreenWidget$IncludeScreen.renderWidgetString(ModelScreenWidget.java:576) >>>> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >>>> org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) >>>> org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) >>>> org.ofbiz.widget.screen.ModelScreenWidget$DecoratorScreen.renderWidgetString(ModelScreenWidget.java:672) >>>> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >>>> org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) >>>> org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) >>>> org.ofbiz.widget.screen.ModelScreenWidget$DecoratorScreen.renderWidgetString(ModelScreenWidget.java:672) >>>> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >>>> org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) >>>> org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) >>>> org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:135) >>>> org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:97) >>>> org.ofbiz.widget.screen.MacroScreenViewHandler.render(MacroScreenViewHandler.java:104) >>>> org.ofbiz.webapp.control.RequestHandler.renderView(RequestHandler.java:835) >>>> org.ofbiz.webapp.control.RequestHandler.doRequest(RequestHandler.java:554) >>>> org.ofbiz.webapp.control.ControlServlet.doGet(ControlServlet.java:223) >>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:690) >>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:803) >>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) >>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >>>> org.ofbiz.webapp.control.ContextFilter.doFilter(ContextFilter.java:266) >>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) >>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) >>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) >>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) >>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) >>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) >>>> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:568) >>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) >>>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) >>>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) >>>> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) >>>> java.lang.Thread.run(Thread.java:619) >>>> >>>> HTH (I can't do more right now) >>>> >>>> Jacques >>>> >>>> From: "Jacques Le Roux" <[hidden email]> >>>>> I'm workin on it :/ >>>>> >>>>> Just a little annoying as it's past midnight here and my wife will be waiting me tomorrow morning for our 4 vacation days she is >>>>> waiting for so long... Life... >>>>> >>>>> Jacques >>>>> >>>>> From: "Adam Heath" <[hidden email]> >>>>>> Jacques Le Roux wrote: >>>>>>> Hi, >>>>>>> >>>>>>> I have a problem with the recent converter changes I guess. In a custom >>>>>>> application where I use a <list-options I get an error >>>>>>> saying it's not a Map. >>>>>>> >>>>>>> This is woirking if I revert to r909312. I will try to reproduce on a >>>>>>> local update instance, I'm quite sure it's reproductible in the trunk >>>>>>> >>>>>>> Unfortunately I can't help much on this right now as I will be in >>>>>>> vacation for 4 days begining tonigh and it's already rather late here. >>>>>> >>>>>> It would be nice to have more info on this, like at the very least >>>>>> what actual version you were running, not just one that happened to >>>>>> work for you. >>>>>> >>>>>> For reference, there was a point where I changed how the converters >>>>>> worked, to be different than what Adrian initially designed. Last >>>>>> week, I ended up undoing most of those modifications, and implemented >>>>>> my features in a different way, that shouldn't affect anyone else. >>>>>> >>>>> >>>>> >>> >>> > > |
|
Administrator
|
Hi David,
Nothing better than a good night for the soul (and the body ;o). I was a little upset yesterday night, and I briefly explained why. This said I understand that the current enhancements in the Converter or the Freamework in general are great. I see of much care is taken to avoid this kind of issues by testing every details, and explaining how to do the same. That's all great and we know all that IT is not Math and that despite all our efforts this will always happen one day or another. By chance, in our case no lifes are in danger. I think about cars, they put so much electronics in them. It's certainly good for the business, not sure for drivers and theirs passengers. I was listening an expert yesterday at TV. There are some cases which are ok, even if the electronic is screwed anyway at least if it works it may save your life. There are others cases wich are really questionable. 2 small examples: in the last second on an opened road without anybody but you and a bend, if you are losing the control of your car (ice, etc.) some embedded systems may save your life. But what about this case : on an higway someone for any reason suddenly change of lane, instinctively you try to escape this "fool" (he/r may have h/her own reason) by turning the steering-wheel abruptly, but an embedded system thinks that you are losing the control and force you to keep your lane: big crash in the higway, many deaths. Of course I don't speak about all this issues you get when you car begin to age... Don't try to look for analogies here, I simply coul'd not resist to tell this story I heard. I'm sure there are already good cartoons that explain that better than me :o) I have createe https://issues.apache.org/jira/browse/OFBIZ-3486 to make things clearer. I will be back in 4 days, then maybe a good surprise. Have fun Jacques From: "David E Jones" <[hidden email]> > No, you may be right. I haven't tested it, but your list should contain GenericValue objects that implement the Map interface and > can be treated as Maps, and the list-options tag should accept those fine. Somewhere, either in the query/find operation or in the > list-options iterating something is breaking this, and while I don't know if it is the conversion stuff or not it could be. > > The best bet is to make it easy for others to reproduce it, perhaps by creating an issue that has a patch and instructions for > applying and running it. It's great that you've nailed it down to where reverting to a certain revision makes it work, that should > be useful for tracking down the cause of this. > > -David > > > On Feb 17, 2010, at 5:51 PM, Jacques Le Roux wrote: > >> Yes, actually it's a List of GenericValues returned by CommonWorkers.getAssociatedStateList() >> >> The problem is that this was working at r909312. I call this a regression, maybe it was wrong in the middle before, but it >> worked. >> >> Jacques >> >> From: "David E Jones" <[hidden email]> >>> >>> Jacques, >>> >>> It looks like the list you are trying to use in the drop-down contains something other than a Map. >>> >>> -David >>> >>> >>> On Feb 17, 2010, at 5:03 PM, Jacques Le Roux wrote: >>> >>>> Missed the more important part, here it is >>>> >>>> ---- cause --------------------------------------------------------------------- >>>> Exception: java.lang.ClassCastException >>>> Message: Not a map >>>> ---- stack trace --------------------------------------------------------------- >>>> java.lang.ClassCastException: Not a map >>>> org.ofbiz.base.util.UtilGenerics.checkMap(UtilGenerics.java:77) >>>> org.ofbiz.widget.form.ModelFormField$ListOptions.addOptionValues(ModelFormField.java:1648) >>>> org.ofbiz.widget.form.ModelFormField$FieldInfoWithOptions.getAllOptionValues(ModelFormField.java:1529) >>>> org.ofbiz.widget.form.MacroFormRenderer.renderDropDownField(MacroFormRenderer.java:666) >>>> org.ofbiz.widget.form.ModelFormField$DropDownField.renderFieldString(ModelFormField.java:3043) >>>> org.ofbiz.widget.form.ModelFormField.renderFieldString(ModelFormField.java:595) >>>> org.ofbiz.widget.form.ModelForm.renderSingleFormString(ModelForm.java:1054) >>>> org.ofbiz.widget.form.ModelForm.renderFormString(ModelForm.java:837) >>>> org.ofbiz.widget.screen.ModelScreenWidget$Form.renderWidgetString(ModelScreenWidget.java:841) >>>> org.ofbiz.widget.screen.MacroScreenRenderer.renderScreenletSubWidget(MacroScreenRenderer.java:704) >>>> org.ofbiz.widget.screen.ModelScreenWidget$Screenlet.renderWidgetString(ModelScreenWidget.java:408) >>>> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >>>> org.ofbiz.widget.screen.ModelScreenWidget$DecoratorSection.renderWidgetString(ModelScreenWidget.java:704) >>>> org.ofbiz.widget.screen.ModelScreenWidget$SectionsRenderer.render(ModelScreenWidget.java:167) >>>> org.ofbiz.widget.screen.ModelScreenWidget$DecoratorSectionInclude.renderWidgetString(ModelScreenWidget.java:736) >>>> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >>>> org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) >>>> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >>>> org.ofbiz.widget.screen.ModelScreenWidget$DecoratorSection.renderWidgetString(ModelScreenWidget.java:704) >>>> org.ofbiz.widget.screen.ModelScreenWidget$SectionsRenderer.render(ModelScreenWidget.java:167) >>>> org.ofbiz.widget.screen.ModelScreenWidget$DecoratorSectionInclude.renderWidgetString(ModelScreenWidget.java:736) >>>> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >>>> org.ofbiz.widget.screen.ModelScreenWidget$Container.renderWidgetString(ModelScreenWidget.java:296) >>>> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >>>> org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) >>>> org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) >>>> org.ofbiz.widget.screen.ModelScreenWidget$IncludeScreen.renderWidgetString(ModelScreenWidget.java:576) >>>> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >>>> org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) >>>> org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) >>>> org.ofbiz.widget.screen.ModelScreenWidget$DecoratorScreen.renderWidgetString(ModelScreenWidget.java:672) >>>> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >>>> org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) >>>> org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) >>>> org.ofbiz.widget.screen.ModelScreenWidget$DecoratorScreen.renderWidgetString(ModelScreenWidget.java:672) >>>> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >>>> org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) >>>> org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) >>>> org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:135) >>>> org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:97) >>>> org.ofbiz.widget.screen.MacroScreenViewHandler.render(MacroScreenViewHandler.java:104) >>>> org.ofbiz.webapp.control.RequestHandler.renderView(RequestHandler.java:835) >>>> org.ofbiz.webapp.control.RequestHandler.doRequest(RequestHandler.java:554) >>>> org.ofbiz.webapp.control.ControlServlet.doGet(ControlServlet.java:223) >>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:690) >>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:803) >>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) >>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >>>> org.ofbiz.webapp.control.ContextFilter.doFilter(ContextFilter.java:266) >>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) >>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) >>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) >>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) >>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) >>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) >>>> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:568) >>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) >>>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) >>>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) >>>> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) >>>> java.lang.Thread.run(Thread.java:619) >>>> -------------------------------------------------------------------------------- >>>> >>>> Jacques >>>> >>>> From: "Jacques Le Roux" <[hidden email]> >>>>> I did not reproduce with the lists used in the trunk OOTB (I tried Party Roles and Invoice Items) >>>>> But I can reproduce at r911227 >>>>> >>>>> I create a states list using (for instance) >>>>> <set field="states" value="${groovy: postalAddress?.countryGeoId ? >>>>> org.ofbiz.common.CommonWorkers.getAssociatedStateList(delegator, >>>>> postalAddress.countryGeoId) : org.ofbiz.common.CommonWorkers.getAssociatedStateList(delegator, null)}" type="List"/> >>>>> >>>>> and I use it in (slightly changed for custom labels) >>>>> >>>>> <field use-when="states!=null" name="stateProvinceGeoId" title="${uiLabelMap.StateWithSpacesPrefix}" >>>>> tooltip="${uiLabelMap.Required}" widget-style="required"> >>>>> <drop-down allow-empty="false"> >>>>> <list-options list-name="states" key-name="geoId" description="${geoName}"/> >>>>> </drop-down> >>>>> </field> >>>>> >>>>> I get >>>>> >>>>> 2010-02-18 00:58:04,734 (http-0.0.0.0-8443-4) [ ModelScreen.java:399:ERROR] Error rendering screen >>>>> [component://common/widget/CommonScreens.xml#GlobalDecorator]: java.lang.ClassCastException: Not a map >>>>> . Rolling back transaction. >>>>> 2010-02-18 00:58:04,734 (http-0.0.0.0-8443-4) [ TransactionUtil.java:372:WARN ] >>>>> ---- exception report ---------------------------------------------------------- >>>>> [TransactionUtil.setRollbackOnly] Calling transaction setRollbackOnly; this stack trace shows where this is happening: >>>>> Exception: java.lang.Exception >>>>> Message: Error rendering screen [component://common/widget/CommonScreens.xml#GlobalDecorator]: java.lang.ClassCastException: >>>>> Not a >>>>> map >>>>> ---- stack trace --------------------------------------------------------------- >>>>> java.lang.Exception: Error rendering screen [component://common/widget/CommonScreens.xml#GlobalDecorator]: >>>>> java.lang.ClassCastException: Not a map >>>>> org.ofbiz.entity.transaction.TransactionUtil.setRollbackOnly(TransactionUtil.java:372) >>>>> org.ofbiz.entity.transaction.TransactionUtil.rollback(TransactionUtil.java:319) >>>>> org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:402) >>>>> org.ofbiz.widget.screen.ModelScreenWidget$IncludeScreen.renderWidgetString(ModelScreenWidget.java:576) >>>>> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >>>>> org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) >>>>> org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) >>>>> org.ofbiz.widget.screen.ModelScreenWidget$DecoratorScreen.renderWidgetString(ModelScreenWidget.java:672) >>>>> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >>>>> org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) >>>>> org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) >>>>> org.ofbiz.widget.screen.ModelScreenWidget$DecoratorScreen.renderWidgetString(ModelScreenWidget.java:672) >>>>> org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:137) >>>>> org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:228) >>>>> org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:394) >>>>> org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:135) >>>>> org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:97) >>>>> org.ofbiz.widget.screen.MacroScreenViewHandler.render(MacroScreenViewHandler.java:104) >>>>> org.ofbiz.webapp.control.RequestHandler.renderView(RequestHandler.java:835) >>>>> org.ofbiz.webapp.control.RequestHandler.doRequest(RequestHandler.java:554) >>>>> org.ofbiz.webapp.control.ControlServlet.doGet(ControlServlet.java:223) >>>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:690) >>>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:803) >>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) >>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >>>>> org.ofbiz.webapp.control.ContextFilter.doFilter(ContextFilter.java:266) >>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) >>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >>>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) >>>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) >>>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) >>>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) >>>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) >>>>> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:568) >>>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) >>>>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) >>>>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) >>>>> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) >>>>> java.lang.Thread.run(Thread.java:619) >>>>> >>>>> HTH (I can't do more right now) >>>>> >>>>> Jacques >>>>> >>>>> From: "Jacques Le Roux" <[hidden email]> >>>>>> I'm workin on it :/ >>>>>> >>>>>> Just a little annoying as it's past midnight here and my wife will be waiting me tomorrow morning for our 4 vacation days she >>>>>> is >>>>>> waiting for so long... Life... >>>>>> >>>>>> Jacques >>>>>> >>>>>> From: "Adam Heath" <[hidden email]> >>>>>>> Jacques Le Roux wrote: >>>>>>>> Hi, >>>>>>>> >>>>>>>> I have a problem with the recent converter changes I guess. In a custom >>>>>>>> application where I use a <list-options I get an error >>>>>>>> saying it's not a Map. >>>>>>>> >>>>>>>> This is woirking if I revert to r909312. I will try to reproduce on a >>>>>>>> local update instance, I'm quite sure it's reproductible in the trunk >>>>>>>> >>>>>>>> Unfortunately I can't help much on this right now as I will be in >>>>>>>> vacation for 4 days begining tonigh and it's already rather late here. >>>>>>> >>>>>>> It would be nice to have more info on this, like at the very least >>>>>>> what actual version you were running, not just one that happened to >>>>>>> work for you. >>>>>>> >>>>>>> For reference, there was a point where I changed how the converters >>>>>>> worked, to be different than what Adrian initially designed. Last >>>>>>> week, I ended up undoing most of those modifications, and implemented >>>>>>> my features in a different way, that shouldn't affect anyone else. >>>>>>> >>>>>> >>>>>> >>>> >>>> >> >> > |
| Free forum by Nabble | Edit this page |
