이클립스 단축키

Posted by Breeze24
2016. 6. 5. 00:35 ETC/Eclipse

이클립스 검색 단축키


이클립스를 사용하다 보면 에디터 안에서 검색해야 할 일이 많다. 

특정 단어를 앞으로 찾기, 역으로 찾기 기능이 필요한데, 기본 단축키는 다음 찾기는 ctrl+k, 역으로 찾기는 ctrl+shift+k로 되어 있다. 

ctrl+k는 누르기 편하지만, ctrl+shift+k는 불편하다. 

이를 아래와 같이 하여 단축키를 변경할 수 있다. 

ctrl+shift+k를 ctrl+j로 변경하면 된다. 

.

단축키 변경하기

이클립스의 preference를 열어 general - keys를 선택한다. 

여기서 Find Previous를 찾아 Binding에 Ctrl+J를 입력한다. 

이클립스 단축키

.

톰캣 java.lang.NullPointerException

Posted by Breeze24
2016. 6. 5. 00:34 ETC/TroubleShooting

톰캣 java.lang.NullPointerException


톰캣8.0에서 input type='file'로 했을 때 아래와 같은 오류가 발생했다. 

오류 내용

HTTP Status 500 - java.lang.NullPointerException

type Exception report

message java.lang.NullPointerException

description The server encountered an internal error that prevented it from fulfilling this request.

exception

javax.servlet.ServletException: java.lang.NullPointerException
	org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:286)
	org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
	org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:648)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
	org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

root cause

java.lang.NullPointerException
	java.lang.Class.isAssignableFrom(Native Method)
	org.apache.struts.util.RequestUtils.rationalizeMultipleFileProperty(RequestUtils.java:506)
	org.apache.struts.util.RequestUtils.populate(RequestUtils.java:459)
	org.apache.struts.chain.commands.servlet.PopulateActionForm.populate(PopulateActionForm.java:50)
	org.apache.struts.chain.commands.AbstractPopulateActionForm.execute(AbstractPopulateActionForm.java:60)
	org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51)
	org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191)
	org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:305)
	org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191)
	org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283)
	org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
	org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:648)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
	org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

note The full stack trace of the root cause is available in the Apache Tomcat/8.0.28 logs.



.

해결 방법

초기에는 web.xml에 multipart 관련 설정을 하지 않아서 인가, 내가 모르는 설정이 있나 해서 인터넷 서칭을 해가면서 확인했지만, 특별한 원인을 찾지 못했다. 

하루 정도 삽질을 하다가 드디어 원인을 찾았다. 

원인은 너무 심플했다. 


<input name="xml_file" type="file" size="40">로 되어 있던 부분을

<input id="xml_file" type="file" size="40">

.

윈도우 실시간 로그 보는 방법

Posted by Breeze24
2016. 6. 5. 00:34 ETC

윈도우 tail


리눅스 또는 유닉스를 사용하다 보면 tail 명령을 통해 편리하게 실시간으로 로그를 확인할 수 있다. 

그러나 윈도우에서 설치된 톰캣의 로그를 보고 싶다고 한다면, 파일의 변화가 있을 때마다 파일을 열어서 확인해야 해서 개발을 하기에 적합하지 않다. 

.

이번 포스트에서는 윈도우에서 유닉스의 tail 같이 실시간으로 로그를 확인하는 방법에 대해 알아보자. 


윈도우 Tail

울트라에디트를 실행시킨다. 

그리고 울트라에디트에서 고급 - 설정으로 이동한다. 

여기서 파일 변경 발견이라는 항목의 변경된 파일 자동 업데이트를 선택한다. 


그 후 로그를 열면 유닉스의 Tail 처럼 로그를 실시간으로 볼 수 있다. 


윈도우 tail

.

'ETC' 카테고리의 다른 글

블로그 최적화 방법  (0) 2016.06.05
SVN 서비스 등록 및 해제  (0) 2016.06.05
JIRA 한글 패치  (0) 2016.06.05
SVN 서버 자동 실행 스크립트  (0) 2016.06.05
JIRA 한글화 하는 방법  (0) 2016.06.05