954,585 Members — Technology Publication meets Social Media
Username:
Password:
Lost login information?
Have something to say? Contribute New Article Reply to this Article

Element is undefined in a Java object of type class [Ljava.lang.String; referenced as

I am trying to debug a form that is basically a popup where the user enters a date and then two more dates are generated based off of date and the user can then edit those dates. When the user tries to save the second set of dates the "Element is undefined in a Java object of type class [Ljava.lang.String; referenced as" error is generated I am thinking this could just be a simple syntax error if that is the case here is the code for the page that has the error:

<cfif isdefined("form.txtFFFirstDate")>
<!--- used clicked save--->
	<cfset SESSION.Order.FrequentFlyer.Use = "Y">
	<cfset SESSION.Order.FrequentFlyer.UsedAtLeastOnce = "Y">
	<cfset SESSION.Order.FrequentFlyer.TargetDate = ArrayNew(1)>
	
	<cfset SESSION.Order.FrequentFlyer.TargetDate[1] = #DateFormat(form.txtFFFirstDate,"MM/DD/YYYY")#>
	<cfloop index="i" from="2" to="#SESSION.Order.FrequentFlyer.Count#">
		<cfset SESSION.Order.FrequentFlyer.TargetDate[i] = #DateFormat(form.txtFFDateSet[i],"MM/DD/YYYY")#>
	</cfloop>
</cfif>


my other idea is that the values are never being passed to this page.

<cfloop index="i" from="2" to="#SESSION.Order.FrequentFlyer.Count#">
	<tr>
		<td>
			Date <cfoutput>#i#</cfoutput>:
			<input type="text" name="txtFFDateSetMonth[<cfoutput>#i#</cfoutput>]" class="txtboxdt" maxlength="2" 
				value="<cfoutput>#Mid(DateFormat(dtTargetDate[i],"MM/DD/YYYY"),1,2)#</cfoutput>"> /
			<input type="text" name="txtFFDateSetDay[<cfoutput>#i#</cfoutput>]" class="txtboxdt" maxlength="2"
				value="<cfoutput>#Mid(DateFormat(dtTargetDate[i],"MM/DD/YYYY"),4,2)#</cfoutput>"> /
			<input type="text" name="txtFFDateSetYear[<cfoutput>#i#</cfoutput>]" class="txtboxdt" maxlength="2"
				value="<cfoutput>#Mid(DateFormat(dtTargetDate[i],"MM/DD/YYYY"),9,2)#</cfoutput>">
			<input type="hidden" name="txtFFDateSet[<cfoutput>#i#</cfoutput>]">
		</td>
	</tr>			
	</cfloop>
	<input type="hidden" name="txtFFFirstDate" value="<cfoutput>#form.txtFFDateSet#</cfoutput>">


anyway any help at all would be great

bkendall
Junior Poster in Training
69 posts since Jul 2005
Reputation Points: 10
Solved Threads: 0
 

the referring page has a loop that generate the value for the page that is getting the error and I am thinking that the value is not being passed to that page.

</tr>
   <cfloop index="i" from="2" to="#SESSION.Order.FrequentFlyer.Count#">
   <tr>
      <td>
         Date <cfoutput>#i#</cfoutput>:
         <input type="text" name="txtFFDateSetMonth[<cfoutput>#i#</cfoutput>]" class="txtboxdt" maxlength="2"
            value="<cfoutput>#Mid(DateFormat(dtTargetDate[i],"MM/DD/YYYY"),1,2)#</cfoutput>"> /
         <input type="text" name="txtFFDateSetDay[<cfoutput>#i#</cfoutput>]" class="txtboxdt" maxlength="2"
            value="<cfoutput>#Mid(DateFormat(dtTargetDate[i],"MM/DD/YYYY"),4,2)#</cfoutput>"> /
         <input type="text" name="txtFFDateSetYear[<cfoutput>#i#</cfoutput>]" class="txtboxdt" maxlength="2"
            value="<cfoutput>#Mid(DateFormat(dtTargetDate[i],"MM/DD/YYYY"),9,2)#</cfoutput>">
         <input type="hidden" name="txtFFDateSet[<cfoutput>#i#</cfoutput>]">
      </td>
   </tr>         
   </cfloop>
   <input type="hidden" name="txtFFFirstDate" value="<cfoutput>#form.txtFFDateSet#</cfoutput>">


this hidden field

<input type="hidden" name="txtFFDateSet[<cfoutput>#i#</cfoutput>]">

contains the undefined value. does it need a value (name="" value="") on the referring page and if so what should it be?

Forgive me in advance if I am not being clear, I have looked at this issue all day with no revelations.

bkendall
Junior Poster in Training
69 posts since Jul 2005
Reputation Points: 10
Solved Threads: 0
 

well no one responded to this post so I don't have to thank anyone but I did get it figured out and in case someone has the same trouble... I needed an eval statement in my loop so my cfset needed something like this:

<cfset tmpDate = EVALUATE("FORM.txtFFDateSet#i#")>
bkendall
Junior Poster in Training
69 posts since Jul 2005
Reputation Points: 10
Solved Threads: 0
 

Well, I can now thank you for answering your own question.

I had the same problem and it occurred because I was passing variables from Argument as ARGUMENT.myclass.variable1 instead of using a getter method and turn it into ARGUMENT.myclass.getVariable1().

Once I made that change, it worked.

tsancio
Newbie Poster
1 post since Aug 2010
Reputation Points: 10
Solved Threads: 0
 

Sorry to wake the zombies (this thread is 5 years old...). But for newer CF versions use array notation, not evaluate()

arrgh
Posting Whiz
381 posts since Dec 2008
Reputation Points: 32
Solved Threads: 47
 

This article has been dead for over three months

Post: Markdown Syntax: Formatting Help
You