7 Replies Latest reply on Jan 19, 2009 12:01 PM by Michael zazzali

    MethodExpressionActionListener programmatically created work

    Michael zazzali Newbie

      I am programmatically building up some components to display. Along the way i am trying to add a method expression to some of the components to perform an action.

      Also in all browser I will enter the into the backing beans phase events. Only in IE 6 however it actually hits the bizRuleMgmt.onSelectRulePart method. Very strange behavior is this a bug or something I am doing incorrectly?


      versions:
      jsf 1.2
      richfaces 3.1.3.GA

      Here is some of the code I am using.

       public UIComponent processRulePart(BRPart part){
       HtmlPanelMenuItem panelMenuItem = new HtmlPanelMenuItem();
       String subjectColumn = part.getFkSubjectColDefId().getName();
       String comparitor = part.getFkBRComparitor().getName();
       String value = part.getFkValueColRefId().getColName();
       MethodExpression methodExpression = getMethodExpression("#{bizRuleMgmt.onSelectRulePart}");
       MethodExpressionActionListener actionListener = new MethodExpressionActionListener(methodExpression);
       panelMenuItem.addActionListener(actionListener);
       panelMenuItem.setLabel(subjectColumn+" "+comparitor+" "+value);
       return panelMenuItem;
       }
      
       public MethodExpression getMethodExpression(String expression){
       Application app = context.getApplication();
       ExpressionFactory expressionFactory = app.getExpressionFactory();
       Class [] classList=new Class[1];
       classList[0]=ActionEvent.class;
       MethodExpression methodExpression = expressionFactory.createMethodExpression(
       context.getELContext(),
       expression, null, classList);
       return methodExpression;
       }