Esper: concatenamento dell'accesso alla proprietà e chiamate di metodo nelle query EPL
-
30-10-2019 - |
Domanda
Attualmente sto lottando per far funzionare alcune domande EPL EPL. Le domande sembrano così:
select a.center.distance(b.center) as delta
from pattern [
every-distinct(a.id, b.id) (
a=org.example.PositionEvent -> b=org.example.PositionEvent
)
]
Quando provo a compilare questo in un EPLStatement
attraverso EPAdministrator.createEPL()
lancia la seguente eccezione:
com.espertech.esper.client.epstatementException: errore di avvio di errore: Impossibile caricare la classe per nome 'A.Center', controlla le importazioni
Se modifico le classi di eventi e la query da leggere in questo modo
select a.distance(b) as delta
from pattern [
every-distinct(a.id, b.id) (
a=org.example.PositionEvent -> b=org.example.PositionEvent
)
]
Compila bene. Esper sembra interpretare a.center.distance(...)
Come nome di classe seguito da un invocazione del metodo statico, mentre interpreta a.distance(...)
come un metodo chiamata sull'oggetto a
.
Come posso far interpretare ESPer la mia query originale come previsto (cioè come accesso alla proprietà seguito da un'invocazione del metodo)?
Nessuna soluzione corretta