On Wed, Jan 21, 2009 at 2:51 PM, Steve Cohen <sco...@javactivity.org> wrote: > Thanks much, Tim, but in this case > > 1) tn is not null, but tn.USFormattedTn is null (perhaps because some > dependent object failed in the background). > > cannot be the case - the function merely applies formatting to the single > data element within the tn object (in this case the "1-"). Since the log > entry shows a value for tn, there is no possibility of null here. > > 2) There are multiple calls to $tn.USFormattedTn, and the happy path > cases work fine, but edge cases are misspelled: > > there is only one path in this particular template > > 3) Someone accidentally calls the .vm directly and not through the > controller (robots can do this in some cases, or bad links). > > impossible. There is only one path into the templates from my code. there is > no "back door" > > 4) The value of $tn goes null between the controller debug statement and > the forward to the .vm. > > I investigated this and found it "impossible" - no code does it anyway, > although if we are talking about machine glitches, of course, nothing is > impossible. > > So, are we talking about machine glitches, then?
i doubt it, those are rare. has this happened only once? this does sound like it'll be very difficult to find, especially without more info than a few log messages. Velocity version? How are you filling the context? Context class? Are you sure there isn't a race condition involved? that's always my first suspicion in such mysterious errors. Under the covers, most standard Velocity Context implementations use HashMaps. i doubt those are simply losing track of a key/value pair. > White, Tim wrote: > >>> I can see from my logs that the context passed to this template in >>> >> >> this >>> >>> instance had the tn variable and that it wasn't found by Velocity: >>> >> >> >>> >>> 2009-01-20 16:58:15,902 [robo/AIM:jrelay/2701] TRACE >>> velocity.VelociWrapper - {tn=203-999-9999, lang=English} >>> 2009-01-20 16:58:15,910 [robo/AIM:jrelay/2701] DEBUG Velocity - >>> ResourceManager : found /resources/en_US/number/ExitComplete.vm with loader >>> org.apache.velocity.tools.view.servlet.WebappLoader >>> 2009-01-20 16:58:15,911 [robo/AIM:jrelay/2701] DEBUG Velocity - Null >>> reference [template '/resources/en_US/number/ExitComplete.vm', line 6, >>> >> >> >>> >>> column 56] : $tn.USFormattedTn cannot be resolved. >>> >> >> >> >> When I've had problems like these in the past, here are some things that >> it's turned out to be (using your variable as an example): >> >> 1) tn is not null, but tn.USFormattedTn is null (perhaps because some >> dependent object failed in the background). >> >> 2) There are multiple calls to $tn.USFormattedTn, and the happy path >> cases work fine, but edge cases are misspelled: >> >> #if ($allisgood) >> Your TN is: $tn.USFormattedTn >> #else >> Your TN is: $tn.usformattedtn >> #end >> >> 3) Someone accidentally calls the .vm directly and not through the >> controller (robots can do this in some cases, or bad links). >> >> 4) The value of $tn goes null between the controller debug statement and >> the forward to the .vm. >> >> >> Just some ideas of the kinds of things that this has been for me in the >> past - I hope you can figure it out! >> >> Tim >> >> >> >> This communication is the property of Qwest and may contain confidential >> or >> privileged information. Unauthorized use of this communication is strictly >> prohibited and may be unlawful. If you have received this communication in >> error, please immediately notify the sender by reply e-mail and destroy all >> copies of the communication and any attachments. >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: user-unsubscr...@velocity.apache.org >> For additional commands, e-mail: user-h...@velocity.apache.org >> >> >> >> > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: user-unsubscr...@velocity.apache.org > For additional commands, e-mail: user-h...@velocity.apache.org > > --------------------------------------------------------------------- To unsubscribe, e-mail: user-unsubscr...@velocity.apache.org For additional commands, e-mail: user-h...@velocity.apache.org