2015-02-25 1 views
3

Je suis réussi essayer de passer des arguments à un bean géré. Le bean est configuré et fonctionne, a deux méthodes "getResponsible" et "setResponsable". L'appel de "myLookup.responsible" fonctionne.Xpages valeurs de réglage COMBOBOX dans le haricot

Je ne peux pas passer des arguments à mon haricot, et ne peut pas comprendre pourquoi. Le code ci-dessous ne fonctionne pas.

<xp:comboBox id="comboBox1"> 
    <xp:selectItems> 
    <xp:this.value><![CDATA[#{myLookup.setResponsible("Something")}]]> 
    </xp:this.value> 
    </xp:selectItems> 
    </xp:comboBox> 

Dès que je tape les parenthèses «) », « (» ou point-virgule « ; ». Je reçois une erreur « Erreur dans la syntaxe EL » Je suppose que je fais une erreur fondamentale ici

Répondre

4

La. version du langage d'expression ne permet pas de paramètres à passer facilement cette option peut travailler http://blog.defrog.nl/2012/04/settings-bean-parameterized-method-call.html

Si les paramètres sont nécessaires, je l'habitude d'utiliser SSJS, donc:..

#{javascript:myLookup.setResponsible("Something"); 

Si les options ne seront pas varier au cours de la vie de la page, vous pouvez toujours calculer la charge de page, donc:

${javascript:myLookup.setResponsible("Something"); 
+0

Merci, cela a résolu mon problème! – Kermit

3

Je pense que vous venez de faire une « erreur typographique » simple que Paul a déclaré indirectement dans sa réponse. Vous avez écrit du code Javascript mais n'avez pas inclus le "javascript:" au début de votre expression.

Toutefois, si vous ne voulez utiliser des arguments avec EL alors jetez un oeil à ce very interesting article. Je ne l'ai pas encore essayé (mais je vais le faire bientôt) - mais les deux exemples différents (regardez les commentaires) semblent très intéressants quand vous voulez utiliser EL. Et je préfère EL sur SSJS.

/John

+0

-moi juste devança, Paul ;-) –

+0

Oui, je voudrais bien que pour éviter SSJS, c'est la raison pour laquelle j'ai fait le bean géré en premier lieu. :) Je vais lire l'article et essayer d'éviter SSJS tous ensemble. Merci! – Kermit