I am getting an undesired result with the following:
<screen name="main-content"> <section> <widgets> <label>${parameters.dataresourceId}</label> <content dataresource-id="${parameters.dataresourceId}"/> </widgets> </section> </screen> On each request with a different dataresourceId value, the <label> updates, but the <content> does not until the widget.screen.locationResource.expireTime cache setting elapses. This leads me to believe that the screen is getting cached after the FlexibleStringExpander does its magic on the content element. I can't imagine this being the expected result. Can anyone help me zero in on the fix while I dig? Thanks. |
What revision are you using?
-Adrian Chris Howe wrote: > I am getting an undesired result with the following: > > <screen name="main-content"> > <section> > <widgets> > <label>${parameters.dataresourceId}</label> > <content dataresource-id="${parameters.dataresourceId}"/> > </widgets> > </section> > </screen> > > On each request with a different dataresourceId value, the <label> updates, but the <content> does not until the widget.screen.locationResource.expireTime cache setting elapses. This leads me to believe that the screen is getting cached after the FlexibleStringExpander does its magic on the content element. I can't imagine this being the expected result. Can anyone help me zero in on the fix while I dig? Thanks. > |
In reply to this post by cjhowe
It resets with the screen widget cache expiration though. If I set widget.screen.locationResource.expireTime=1000 there is no problem, but if I set widget.screen.locationResource.expireTime=10000 then there is a problem. This leads me to believe the following is what is being read by the cache:
First pass (nothing in cache) parameters.dataresourceId=12345 <screen name="main-content"> <section> <widgets> <label>${parameters.dataresourceId}</label> <content dataresource-id="${parameters.dataresourceId}"/> </widgets> </section> </screen> Second pass parameters.dataresourceId=54321 <screen name="main-content"> <section> <widgets> <label>${parameters.dataresourceId}</label> <content dataresource-id="12345"/> </widgets> </section> </screen> So, my thoughts are that it is caching the screen definition after it expands the <content> tag, which would all still be in the widget component and not the content component. ----- Original Message ---- From: Adrian Crum <[hidden email]> To: [hidden email] Sent: Wednesday, September 10, 2008 12:45:10 PM Subject: Re: Screen Widget Cache, Dataresource, FlexString Error It's not an issue with FlexibleStringExpander - since the same instance is being used for both lines (and the instance cache never expires). I would recommend looking at the content widget - maybe something weird is going on there. -Adrian Chris Howe wrote: > from today... 693619 > > > > ----- Original Message ---- > From: Adrian Crum <[hidden email]> > To: [hidden email] > Sent: Wednesday, September 10, 2008 11:41:06 AM > Subject: Re: Screen Widget Cache, Dataresource, FlexString Error > > What revision are you using? > > -Adrian > > Chris Howe wrote: >> I am getting an undesired result with the following: >> >> <screen name="main-content"> >> <section> >> <widgets> >> <label>${parameters.dataresourceId}</label> >> <content dataresource-id="${parameters.dataresourceId}"/> >> </widgets> >> </section> >> </screen> >> >> On each request with a different dataresourceId value, the <label> updates, but the <content> does not until the widget.screen.locationResource.expireTime cache setting elapses. This leads me to believe that the screen is getting cached after the FlexibleStringExpander does its magic on the content element. I can't imagine this being the expected result. Can anyone help me zero in on the fix while I dig? Thanks. >> > |
Just keep in mind your initial description of the problem - the label
widget works properly, and the content widget does not. -Adrian Chris Howe wrote: > It resets with the screen widget cache expiration though. If I set widget.screen.locationResource.expireTime=1000 there is no problem, but if I set widget.screen.locationResource.expireTime=10000 then there is a problem. This leads me to believe the following is what is being read by the cache: > > First pass (nothing in cache) parameters.dataresourceId=12345 > <screen name="main-content"> > <section> > <widgets> > <label>${parameters.dataresourceId}</label> > <content dataresource-id="${parameters.dataresourceId}"/> > </widgets> > </section> > </screen> > > > Second pass parameters.dataresourceId=54321 > > <screen name="main-content"> > <section> > <widgets> > <label>${parameters.dataresourceId}</label> > <content dataresource-id="12345"/> > </widgets> > </section> > </screen> > > So, my thoughts are that it is caching the screen definition after it expands the <content> tag, which would all still be in the widget component and not the content component. > > > > > ----- Original Message ---- > From: Adrian Crum <[hidden email]> > To: [hidden email] > Sent: Wednesday, September 10, 2008 12:45:10 PM > Subject: Re: Screen Widget Cache, Dataresource, FlexString Error > > It's not an issue with FlexibleStringExpander - since the same instance > is being used for both lines (and the instance cache never expires). > > I would recommend looking at the content widget - maybe something weird > is going on there. > > -Adrian > > Chris Howe wrote: >> from today... 693619 >> >> >> >> ----- Original Message ---- >> From: Adrian Crum <[hidden email]> >> To: [hidden email] >> Sent: Wednesday, September 10, 2008 11:41:06 AM >> Subject: Re: Screen Widget Cache, Dataresource, FlexString Error >> >> What revision are you using? >> >> -Adrian >> >> Chris Howe wrote: >>> I am getting an undesired result with the following: >>> >>> <screen name="main-content"> >>> <section> >>> <widgets> >>> <label>${parameters.dataresourceId}</label> >>> <content dataresource-id="${parameters.dataresourceId}"/> >>> </widgets> >>> </section> >>> </screen> >>> >>> On each request with a different dataresourceId value, the <label> updates, but the <content> does not until the widget.screen.locationResource.expireTime cache setting elapses. This leads me to believe that the screen is getting cached after the FlexibleStringExpander does its magic on the content element. I can't imagine this being the expected result. Can anyone help me zero in on the fix while I dig? Thanks. >>> > |
Chris,
I found your problem. I'll leave it up to you to fix it: ModelScreenWidget.java, line 1080. -Adrian Adrian Crum wrote: > Just keep in mind your initial description of the problem - the label > widget works properly, and the content widget does not. > > -Adrian > > Chris Howe wrote: >> It resets with the screen widget cache expiration though. If I set >> widget.screen.locationResource.expireTime=1000 there is no problem, >> but if I set widget.screen.locationResource.expireTime=10000 then >> there is a problem. This leads me to believe the following is what is >> being read by the cache: >> >> First pass (nothing in cache) parameters.dataresourceId=12345 >> <screen name="main-content"> >> <section> >> <widgets> >> <label>${parameters.dataresourceId}</label> >> <content dataresource-id="${parameters.dataresourceId}"/> >> </widgets> >> </section> >> </screen> >> >> >> Second pass parameters.dataresourceId=54321 >> >> <screen name="main-content"> >> <section> >> <widgets> >> <label>${parameters.dataresourceId}</label> >> <content dataresource-id="12345"/> >> </widgets> >> </section> >> </screen> >> >> So, my thoughts are that it is caching the screen definition after it >> expands the <content> tag, which would all still be in the widget >> component and not the content component. >> >> >> >> >> ----- Original Message ---- >> From: Adrian Crum <[hidden email]> >> To: [hidden email] >> Sent: Wednesday, September 10, 2008 12:45:10 PM >> Subject: Re: Screen Widget Cache, Dataresource, FlexString Error >> >> It's not an issue with FlexibleStringExpander - since the same >> instance is being used for both lines (and the instance cache never >> expires). >> >> I would recommend looking at the content widget - maybe something >> weird is going on there. >> >> -Adrian >> >> Chris Howe wrote: >>> from today... 693619 >>> >>> >>> >>> ----- Original Message ---- >>> From: Adrian Crum <[hidden email]> >>> To: [hidden email] >>> Sent: Wednesday, September 10, 2008 11:41:06 AM >>> Subject: Re: Screen Widget Cache, Dataresource, FlexString Error >>> >>> What revision are you using? >>> >>> -Adrian >>> >>> Chris Howe wrote: >>>> I am getting an undesired result with the following: >>>> >>>> <screen name="main-content"> >>>> <section> >>>> <widgets> >>>> <label>${parameters.dataresourceId}</label> >>>> <content dataresource-id="${parameters.dataresourceId}"/> >>>> </widgets> >>>> </section> >>>> </screen> >>>> >>>> On each request with a different dataresourceId value, the <label> >>>> updates, but the <content> does not until the >>>> widget.screen.locationResource.expireTime cache setting elapses. >>>> This leads me to believe that the screen is getting cached after the >>>> FlexibleStringExpander does its magic on the content element. I >>>> can't imagine this being the expected result. Can anyone help me >>>> zero in on the fix while I dig? Thanks. >>>> >> > |
Adrian:
thanks for quick evaluations of problems people come up with. It is very much appreciated from the peanut gallery. :D Adrian Crum sent the following on 9/10/2008 2:04 PM: > Chris, > > I found your problem. I'll leave it up to you to fix it: > > ModelScreenWidget.java, line 1080. > > -Adrian > > Adrian Crum wrote: >> Just keep in mind your initial description of the problem - the label >> widget works properly, and the content widget does not. >> >> -Adrian >> >> Chris Howe wrote: >>> It resets with the screen widget cache expiration though. If I set >>> widget.screen.locationResource.expireTime=1000 there is no problem, >>> but if I set widget.screen.locationResource.expireTime=10000 then >>> there is a problem. This leads me to believe the following is what >>> is being read by the cache: >>> >>> First pass (nothing in cache) parameters.dataresourceId=12345 >>> <screen name="main-content"> >>> <section> >>> <widgets> >>> <label>${parameters.dataresourceId}</label> >>> <content dataresource-id="${parameters.dataresourceId}"/> >>> </widgets> >>> </section> >>> </screen> >>> >>> >>> Second pass parameters.dataresourceId=54321 >>> >>> <screen name="main-content"> >>> <section> >>> <widgets> >>> <label>${parameters.dataresourceId}</label> >>> <content dataresource-id="12345"/> >>> </widgets> >>> </section> >>> </screen> >>> >>> So, my thoughts are that it is caching the screen definition after it >>> expands the <content> tag, which would all still be in the widget >>> component and not the content component. >>> >>> >>> >>> >>> ----- Original Message ---- >>> From: Adrian Crum <[hidden email]> >>> To: [hidden email] >>> Sent: Wednesday, September 10, 2008 12:45:10 PM >>> Subject: Re: Screen Widget Cache, Dataresource, FlexString Error >>> >>> It's not an issue with FlexibleStringExpander - since the same >>> instance is being used for both lines (and the instance cache never >>> expires). >>> >>> I would recommend looking at the content widget - maybe something >>> weird is going on there. >>> >>> -Adrian >>> >>> Chris Howe wrote: >>>> from today... 693619 >>>> >>>> >>>> >>>> ----- Original Message ---- >>>> From: Adrian Crum <[hidden email]> >>>> To: [hidden email] >>>> Sent: Wednesday, September 10, 2008 11:41:06 AM >>>> Subject: Re: Screen Widget Cache, Dataresource, FlexString Error >>>> >>>> What revision are you using? >>>> >>>> -Adrian >>>> >>>> Chris Howe wrote: >>>>> I am getting an undesired result with the following: >>>>> >>>>> <screen name="main-content"> >>>>> <section> >>>>> <widgets> >>>>> <label>${parameters.dataresourceId}</label> >>>>> <content dataresource-id="${parameters.dataresourceId}"/> >>>>> </widgets> >>>>> </section> >>>>> </screen> >>>>> >>>>> On each request with a different dataresourceId value, the <label> >>>>> updates, but the <content> does not until the >>>>> widget.screen.locationResource.expireTime cache setting elapses. >>>>> This leads me to believe that the screen is getting cached after >>>>> the FlexibleStringExpander does its magic on the content element. >>>>> I can't imagine this being the expected result. Can anyone help me >>>>> zero in on the fix while I dig? Thanks. >>>>> >>> >> > > > |
You're welcome.
It's purely coincidental that the last few problems were well described, and they affected areas I'm very familiar with - so it was easy to track them down. -Adrian BJ Freeman wrote: > Adrian: > thanks for quick evaluations of problems people come up with. > It is very much appreciated from the peanut gallery. > :D > > Adrian Crum sent the following on 9/10/2008 2:04 PM: >> Chris, >> >> I found your problem. I'll leave it up to you to fix it: >> >> ModelScreenWidget.java, line 1080. >> >> -Adrian >> >> Adrian Crum wrote: >>> Just keep in mind your initial description of the problem - the label >>> widget works properly, and the content widget does not. >>> >>> -Adrian >>> >>> Chris Howe wrote: >>>> It resets with the screen widget cache expiration though. If I set >>>> widget.screen.locationResource.expireTime=1000 there is no problem, >>>> but if I set widget.screen.locationResource.expireTime=10000 then >>>> there is a problem. This leads me to believe the following is what >>>> is being read by the cache: >>>> >>>> First pass (nothing in cache) parameters.dataresourceId=12345 >>>> <screen name="main-content"> >>>> <section> >>>> <widgets> >>>> <label>${parameters.dataresourceId}</label> >>>> <content dataresource-id="${parameters.dataresourceId}"/> >>>> </widgets> >>>> </section> >>>> </screen> >>>> >>>> >>>> Second pass parameters.dataresourceId=54321 >>>> >>>> <screen name="main-content"> >>>> <section> >>>> <widgets> >>>> <label>${parameters.dataresourceId}</label> >>>> <content dataresource-id="12345"/> >>>> </widgets> >>>> </section> >>>> </screen> >>>> >>>> So, my thoughts are that it is caching the screen definition after it >>>> expands the <content> tag, which would all still be in the widget >>>> component and not the content component. >>>> >>>> >>>> >>>> >>>> ----- Original Message ---- >>>> From: Adrian Crum <[hidden email]> >>>> To: [hidden email] >>>> Sent: Wednesday, September 10, 2008 12:45:10 PM >>>> Subject: Re: Screen Widget Cache, Dataresource, FlexString Error >>>> >>>> It's not an issue with FlexibleStringExpander - since the same >>>> instance is being used for both lines (and the instance cache never >>>> expires). >>>> >>>> I would recommend looking at the content widget - maybe something >>>> weird is going on there. >>>> >>>> -Adrian >>>> >>>> Chris Howe wrote: >>>>> from today... 693619 >>>>> >>>>> >>>>> >>>>> ----- Original Message ---- >>>>> From: Adrian Crum <[hidden email]> >>>>> To: [hidden email] >>>>> Sent: Wednesday, September 10, 2008 11:41:06 AM >>>>> Subject: Re: Screen Widget Cache, Dataresource, FlexString Error >>>>> >>>>> What revision are you using? >>>>> >>>>> -Adrian >>>>> >>>>> Chris Howe wrote: >>>>>> I am getting an undesired result with the following: >>>>>> >>>>>> <screen name="main-content"> >>>>>> <section> >>>>>> <widgets> >>>>>> <label>${parameters.dataresourceId}</label> >>>>>> <content dataresource-id="${parameters.dataresourceId}"/> >>>>>> </widgets> >>>>>> </section> >>>>>> </screen> >>>>>> >>>>>> On each request with a different dataresourceId value, the <label> >>>>>> updates, but the <content> does not until the >>>>>> widget.screen.locationResource.expireTime cache setting elapses. >>>>>> This leads me to believe that the screen is getting cached after >>>>>> the FlexibleStringExpander does its magic on the content element. >>>>>> I can't imagine this being the expected result. Can anyone help me >>>>>> zero in on the fix while I dig? Thanks. >>>>>> >> >> > > |
In reply to this post by cjhowe
So, commenting it out works in my scenario. What is the scenario that requires it to be set? The comment in the logs that introduced it talks about needing two <content> tags, but I can do two with it commented out.
----- Original Message ---- From: Adrian Crum <[hidden email]> To: [hidden email] Sent: Wednesday, September 10, 2008 4:04:35 PM Subject: Re: Screen Widget Cache, Dataresource, FlexString Error Chris, I found your problem. I'll leave it up to you to fix it: ModelScreenWidget.java, line 1080. -Adrian Adrian Crum wrote: > Just keep in mind your initial description of the problem - the label > widget works properly, and the content widget does not. > > -Adrian > > Chris Howe wrote: >> It resets with the screen widget cache expiration though. If I set >> widget.screen.locationResource.expireTime=1000 there is no problem, >> but if I set widget.screen.locationResource.expireTime=10000 then >> there is a problem. This leads me to believe the following is what is >> being read by the cache: >> >> First pass (nothing in cache) parameters.dataresourceId=12345 >> <screen name="main-content"> >> <section> >> <widgets> >> <label>${parameters.dataresourceId}</label> >> <content dataresource-id="${parameters.dataresourceId}"/> >> </widgets> >> </section> >> </screen> >> >> >> Second pass parameters.dataresourceId=54321 >> >> <screen name="main-content"> >> <section> >> <widgets> >> <label>${parameters.dataresourceId}</label> >> <content dataresource-id="12345"/> >> </widgets> >> </section> >> </screen> >> >> So, my thoughts are that it is caching the screen definition after it >> expands the <content> tag, which would all still be in the widget >> component and not the content component. >> >> >> >> >> ----- Original Message ---- >> From: Adrian Crum <[hidden email]> >> To: [hidden email] >> Sent: Wednesday, September 10, 2008 12:45:10 PM >> Subject: Re: Screen Widget Cache, Dataresource, FlexString Error >> >> It's not an issue with FlexibleStringExpander - since the same >> instance is being used for both lines (and the instance cache never >> expires). >> >> I would recommend looking at the content widget - maybe something >> weird is going on there. >> >> -Adrian >> >> Chris Howe wrote: >>> from today... 693619 >>> >>> >>> >>> ----- Original Message ---- >>> From: Adrian Crum <[hidden email]> >>> To: [hidden email] >>> Sent: Wednesday, September 10, 2008 11:41:06 AM >>> Subject: Re: Screen Widget Cache, Dataresource, FlexString Error >>> >>> What revision are you using? >>> >>> -Adrian >>> >>> Chris Howe wrote: >>>> I am getting an undesired result with the following: >>>> >>>> <screen name="main-content"> >>>> <section> >>>> <widgets> >>>> <label>${parameters.dataresourceId}</label> >>>> <content dataresource-id="${parameters.dataresourceId}"/> >>>> </widgets> >>>> </section> >>>> </screen> >>>> >>>> On each request with a different dataresourceId value, the <label> >>>> updates, but the <content> does not until the >>>> widget.screen.locationResource.expireTime cache setting elapses. >>>> This leads me to believe that the screen is getting cached after the >>>> FlexibleStringExpander does its magic on the content element. I >>>> can't imagine this being the expected result. Can anyone help me >>>> zero in on the fix while I dig? Thanks. >>>> >> > |
I have no idea. It had something to do with blogs in eCommerce.
The comments in the Java code also mention something about content IDs - like it was trying to accommodate nested content. We will have to see if Al Byers can offer any insight. -Adrian Chris Howe wrote: > So, commenting it out works in my scenario. What is the scenario that requires it to be set? The comment in the logs that introduced it talks about needing two <content> tags, but I can do two with it commented out. > > > > ----- Original Message ---- > From: Adrian Crum <[hidden email]> > To: [hidden email] > Sent: Wednesday, September 10, 2008 4:04:35 PM > Subject: Re: Screen Widget Cache, Dataresource, FlexString Error > > Chris, > > I found your problem. I'll leave it up to you to fix it: > > ModelScreenWidget.java, line 1080. > > -Adrian > > Adrian Crum wrote: >> Just keep in mind your initial description of the problem - the label >> widget works properly, and the content widget does not. >> >> -Adrian >> >> Chris Howe wrote: >>> It resets with the screen widget cache expiration though. If I set >>> widget.screen.locationResource.expireTime=1000 there is no problem, >>> but if I set widget.screen.locationResource.expireTime=10000 then >>> there is a problem. This leads me to believe the following is what is >>> being read by the cache: >>> >>> First pass (nothing in cache) parameters.dataresourceId=12345 >>> <screen name="main-content"> >>> <section> >>> <widgets> >>> <label>${parameters.dataresourceId}</label> >>> <content dataresource-id="${parameters.dataresourceId}"/> >>> </widgets> >>> </section> >>> </screen> >>> >>> >>> Second pass parameters.dataresourceId=54321 >>> >>> <screen name="main-content"> >>> <section> >>> <widgets> >>> <label>${parameters.dataresourceId}</label> >>> <content dataresource-id="12345"/> >>> </widgets> >>> </section> >>> </screen> >>> >>> So, my thoughts are that it is caching the screen definition after it >>> expands the <content> tag, which would all still be in the widget >>> component and not the content component. >>> >>> >>> >>> >>> ----- Original Message ---- >>> From: Adrian Crum <[hidden email]> >>> To: [hidden email] >>> Sent: Wednesday, September 10, 2008 12:45:10 PM >>> Subject: Re: Screen Widget Cache, Dataresource, FlexString Error >>> >>> It's not an issue with FlexibleStringExpander - since the same >>> instance is being used for both lines (and the instance cache never >>> expires). >>> >>> I would recommend looking at the content widget - maybe something >>> weird is going on there. >>> >>> -Adrian >>> >>> Chris Howe wrote: >>>> from today... 693619 >>>> >>>> >>>> >>>> ----- Original Message ---- >>>> From: Adrian Crum <[hidden email]> >>>> To: [hidden email] >>>> Sent: Wednesday, September 10, 2008 11:41:06 AM >>>> Subject: Re: Screen Widget Cache, Dataresource, FlexString Error >>>> >>>> What revision are you using? >>>> >>>> -Adrian >>>> >>>> Chris Howe wrote: >>>>> I am getting an undesired result with the following: >>>>> >>>>> <screen name="main-content"> >>>>> <section> >>>>> <widgets> >>>>> <label>${parameters.dataresourceId}</label> >>>>> <content dataresource-id="${parameters.dataresourceId}"/> >>>>> </widgets> >>>>> </section> >>>>> </screen> >>>>> >>>>> On each request with a different dataresourceId value, the <label> >>>>> updates, but the <content> does not until the >>>>> widget.screen.locationResource.expireTime cache setting elapses. >>>>> This leads me to believe that the screen is getting cached after the >>>>> FlexibleStringExpander does its magic on the content element. I >>>>> can't imagine this being the expected result. Can anyone help me >>>>> zero in on the fix while I dig? Thanks. >>>>> > |
Free forum by Nabble | Edit this page |