Iustina,

The following call should not be made explicitly,

mouseOver "headerForm.faultHeader"

since Container object does no have the mouseOver method defined.

Actually, if you define the respond attribute, the Javascript events
such as
mouseOver will be called implicitly by Tellurium and you do not need
to call
it manually. That is to say, if you have an action such as "click" and
your
UI has the respond attribute with value "mouseOver", the eventhandler
in
Tellurium will automatically call "mouseOver" first before call the
"click"
method.

Take a look at the click method in the EventHandler class,

def click(String locator, String[] events) {
        String[] defaultEvents = null
        if(extraEvent)
           defaultEvents = ["focus", "mouseOver"]

        processEvents(locator, events, defaultEvents){
           dispatcher.click(locator)
        }
}

and the processEvents method is as follows,

    protected void processEvents(String locator, String[] events,
String[] defaultEvents, Closure action){
        checkElement(locator)
        if(dispatcher.isElementPresent(locator)){
            Event[] evns = alg.sort(events, defaultEvents)
            evns.each { Event event ->
                if(event == Event.ACTION)
                  action()
                else
                  processingEvent(locator, event)
            }

        }
    }

    protected void processingEvent(String locator, Event event){
        switch (event){
            case Event.BLUR:
                dispatcher.fireEvent(locator, "blur")
                break
            case Event.FOCUS:
                dispatcher.fireEvent(locator, "focus")
                break
            case Event.MOUSEOUT:
                dispatcher.mouseOut(locator)
                break
            case Event.MOUSEOVER:
                dispatcher.mouseOver(locator)
                break
            default:
                println "Warning: Unknown Event ${event.toString()}"
        }
    }

Hope this can help you understand the respond attribute better.

Thanks,

Jian


On Jan 3, 12:01 pm, iv <[email protected]> wrote:
> Thanks for providing the fix for Widget: it works like a charm for
> Checkboxes and Images now :)
>
> But I am still having the same error as before, for *mouseOver* over a
> Container:
>
> groovy.lang.MissingMethodException: No signature of method:
> org.tellurium.object.UiObject.mouseOver() is applicable for argument
> types: (org.tellurium.widget.Widget$_mouseOver_closure1) values:
> {org.tellurium.widget.widget$_mouseover_closu...@d1a1ab}
>         at sun.reflect.GeneratedConstructorAccessor7.newInstance(Unknown
> Source)
>         at sun.reflect.DelegatingConstructorAccessorImpl.newInstance
> (DelegatingConstructorAccessorImpl.java:27)
>         at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
>         at org.codehaus.groovy.runtime.MetaClassHelper.doConstructorInvoke
> (MetaClassHelper.java:535)
>         at groovy.lang.MetaClassImpl.doConstructorInvoke(MetaClassImpl.java:
> 2356)
>         at groovy.lang.MetaClassImpl.invokeConstructor(MetaClassImpl.java:
> 1255)
>         at groovy.lang.MetaClassImpl.invokeConstructor(MetaClassImpl.java:
> 1185)
>         at org.codehaus.groovy.runtime.InvokerHelper.invokeConstructorOf
> (InvokerHelper.java:809)
>         at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeNewN
> (ScriptBytecodeAdapter.java:230)
>         at org.tellurium.object.UiObject.methodMissing(UiObject.groovy:95)
>         at sun.reflect.GeneratedMethodAccessor43.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke
> (DelegatingMethodAccessorImpl.java:25)
>         at org.codehaus.groovy.reflection.CachedMethod.invoke
> (CachedMethod.java:86)
>         at groovy.lang.MetaClassImpl.invokeMissingMethod(MetaClassImpl.java:
> 707)
>         at groovy.lang.MetaClassImpl.invokeMissingMethod(MetaClassImpl.java:
> 679)
>         at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:930)
>         at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:756)
>         at org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod
> (InvokerHelper.java:778)
>         at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod
> (InvokerHelper.java:758)
>         at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodN
> (ScriptBytecodeAdapter.java:170)
>         at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodNSafe
> (ScriptBytecodeAdapter.java:178)
>         at org.tellurium.widget.Widget.mouseOver(Widget.groovy:75)
>
> On Jan 2, 6:25 pm, [email protected] wrote:
>
> > Iustina,
>
> > I committed the fix and upload the new tellurium jar file to the user
> > group as tellurium-0.6.0.jar. I cannot upload it to project web site
> > because all artifacts there will be archived.
>
> > Or you check out the core project source from trunk and then run ant
> > task
>
> > ant dist
>
> > to generate the tellurium jar file, which will be under dist/.
>
> > Please let me know if you have any further questions.
>
> > Thanks,
>
> > Jian
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"tellurium-users" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/tellurium-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to