2017-01-30 9 views
0

Esperのリスナーメソッドを更新するイベントを送信していますが、オブジェクトを受信して​​いますが、update()メソッドがハッシュマップにラップします。そこからオブジェクトを取得できません。上記の関数でUpdate ListenerメソッドのEsperでイベントオブジェクトのプロパティにアクセスできません

public static class CEPListener implements UpdateListener { 
    public void update(EventBean[] newData, EventBean[] oldData) { 
      // put some condition here before sending to crowd....... 
      System.out.println("Event received: " 
           + newData[0].getUnderlying()); 
      System.out.println("Sending event to crowd.........");  
     } 
    } 

私は内側にあるnewData私の目的のオブジェクトを取得することができますが、それは、いくつかのマップに包まれて、私はそれから私のオブジェクトを取得する方法を見つけることができません。以下の画面でnewData [0] .getUnderlying()にはさまざまな属性があり、object methodsとしてアクセスできない赤い四角形の下に値オブジェクトが必要です。助けに感謝します。 Attributes of newData[0].getUnderlying()

答えて

0

私は答えを持っている。

   for (EventBean eb : newData) { 
       if (eb instanceof MapEventBean) { 
        //MapEvent event = null; 
        if (eb.getUnderlying() instanceof Map<?, ?>) { 
         Map<?, ?> alert = (Map<?, ?>) eb.getUnderlying(); 
         for (Entry<?, ?> entry : alert.entrySet()) 
         { 
          System.out.println(entry.getValue()); 
         } 


        } 
関連する問題