이클립스 jsp 파일에서 html 태그를 사용할때 Unknown tag라고 뜨는 오류...


실행에는 지장이 없어 무시하고 썻으나 쓰면 쓸수록 상당히 거슬려서 알아봤습니다.


위와 같이 <nav>, <section>, <article> 등의 html5태를 사용할때 나타나는 현상입니다.




<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" http://www.w3.org/TR/html4/loose.dtd">


DOCTYPE( Document Type)으로 발생한 오류 입니다.



<!DOCTYPE html>

위의 코드로 바꾸면 해당 메세지는 더이상 안뜹니다.


간단히 설명을 하자면 HTML 버전 별로 지원하는 태그가 조금씩 다릅니다.

그래서 어떤 버전의 HTML로 작정되었는지 브라우저에게 알려주는 것이 <!DOCTYPE> 입니다.

HTML 버전별 <!DOCTYPE> 선언문

<! DOCTYPE> 종류


 버전

 HTML 5

 설명

 HTML 5 버전입니다. (오직 하나 입니다.)

 선

 <!DOCTYPE html>


 버전

 HTML 4.01 Strict

 설명

 이 DTD는 모든 HTML 요소와 속성을 포함하고 있지만, 

표상적인 또는 사용되지 않는 요소가 포함되어 있지 않습니다.(글꼴 등)

프레임 셋은 허용되지 않습니다.

 선

 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">


 버전

 HTML 4.01 Transitional (권장)

 설명

 이 DTD는 표상적인 및 사용되지 않는 요소를 포함하여 

모든 HTML 요소와 속성이 포함되어 있습니다.(글꼴 등)

프레임 셋은 허용되지 않습니다.

 선

 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">


 버전

 HTML 4.01 Frameset

 설명

 이 DTD는 HTML 4.01 Transitional 동등하지만, 프레임 콘텐츠의 사용을 허용한다.

 선

 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">


 버전

 XHTML 1.0 Strict

 설명

 이 DTD는 모든 HTML 요소와 속성을 포함하고 있지만, 

표상적인 또는 사용되지 않는 요소가 포함되어 있지 않습니다.(글꼴 등) 

프레임 셋은 허용되지 않습니다. 

태그는 또한 제대로 구성된 XML을 작성해야합니다.

 선

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">


 버전

 XHTML 1.0 Transitional (권장)

 설명

 이 DTD는 표상적인 및 사용되지 않는 요소를 포함하여 

모든 HTML 요소와 속성이 포함되어 있습니다.(글꼴 등)

프레임 셋은 허용되지 않습니다. 

태그는 또한 제대로 구성된 XML을 작성해야합니다.

 선

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">


 버전

 XHTML 1.0 Frameset

 설명

 이 DTD는 XHTML 1.0 Transitional과 동일하지만, 프레임 콘텐츠의 사용을 허용합니다.

 선

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">


 버전

 XHTML 1.1

 설명

 이 DTD는 XHTML 1.0 Strict과 동일하지만, 모듈을 추가 할 수 있습니다. 

(예를 들어 동아시아 언어에 대한 루비의 지원을 제공하기 위해) 

 선

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">


출처&인용 : http://www.w3schools.com/tags/tag_doctype.asp

출처: http://roydest.tistory.com/entry/DOCTYPE-HTML-버전-선언 [로이데스트]



참고용으로 로이데스트님 블로그에서 퍼왔습니다. 


결론은!


<!DOCTYPE html>  이렇게 바꿔주시면 해결!


근데 매 번 저렇게 지워줄 순 없으니 따로 설정을 하도록 하겠습니다.


Preferences > Web > JSP Files > Editor > Templates


또는 Preferences 검색창에 templates



JSP with html을 선택한 뒤 Edit 버튼을 눌러줍니다.



그리고 DOCTYPE을 위와 같이 수정한뒤 OK 해주고 Apply 후 OK해주면 완료입니다.


새롭게 jsp를 만들어보니



위와 같이 잘나오네요!


Posted by 건강코더 트랙백 0 : 댓글 0



크롬에서 위와 같은 오류가 발생해서 페이지의 일부를 불러오지 못했다.


인터넷 검색 결과 /etc/hosts 를 변경하라고 해서 변경하러 들어갔더니


