Die Standardimplementierung des ExpressionEvaluator-Dienstes erfordert eine Instanz des Function Mapper, um die Definitionen der benutzerdefinierten Funktionen, die in den Ausdrücken bei der Auswertung von Ausdrücken verwendet werden, abzurufen. Sie können sie mithilfe der functionMapper-Eigenschaft des standardmäßigen ExpressionEvaluator-Dienstes konfigurieren. Der Funktions-Mapper in Java ist eine Implementierung der Schnittstelle „javax.servlet.jsp.el.FunctionMapper“ und muss ein angegebenes Präfix und einen lokalen Namen in eine konkrete Javafunktion (eine Instanz von „java.lang.reflect.Method“) auflösen, die der Ausdrucksmanager als Teil der Ausdrucksauswertung aufrufen kann. Die Schnittstelle „com.adobe.solutions.exm.runtime.IFunctionMapper“ stellt den clientseitigen Function Mapper dar. Diese Schnittstelle hat denselben Kontrakt wie die entsprechende serverseitige Schnittstelle. Wenn ein Funktionspräfix und ein lokaler Name vorhanden sind, wird eine Funktionsinstanz zurückgegeben, die dem Ausdrucksmanager entspricht. Bei asynchronen Remote-Funktionen muss die Funktionsinstanz ein RPC-Token (eine Instanz von „mx.rpc.AsyncToken“) beim Aufruf durch den Expression Manager zurückgeben. Expression Manager bietet eine Standardimplementation „IFunctionMapper“ (com.adobe.solutions.exm.runtime.impl.SimpleFunctionMapper), die von den meisten Anwendungen genutzt werden kann.
|
|
|