Skip to main content

Fisheye as a JSF component - using the valueChangeListener event

2 replies [Last post]
mdmaurer
Offline
Joined: 2006-05-05
Points: 0

I’m trying to use the jmaki dojo.fisheye as a JSF component in my JSF page. It displays fine, but I can’t get it to respond to mouse clicks on the various images of the fisheye. It seems as though it isn’t firing the valueChangeListener event. Any ideas why?

Page code:

<%@taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<%@taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<%@taglib prefix="a" uri="http://java.sun.com/jmaki-jsf" %>

Here’s the event method in my bean:

public void fisheyeValueChangeEvent( ValueChangeEvent pVCE )
throws SQLException, NamingException
{
System.out.println("*** ProductListBean.fisheyeChangedEvent()...");
}

Reply viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
gmurray71
Offline
Joined: 2003-07-31
Points: 0

HI,

We don't have automatic value change listener mappings between the client server.

You will need write some glue code in JavaScript to take the event and post a change event pack to the server.

With the version of jMaki you use the JavaScript is described at:

http://blogs.sun.com/jenniferb/entry/dojo_fisheye_jmaki_widget_using

With our latest release you can see the interaction at:

http://weblogs.java.net/blog/gmurray71/archive/2007/07/jmaki_actions_1.html

We'll try to put some more documents together on how to wire the events back to the server.

mdmaurer
Offline
Joined: 2006-05-05
Points: 0

I appreciate the reply and example links. Ok, no valueChangeListener event. Too bad, that would have been so convenient...

Unfortunately, none of the example links you provided show how to call a method on a java bean (server side). This is what I need to do. Clicking one of the fisheye images needs to call a java method that will re-query and filter the data being shown in a JSF datatable that is bound to a property in the bean. I need it to do more than just call a javascript function. How can I cause it to execute a bean method? Can this be acomplished with the glue code?