'작업노트/Error Handling'에 해당되는 글 19건

  1. 2007.12.18 [Eclipse] Resource is out of sync with the file system : ... 1
  2. 2007.09.07 서블릿을 사용할 경우 js파일 경로
  3. 2007.07.05 404 - Servlet action is not available
  4. 2007.06.27 error while loading shared libraries
  5. 2007.06.01 javax.servlet.ServletException: You have an error in your SQL syntax;
  6. 2007.05.29 NullPointerException...
  7. 2007.05.28 warning: unmappable character for encoding MS949 1
  8. 2007.05.27 [Struts] getDataSource() 메소드 관련..
  9. 2007.05.02 [NetBeans] Generics are not supported in -source 1.4(try using -source 1.5) 1

[Eclipse] Resource is out of sync with the file system : ...

|

커넥션 풀을 사용하기 위해 JOCL 파일을 이클립스가 아닌
(이클립스에서는 인식을 하지 못한다..왜!!)

워드패드를 통해 수정을 한 이후

이클립스에서 톰캣을 구동하려고 하니 저런 에러가 발생하였다.

이클립스와 파일 시스템간의 싱크가 안맞아서 생긴 문제 인 듯 한데...

이해 할 수 없음 ㅡ.ㅡ;;

아무튼 Project > Clean으로 깔끔하게 다시 리빌드 시켜주면 해결된다.

MyEclipse를 쓰면 신경안써도 된다던데..

그럴 필요성 까지는 못느끼겠다.

And

서블릿을 사용할 경우 js파일 경로

|
만약 자바스크립트를 직접 jsp파일 안에 기입한 것이 아니라

.js파일 안에 기입하고 jsp파일과 같은 디렉토리 안에 두고

script태그의 src 프로퍼티로 포함을 시킨 경우라면

그때의 상대경로는 jsp파일이 있는 디렉토리(sub/a.jsp)를 기준으로 하는 것이 아니라

서블릿의 경로명(/a.do)을 기준으로 하는 것이므로,

경로명에 jsp파일이 있는 디렉토리 명을 추가 해주어야 한다.

<script type="text/javascript" src="sub/httpRequest.js"></script>

이런식으로 말이다.

별것도 아닌데 삽질아닌 삽질을 하고야 말았다.

왠지 나중에도 까먹고 삽질할 것 같아 기록을 남긴다.-_-
And

404 - Servlet action is not available

|

여러가지 경우에 이 메세지가 뜰 수 있으나

이번 경우는

dbcp파일을 tomcat/common/lib 폴더에 두지 않아 생긴 문제

struts-config.xml 파일에서 data-source설정 부분에서

org.apache.commons.dbcp.BasicDataSource 를 찾지 못한것이다.

사소한거라 잊기 쉬우니 항상 기억하자.

And

error while loading shared libraries

|
error while loading shared libraries: libstdc++.so.5: cannot open shared object file: No such file or directory

해결책은...
root>#yum install libstdc++.so.5

출처 : Tong - ssabro님의 UNIX/Linux통

And

javax.servlet.ServletException: You have an error in your SQL syntax;

|

HTTP Status 500 -


type Exception report

message

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

exception

javax.servlet.ServletException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '=5' at line 1
	org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:535)
	org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:433)
	org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
	org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
	org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:368)

root cause

com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '=5' at line 1
	com.mysql.jdbc.SQLError.createSQLException(SQLError.java:936)
	com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2941)
	com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1623)
	com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1715)
	com.mysql.jdbc.Connection.execSQL(Connection.java:3243)
	com.mysql.jdbc.Connection.execSQL(Connection.java:3172)
	com.mysql.jdbc.Statement.executeQuery(Statement.java:1197)
	org.apache.commons.dbcp.DelegatingStatement.executeQuery(DelegatingStatement.java:208)
	myclasses.BbsDAO.getArticle(BbsDAO.java:84)
	myclasses.BbsDAO.getArticle(BbsDAO.java:71)
	myclasses.BbsAction.execute(BbsAction.java:49)
	org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
	org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
	org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
	org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:368)

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


mysql DB에서 rcount는 int(6)으로 되어있다.
그런데 DAO class 예제상의 코드에서는

long rcount = rs.getLong("rcount");
rs.updateLong("rcount", rcount+1);

이처럼 long형으로 처리하고 있다.
그래서 long->int로 바꾸었더니 자알~ 된다!

역시 책에 있는 예제라고 100% 믿을건 못되는 듯 하다.

And

NullPointerException...

|

HTTP Status 500 -


type Exception report

message

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

exception

org.apache.jasper.JasperException: Exception in JSP: /bbs_list.jsp:146 143: //if(p == null) { p = 1; } 144: out.print(p); 145: 146: int mypage = p.intValue(); 147: int currentBlock = (int)Math.ceil(mypage / (double)numPerBlock); 148: Integer tp = (Integer) request.getAttribute("totalPage"); 149: Stacktrace: org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:504) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:368) 

root cause

java.lang.NullPointerException org.apache.jsp.bbs_005flist_jsp._jspService(bbs_005flist_jsp.java:318) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:368) 

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




어의없는 실수.. jsp파일을 바로 먼저 실행해서 생긴문제.
action을 거치질 않아서 속성이 setting되지도 않았는데,
jsp를 바로 실행해서 getting하려 했으니 당연히 안될 수 밖에
bbs.do로 접근하여 실행하면 잘된다.(struts-config.xml에서 input 키워드 부분 비우고 나서...)
이걸로 얼마나 해맸던가... 너무 허무하다ㅠ
And

warning: unmappable character for encoding MS949

|

jsp파일을 run시킬때 이런 워닝이 떴다.

왜 이런 인코딩 에러가 나는지는 모르겠으나...

jsp파일을 싱글컴파일 하고 실행하니 다시 뜨지 않는다..

왜일까 ... 나에겐 멘토가 필요해...
And

[Struts] getDataSource() 메소드 관련..

|
데이터소스의 정보를 얻기 위해서는

DataSource dataSource = getDataSource( request, "key" );

라고 해줘야 되는데...

getDataSource라는 메소드는 org.apache.struts.action.Action 안에 있다...-_-

진작에 알았으면 Action 클래스 상속을 안해서 에러가 났다는걸 빨리 알 수 있었을 텐데...

답답....허다...
And

[NetBeans] Generics are not supported in -source 1.4(try using -source 1.5)

|

왜 그런가 했더니

초간단 설정문제였다. -_-

프로젝트 생성시에

Set Source Level to 1.4 라고 되어있는 check box에

체크를 해제시키고 생성시켜야한다.

이미 만들어진 프로젝트라면

프로젝트 속성(Properties)에 들어가서

Source Level을 1.4에서 1.5로 맞춰주면 해결된다.

And
prev | 1 | 2 | next