<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Vikings

    調用jsonrpc的技巧

    一段不用每個jsp頁面都JSONRPCBridge.registerObject的方法

    1. JsonContextLinster
    在spring文件里讀取需要注冊bridge的bean名單
    registerObject
    public class JSONContextListener implements ServletContextAttributeListener {
        
    private final Log log = LogFactory.getLog(JSONContextListener.class);

        
    public void attributeAdded(ServletContextAttributeEvent event) {
            
    if (event.getName().equals(WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE)) {
                
    // register LookupHelper so we can call methods on it
                ApplicationContext ctx = (ApplicationContext) event.getValue();

                
    // check for null so we don't have to initialize Spring in tests
                if (ctx != null{
                    log.debug(
    "Registering jsonObjects for XmlHttpRequest to GlobalBridge");
                    
                    JSONRPCBridge jsonBridge 
    = JSONRPCBridge.getGlobalBridge();

                    Map jsonObjects 
    = (Map) ctx.getBean("jsonObjects");
                    
    for (Object name : jsonObjects.keySet()) {
                        jsonBridge.registerObject(name, jsonObjects.get(name));
                    }

                    
                }

            }
            
        }

    public void attributeReplaced(ServletContextAttributeEvent event) {
            attributeAdded(event);
        }

    }


    2.spring配置里的jsonObject
        <!-- json registration -->
        
    <bean name="jsonObjects" class="java.util.HashMap">
            
    <constructor-arg>
                
    <map>
                    
    <entry key="information" value-ref="informationJson"></entry>
                
    </map>
            
    </constructor-arg>
        
    </bean> 

        
    <bean id="informationJson" class="com.vikings.tools.json.Information" >
            
    <property name="informationDAO" ref="informationDAO" />
        
    </bean>

    3.web.xml里增加配置剛才寫的listener
    <listener>
            
    <listener-class>com.vikings.tools.json.JSONContextListener</listener-class>
        
    </listener>

    到這里就不用這么寫了
    <jsp:useBean id="JSONRPCBridge" scope="session"
       class
    ="com.metaparadigm.jsonrpc.JSONRPCBridge" />

    <% JSONRPCBridge.registerObject("myTestObject", aTestObject); %>
    這個也不需要
    // Find the JSONRPCBridge for this session or create one
    // if it doesn't exist. Note the bridge must be named "JSONRPCBridge"
    // in the HttpSession for the JSONRPCServlet to find it.
    HttpSession session = request.getSession();
    JSONRPCBridge json_bridge 
    = null;
    json_bridge 
    = (JSONRPCBridge) session.getAttribute("JSONRPCBridge");
    if(json_bridge == null{
        json_bridge 
    = new JSONRPCBridge();
        session.setAttribute(
    "JSONRPCBridge", json_bridge);
    }

    posted on 2007-11-01 22:19 Vikings 閱讀(1476) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲国产精品人久久电影| 羞羞的视频在线免费观看| 日本妇人成熟免费中文字幕| 亚洲色大成网站WWW国产| 亚洲av午夜精品一区二区三区| A级毛片高清免费视频在线播放| 国产成人精品日本亚洲网址| www国产亚洲精品久久久日本| 99ee6热久久免费精品6| 久久亚洲色WWW成人欧美| 久久精品九九亚洲精品天堂| 最近的免费中文字幕视频 | 亚洲视频在线不卡| 四虎免费影院4hu永久免费| 一区二区在线免费观看| 99爱在线精品视频免费观看9| 亚洲中文字幕精品久久| 亚洲国产精品无码AAA片| 在线免费观看一区二区三区| 中文字幕免费在线观看动作大片| 国产.亚洲.欧洲在线| 综合久久久久久中文字幕亚洲国产国产综合一区首 | 国产成人在线观看免费网站| a毛片免费全部播放完整成| 亚洲精品欧美综合四区| 色播亚洲视频在线观看| 中文字幕亚洲第一| 日本不卡高清中文字幕免费| 91精品国产免费| 久久一区二区三区免费| 亚洲国产成人久久精品大牛影视 | 午夜视频免费观看| 久久国产免费观看精品3| 国产成人精品免费视频大全| 亚洲精品久久久久无码AV片软件| 4480yy私人影院亚洲| 亚洲精品无码久久久久sm| 九月婷婷亚洲综合在线| 性色av免费观看| 在线观看AV片永久免费| 67194成手机免费观看|