velocity 調用java方法


package com.ada.wuliu.front.web.base;

import java.io.IOException;
import java.io.Writer;

import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.VelocityEngine;
import org.apache.velocity.context.InternalContextAdapter;
import org.apache.velocity.exception.MethodInvocationException;
import org.apache.velocity.exception.ParseErrorException;
import org.apache.velocity.exception.ResourceNotFoundException;
import org.apache.velocity.runtime.directive.Directive;
import org.apache.velocity.runtime.parser.node.Node;

public class VmSession  extends Directive{
    private static   AdwlFrontBaseAction<Object> adwlFrontBaseAction =new AdwlFrontBaseAction<Object>() {};
    public void setAdwlFrontBaseAction(
            AdwlFrontBaseAction<Object> adwlFrontBaseAction) {
        this.adwlFrontBaseAction = adwlFrontBaseAction;
    }

    @Override
    public String getName() {
        // TODO Auto-generated method stub
        return "getUserState";
    }

    @Override
    public int getType() {
        // TODO Auto-generated method stub
        return LINE;
    }

    @Override
    public boolean render(InternalContextAdapter contextAdapter, Writer writer, Node node)
            throws IOException, ResourceNotFoundException, ParseErrorException,
            MethodInvocationException {
        try{
        // TODO Auto-generated method stub
            System.out.println("測試velocity自定義命令..........................");
            String str=adwlFrontBaseAction.getUserIDFromSession();
            System.out.println("測試velocity自定義命令..........................");
            contextAdapter.put("sso_pin", str);
            contextAdapter.put("test", "這是vmsession自定義指令加載進來的數據");
            System.out.println("測試velocity自定義命令..........................");
        }catch(Exception e){
            e.printStackTrace();
        }
        return true;
    }

}


測試vm單點登錄調用</br>
自定義命令調用:#getUserState()</br>
自定義命令調用:#set($pin = $test)
獲取自定義命令中設置的變量:$test</br>
這幫可愛的朝鮮人.....</br>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM