Dans les deux premiers articles, nous avons introduit la méthode de la culture de configuration DWR Zero et les méthodes de back-end d'appel frontal. Je crois que tout le monde devrait y être compétent. Discutons principalement de la façon dont le back-end appelle la méthode JS frontale en sens inverse;
Comme mentionné dans les deux articles précédents, deux composants de service sont enregistrés auprès de DWR, l'un est distant et l'autre est le contrôleur utilisé par la page. Cette télécommande sera appelée dès que la page sera chargée, ce qui permet à la session et à la scripts de page d'établir une relation de liaison, afin que nous puissions utiliser son scriptSessionID pour la page directionnelle de la page plus tard;
Ce qui suit est la méthode pour créer une session de session et de la page (la page sera appelée lorsqu'elle sera chargée):
ScripTession scripTession = webContextFactory.get (). GetScriptSession (); String jSessionId = scripTession.gethTTPSessionId (); String dwrSessionId = scripTession.getId (); Logger.info (string.format ("set jSessionId = [% s], dwrSession = [% s] push actived", jSessionId, dwrSessionID)); ConstantCacheService.putCacheConstant (constants.push_id + jSessionId, dwrSessionId);Ce qui suit est la méthode de service utilisée pour appeler en réversement le frontal:
@Service ("dwrreverseajaxService") classe publique dwrreverseajaxService {private static final logger Logger = LoggerFactory.getLogger (dwrreverseajaxService.class); public void DirectWeBreMotingWithSession (HttpSession Session, Final String FunctionName) {Not Notert.notnull (Session, "Dwrat FonctionName) {Not Noter be null! "); final String scripTessionId = constantcacheservice.getCacheConstantValue (constants.push_id + session.getId ()); logger.info (" [dwr session id] = "+ scriptsessionid +" [Script function name] = "+ functionname); Public Void () Run ()? GensCe service utilise ScriptSessionID pour le positionnement et la poussée inversés, et ce scriptSessionID utilise une paire de cartes globale qui a été enregistrée lorsque nous avons chargé la page pour la première fois;
Utilisez simplement le bean de service enregistré lorsque vous souhaitez l'appeler. Les paramètres passés sont httpSession et le nom de fonction frontal que vous souhaitez appeler. Dans le même temps, notez que la fonction JS existe sur la page actuelle, et les méthodes dans le JS de la page principale sont accessibles, sinon le frontal invitera une erreur de non-définie cette méthode;
Ce qui précède est une application simple de DWR. C'est purement la première fois que je l'utilise. S'il y a quelque chose de mal, veuillez me corriger. Je suis reconnaissant! Dieu, veuillez flotter par ~~~~~;