WAS 6.1 показывает версию 5 Java, но это действительно 1.4 - PullRequest
3 голосов
/ 22 февраля 2012

У меня странная проблема.

Я настроил наш сервер приложений Websphere для запуска Java 5. Это действительно старое приложение, которое я перенес с Java 4.

Если я вПечать страницы JSP

System.getProperty("java.version")
System.getProperty("java.specification.version")
System.getProperty("java.vm.name")

Я получаю

Версия Java: 1.5.0java.specification.version: 1,5java.vm.name: IBM J9 VM

Однако, если я в jsp изменить код с List на List<Object>, я получу следующее исключение:

The type ArrayList is not generic; it cannot be parameterized with arguments <Object> JSPG0091E: An error occurred at line: 79 in the file: /jsp/archive/archiveoverview.jsp JSPG0093E: Generated servlet error from file: /jsp/archive/archiveoverview.jsp C:\SDP75\runtimes\base_v61\profiles\was61profile1\temp\CR122599Node01\server1\myifEAR\myif.war\jsp\archive\_archiveoverview.java : 199 : Syntax error, parameterized types are only available if source level is 5.0

Как можноэто будет ???

1 Ответ

5 голосов
/ 22 февраля 2012

JVM, используемая для запуска WebSphere Application Server, отличается от уровня соответствия компилятора, используемого для компиляции JSP, работающих на сервере.См. Эту техническую заметку: Использование функции языка Java 5 в JSP для WebSphere Application Server v6.1 .

...