Your select is also inside of the frame. I don't see if Champ tried to run 
that code directly inside of the frame or not, but can you try if that 
makes any changes if you open the source of the frame in your browser and 
then manipulate select directly inside of your browser and not a frame?

J.

On Thursday, October 18, 2012 8:31:11 PM UTC+3, Drake wrote:
>
> Further information:
> If you go to the browser and manually select the value, then run the code, 
> it returns a successful value.
> If the value selected manually is anything but the one you want in the 
> code, it freezes and errors out.
> Champ's solution of changing the input_elements.rb file worked for me as 
> well.
>  
>
> On Thursday, 18 October 2012 12:35:45 UTC-4, Drake wrote:
>
>> OK, so it looks like I'm having the same problem.
>> Frame: id="mainControlFrame"
>> List in the frame: 
>> <select size="4" name="provList" id="provList" onChange="onChange()" 
>> ondblclick="onOkClick()">
>>     <option value="9">Alberta</option>
>>     <option value="10">British Columbia</option>
>>     <option value="7">Manitoba</option>
>>     <option value="4">New Brunswick</option>
>>     <option value="1">Newfoundland</option>
>>     <option value="6">Ontario</option>
>> </select>
>> There is an OK button below this in a table cell.
>>  
>> watir code I'm using:
>> provsel.frame(:id, "mainControlFrame").select_list(:id, 
>> "provList").select("New Brunswick")
>> provsel.frame(:id, "mainControlFrame").td(:text, "OK).click_no_wait
>>  
>> There is code prior to this that runs smooth, but as soon as it hits the 
>> "select" statement, the list box turns yellow, and nothing gets done. 
>> Eventually, if I leave it long enough, I get the same error: Stack level 
>> too deep.
>> On Wednesday, 17 October 2012 20:58:46 UTC-4, Champ wrote:
>>
>>> Ok. Here is the html for the select_list that was found.
>>>
>>> ======== searching
>>> ======== found: <SELECT style="BACKGROUND-COLOR: yellow" class=NORMDATA 
>>> size=1 name=filter> <OPTION selected value=""><OPTION 
>>> style="BACKGROUND-COLOR: yellow" value=Y>Active<OPTION 
>>> value=N>In-Active</OPTION></SELECT>
>>> E
>>>
>>> ===============================================================================
>>> Error: test_01
>>>   SystemStackError: stack level too deep
>>>
>>> C:/Ruby192/lib/ruby/gems/1.9.1/gems/watir-classic-3.2.0/lib/watir-classic/locator.rb:129
>>>
>>> ===============================================================================
>>>
>>> On Wednesday, October 17, 2012 4:04:34 PM UTC-4, Jarmo Pertman wrote:
>>>>
>>>> Replace the "found" like to this:
>>>> puts "======== found: #{found_select.html}"
>>>>
>>>> Jarmo
>>>>
>>>> On Tuesday, October 16, 2012 7:49:11 PM UTC+3, Champ wrote:
>>>>>
>>>>> Jarmo,
>>>>>
>>>>> I tried with the code that you shared. The select_list does get 
>>>>> identified but shows id: and not the element and I get the stack error 
>>>>> message below. This might be the cause 
>>>>>
>>>>> ******************************************************
>>>>> ======== searching
>>>>> ======== found: id:           
>>>>> E
>>>>>
>>>>> ===============================================================================
>>>>> Error: test_01
>>>>>   SystemStackError: stack level too deep
>>>>>
>>>>> C:/Ruby192/lib/ruby/gems/1.9.1/gems/watir-classic-3.2.0/lib/watir-classic/locator.rb:129
>>>>>
>>>>> On Tuesday, October 16, 2012 11:31:49 AM UTC-4, Jarmo Pertman wrote:
>>>>>>
>>>>>> That's just strange. I don't see any reasons why this code ought to 
>>>>>> go turn into stack overflow. However if you change the line to 
>>>>>> ole_object.focus then sometimes select list onChange event won't be 
>>>>>> triggered. It would be awesome if you'd figure it out what exactly goes 
>>>>>> into endless loop there and how to reproduce it. E.g. does the 
>>>>>> select_list 
>>>>>> itself get found in change_selected? You can find that out by changing 
>>>>>> the 
>>>>>> code to something like this:
>>>>>>
>>>>>>     def change_selected(value)
>>>>>>       puts "======== searching"
>>>>>>       found_select = select_list
>>>>>>       puts "======== found: #{found_select}"
>>>>>>       found_select.focus
>>>>>>       puts "======== focused"
>>>>>>       ole_object.selected = value
>>>>>>       puts "======== selected"
>>>>>>       found_select.dispatch_event("onChange")
>>>>>>       puts "======== dispatched"
>>>>>>       @container.wait
>>>>>>       puts "======== waiting done"
>>>>>>     end
>>>>>>
>>>>>> Jarmo
>>>>>>
>>>>>>
>>>>>> On Monday, October 15, 2012 10:44:48 PM UTC+3, Champ wrote:
>>>>>>>
>>>>>>> After trying a long time, I figured that the cause of error is the 
>>>>>>> change_selected method in the input_elements.rb. I am not sure if this 
>>>>>>> impacts anything else. However, changing the select_list.focus to 
>>>>>>> ole_object.focus seems to have resolved the issue for me.
>>>>>>>
>>>>>>> Any inputs/comments?
>>>>>>>
>>>>>>> On Monday, October 15, 2012 2:29:51 PM UTC-4, Jarmo Pertman wrote:
>>>>>>>>
>>>>>>>> Can you open up the url set in your iframe directly with watir and 
>>>>>>>> try that select_list code directly without being in an iframe? Can you 
>>>>>>>> try 
>>>>>>>> if swapping the order of your select list codes will make any 
>>>>>>>> difference - 
>>>>>>>> e.g. if you try to select the failing select list first and then the 
>>>>>>>> one 
>>>>>>>> which passes currently?
>>>>>>>>
>>>>>>>> Also, set $DEBUG=true before that failing select list, maybe you 
>>>>>>>> will get some other additional information. It is really hard to go 
>>>>>>>> from 
>>>>>>>> here if there's no additional information as to why it might be 
>>>>>>>> happening 
>>>>>>>> for you :(
>>>>>>>>
>>>>>>>> Jarmo Pertman
>>>>>>>> -----
>>>>>>>> IT does really matter - http://itreallymatters.net
>>>>>>>>
>>>>>>>>
>>>>>>>> On Monday, October 15, 2012 4:59:47 PM UTC+3, Champ wrote:
>>>>>>>>>
>>>>>>>>> Changing the search_filter to a non-blank too shows the same error 
>>>>>>>>> message. 
>>>>>>>>>
>>>>>>>>> Not sure of how to go about this. There are quite a lot of 
>>>>>>>>> select_lists in the application and this is a showstopper :(.
>>>>>>>>>
>>>>>>>>> On Sunday, October 14, 2012 5:12:21 AM UTC-4, Jarmo Pertman wrote:
>>>>>>>>>>
>>>>>>>>>> And this is the only line in the stacktrace? Strange. But maybe 
>>>>>>>>>> it has something to do with the empy search_filter. Try to put there 
>>>>>>>>>> anything else to see if that makes any difference.
>>>>>>>>>>
>>>>>>>>>> Jarmo Pertman
>>>>>>>>>> -----
>>>>>>>>>> IT does really matter - http://itreallymatters.net
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Saturday, October 13, 2012 7:59:09 PM UTC+3, Champ wrote:
>>>>>>>>>>>
>>>>>>>>>>> search_by="ARC"
>>>>>>>>>>> search_filter=""
>>>>>>>>>>>
>>>>>>>>>>> There is no backtrace to point to the origin of the message. 
>>>>>>>>>>> Only error it shows is *SystemStackError: stack level too deep*
>>>>>>>>>>> *
>>>>>>>>>>> C:/Ruby192/lib/ruby/gems/1.9.1/gems/watir-classic-3.2.0/lib/watir-classic/locator.rb:129
>>>>>>>>>>> *
>>>>>>>>>>> *
>>>>>>>>>>> *
>>>>>>>>>>> Thats the reason I am finding it hard to debug.
>>>>>>>>>>>
>>>>>>>>>>> -Champ
>>>>>>>>>>>
>>>>>>>>>>> On Saturday, October 13, 2012 6:12:33 AM UTC-4, Jarmo Pertman 
>>>>>>>>>>> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>> What is the value of search_filter and search_by for example? 
>>>>>>>>>>>> Also, please share the whole backtrace of that error and not the 
>>>>>>>>>>>> one line.
>>>>>>>>>>>>
>>>>>>>>>>>> Jarmo Pertman
>>>>>>>>>>>> -----
>>>>>>>>>>>> IT does really matter - http://itreallymatters.net
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> On Saturday, October 13, 2012 1:13:47 AM UTC+3, Champ wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>> It is a normal selectlist and I use the following command. The 
>>>>>>>>>>>>> page has 2 selectlists side by side. The first one gets selected 
>>>>>>>>>>>>> and the 
>>>>>>>>>>>>> second one hangs and shows the error.
>>>>>>>>>>>>>
>>>>>>>>>>>>> My watir code looks like this.
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> @ie.frame(:id, "application_frame").select_list(:name, 
>>>>>>>>>>>>> "searchcol").select(search_by)  (This works fine)
>>>>>>>>>>>>> @ie.frame(:id, "application_frame").select_list(:name, 
>>>>>>>>>>>>> "filter").select(search_filter) (This fails)
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Friday, October 12, 2012 3:20:15 PM UTC-4, Champ wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>  I am on Ruby 1.9.2 and watir-classic 3.2
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> I get the following error when I try to select an item from 
>>>>>>>>>>>>>> the selectlist. 
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> The selectlist gets highlighted in yellow and then hangs. 
>>>>>>>>>>>>>> Nothing happens. But after a while I see an error message as 
>>>>>>>>>>>>>> below, without 
>>>>>>>>>>>>>> indication of the origin of the error. 
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> *  SystemStackError: stack level too deep*
>>>>>>>>>>>>>> *
>>>>>>>>>>>>>> C:/Ruby192/lib/ruby/gems/1.9.1/gems/watir-classic-3.2.0/lib/watir-classic/locator.rb:129
>>>>>>>>>>>>>> *
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> The fix to this is very critical. Any help in this regard is 
>>>>>>>>>>>>>> greatly appreciated.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> -Champ
>>>>>>>>>>>>>>
>>>>>>>>>>>>>

-- 
Before posting, please read http://watir.com/support. In short: search before 
you ask, be nice.

watir-general@googlegroups.com
http://groups.google.com/group/watir-general
watir-general+unsubscr...@googlegroups.com

Reply via email to