
jsp 에서 switch 구문에 문자열을 넣어 분석하려니 에러가 난다.
Actually, your code is not valid on 1.6. You can't do a switch on a String.
In Java 4 and before you could only use switch on boolean, char, short, byte, int types.
In Java 5 and 6 you could use switch on Enums in addition to previous types.
And only Java 7 supports switch on Strings.


구글번역으로 번역을 해봤는데, 대략 내용으로 보자면.
자바 1.6 에서 문자열을 분석하도록 한 코딩을 수행할 수 없다.
자바 4 까지는 boolean, char, short, byte, int 형의 값을 사용할 수 있었고,
자바 5, 6 에서는 Enum 형이 추가 되었다.
String 형태는 자바 7에서만 지원한다.
뭐... 이런 내용인것 같다.
현재 톰캣 7 과 JDK7u9 를 설치했다.
여기서는 자바 버전이 뭔지 몰라서 헤맸는데,

JDK 가 설치된 폴더에 들어가서 'release' 라는 파일을 열어보면 자바의 버전정보가 들어있다.
간편하게 자바의 버전 정보를 체크하는 유틸리티도 있다.
시스템에 설치된 자바 버전 체크 JAVA Version Check: http://file.naver.com/pc/view.html?fnum=225327&cat=30

이 유틸리티를 다운로드 받아 실행시키니 버전이 'Java7FamilyVersion=1.7.0_09' 라고 나온다.
이 버전과 위의 에러메세지에서 언급한 자바 4,5,6 이 매칭이 안 되는데,
지금 버전이 1.7 이고 윗버전이 4.5.6,7 까지 나왔다는 말인가?
아무튼, 문자열을 넣을 수 없어서, 강제로 형변환을 해서 숫자로 바꾸고 동작시키니 에러가 없어졌다.
덧글