테스트한다고 변경했던 적이 있었다. 


127.0.0.1 localhost.localdomain localhost 

::1 localhost6.localdomain6 localhost6


디폴트 값인 위의 코드로 변경하고


# service network restart


하니 오류가 더이상 나타나지 않는다..



추가로 hosts에 들어갔던 이유는 



127.0.0.1 localhost  


0.0.0.0 localhost


이렇게 바꿔서 해결한 경우도 있으며


또는


구글에서만 발생하는 경우는 시크릿모드(ctrl+shift+n) 으로 들어가서 확인하여 실행이 잘 된다면


확장프로그램 Adblock(꼭 이게 아닐 수도 있다)이 파일명에 popup, ad, Ad 단어가 포함된 


파일명을 블락하여 발생 한다고 한다. 




도움이 되셨다면 좋아요와 댓글 달아주세요~

Posted by 건강코더 트랙백 0 : 댓글 0


위의 해당 파일 수정 중 비 정상 종류 후 수정할때마다



위와 같은 메세지가 나온다... 


보니 마지막에 .swp파일을 지우라는데 어딨는지 찾을 수도 없다.


검색 결과 숨겨진 파일이라 ll -all 명령을 통하여 해당 파일과 같은 폴더에 있음을 확인해서




지우니 이제는 이상한(?) 메세지 없이 잘 열린다!



Posted by 건강코더 트랙백 0 : 댓글 0

Putty 한글 깨짐

2017.04.12 17:38 from 웹개발/오류


putty를 통해서 특정 서버에 접속하니 한글이 깨져서 나온다.


인터넷을 뒤져 리눅스 한글설정을 해도 안된다...


해결법은 생각보다 간단했다




putty 설정으로 들어간다




character set을 UTF-8로 바꿔주니







한글이 잘 나온다. 


하지만 다음번에 접속할때 같은 설정을 반복해줘야 하므로  따로 설정을 해두자




regedit 으로 들어가서


HKEY_CLASS_USER/SOFTWARE/SimonTatham/puTTy/Session/ 


으로 들어가서 저장한 이름으로 들어가서


LineCodePage에 해당 문자열을 입력하여주고 확인을 눌려주면 끝!





Posted by 건강코더 트랙백 0 : 댓글 0

HTTP Status 500 - Unable to compile class for JSP: 오류


The code of method _jspService(HttpServletRequest, HttpServletResponse) is exceeding the 65535 bytes limit


오류시


[Tomcat_Home]/conf/web.xml 파일에 JspServlet에 init-param을 추가해 준다.


이클립스의 경우 server등록한 파일에 web.xml이 있습니다.




<init-param>

     <param-name>mappedfile</param-name>

     <param-value>false</param-value>

</init-param> 


위의 코드를  아래에 추가



 <servlet>

         <servlet-name>jsp</servlet-name>

         <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>

         <init-param>

             <param-name>fork</param-name>

             <param-value>false</param-value>

         </init-param>

         <init-param>

             <param-name>xpoweredBy</param-name>

             <param-value>false</param-value> 

        </init-param>

  <init-param> 

            <param-name>mappedfile</param-name>

             <param-value>false</param-value>

      </init-param>

        <load-on-startup>3</load-on-startup>

   </servlet> 


추가 후 tomcat 재기동 하여 해결 완료!

Posted by 건강코더 트랙백 0 : 댓글 0


갑자기 이클립스를 켰는데 위와 같은 workspace in use 에러가 떳다...


1. 사용중인workspace/.metadata 경로에.lock 파일을 삭제


2. 윈도우 작업 관리자에 eclispe 프로세스 kill


3. workspce 변경


검색 결과 세가지 방법을 찾았다


이유는 메타데이터를 제대로 정리하지 못하고 예상치 못하게 이클립스가 종료됐을때 주로 발생 되는 원인이라는데 난 그냥 종료만했는데.. 아무튼


가장 쉬운건 2번같아서 작업 관리자에 세부정보(윈10)에서 eclipse 작업 끝내기 결과



해결!!!


1번과 3번은 시도해보질 못했네요..

Posted by 건강코더 트랙백 0 : 댓글 0