Pergunta

Como fazer uma conjunção [AND] na cláusula where jhat OQL?

Eu quero fazer isso:

select s from sun.security.x509.X500Name s where  s.canonicalDn !=null and    
/tiberium/(s.canonicalDn.toString())

Isto é, quero encontrar todos os X500Names que contêm appTrust em seu canonicaldn.Preciso da verificação de nulo, já que alguns canonicaldn podem ser nulos [e jhat lança uma exceção de ponteiro nulo nesse caso em toString].

Mas o "e" literal não funciona.

A propósito, resolvi isso para meu propósito usando a função de filtro:

select filter(heap.objects("sun.security.x509.X500Name"), isTiberium);

function isTiberium(s) {  
    return s.canonicalDn !=null && /tiberium/(s.canonicalDn.toString());  
}
Foi útil?

Solução

Descobri que "e" é &&, pois é o javascript e o operador.Essa é a expressão correta é simplesmente:

select s from sun.security.x509.X500Name s where  s.canonicalDn !=null &&    
/tiberium/(s.canonicalDn.toString())
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top