JSPG0091E Syntax error, parameterized types are only available if source level is 5.0
Код в JSP использует возможности Java 1.5, в частности, дженерики и ассерты. Именно это и не нравится вебсфере, судя по тому, что она пишет в exception messages. В чем же дело, ведь в коде приложения также используются фичи из Java 1.5?
Дело в том, что для JSP Engine, который и производит компиляцию JSP-страниц в сервлеты, ВебСфера использует отдельные настройки. В частности, через эти настройки можно задать версию Java, для которой написан исходный код. По умолчанию, эта версия установлена 1.3!!!
Соответственно, если задать ее 1.5, то исключения исчезнут.
Есть два пути, как задать версию: через веб-интерфейс (как это сделать, описано здесь) и через файл ibm-web-ext.xmi, который надо добавить в каталог WEB-INF приложения. Я опишу подробно второй способ.
В файле ibm-web-ext.xmi задаются настройки JSP Engine для WebSphere. Через этот файл можно задать множество параметров, которые описаны вот здесь. Нас интересует параметр, который называется jdkSourceLevel - он задает минимальную версию Java, на которой написан код. Для Java 1.5 следует задать значения параметра 15, для Java 1.4 - значение этого параметра должно быть 14.
Файл ibm-web-ext.xmi:
|
Также об этой ошибке написано в блоге DocTeger'а.
Есть также раздел Configuring JSP Parameters в руководстве по ВебСфере.