Nu utilizaţi construcţii EJB Query Language specifice WebLogic

Această regulă detectează referinţe la WebLogic Query Language. Referinţele WebLogic Query Language trebuie examinate şi convertite corespunzător pentru utilizarea pe WebSphere tradiţional şi Liberty.

Elementul <weblogic-ql> specifică o interogare care conţine o extensie specifică WebLogic la EJB 2.0 Query Language (EJB-QL). Caracteristicile limbajului EJB-QL standard sunt folosite în descriptorul de implementare ejb-jar.xml, iar extensiile WebLogic EJB-QL sunt folosite în fişierul weblogic-cmp-rdbms-jar.xml. Ordonarea, funcţiile de agregare şi subinterogările sunt utilizate des în interogări, dar deoarece pot fi folosite şi alte extensii, inspectaţi întotdeauna cu atenţie toate elementele <weblogic-ql>.

WebSphere Application Server extinde şi el caracteristicile limbajului EJB-QL, dar în loc să definească un QL separat, WebSphere Application Server furnizează ordonarea, subinterogările şi funcţiile de agregare la sintaxa EJB-QL. WebSphere Application Server extinde sintaxa EJB-QL pentru a include aceste extensii. Prin urmare, puteţi utiliza EJB-QL plus extensiile sale în elementul <ejb-ql> standard în fişierul ejb-jar.xml.

Mapare orderby

Extensia WebLogic QL, orderby, este un cuvânt cheie care lucrează cu metoda Finder pentru a specifica ordinea rezultatelor returnate din selecţiile dumneavoastră. Puteţi ordona şi după mai multe câmpuri şi puteţi specifica returnarea rezultaatelor în ordine crescătoare sau descrescătoare.

Mapare subinterogări şi funcţii de agregare

Extensia WebLogic QL, subquery, permite unei interogări să fie înglobată într-o clauză WHERE a interogării principale pentru a returna date în interogarea principală ca o condiţie pentru a restricţiona mai mult datele de extras. Extensia WebLogic QL, MAX, returnează valoarea maximă pentru câmpul specificat. Acest exemplu arată o subinterogare şi funcţie de agregare, precum şi mapările la WebSphere Application Server:

Informaţii suplimentare despre EJB-QL sunt disponibile în acest subiect: