Wednesday, 7 November 2007

Generics în JSP

Problematic. Nu încercaţi asta acasă. Cel puţin în configuraţie cu Java 1.5 şi Tomcat 5.5 (Jasper compiler).

Mă trezeam la unele treceri prin cod (în mod consecvent la apelarea scriptului cu aceiaşi parametri, dar nu cu oricare) cu nişte excepţii ciudate. Dădea java.lang.AbstractMethodError atunci când apelam Collections.sort pe o colecţie de obiecte de un anume tip. Metoda care chipurile era abstractă era... mergeSort, din clasa Array. WTF? Nu are cum să fie abstractă, este implementată de Sun!

Nu mi-am putut explica, mai ales că googlind nu am găsit nimic util, dar intuiţia m-a ghidat bine şi am înlocuit generics cu un coding style de pe vremea lui Java 1.4 şi problema s-a rezolvat. Absolut curios. Clasa java generată de compilatorul de JSP arăta foarte sănătos, cu generics la locul lor şi avea sens perfect. Ce mai introduce Jasper în clasele alea sau ce foloseşte ca să compileze class-urile e altă mâncare de peşte şi se pare că în zona asta trebuie umblat cu grijă.

2 comments:

swaysworn wiki said...
This post has been removed by a blog administrator.
Anonymous said...
This post has been removed by a blog administrator.