Á¦¸ñ : websphere5v + oracle8¿¡¼ CLOB¹®Á¦ ±Û¾´ÀÌ: ¼Õ´Ô(guest) 2006/01/17 17:36:48 Á¶È¸¼ö:6341 ÁÙ¼ö:61 |
|
´ÙÀ½°ú°°Àº clobÀ» ÀÌ¿ëÇÏ¿© DB¿¡ µ¥ÀÌÅ͸¦ ³Ö´Â À¥ÇÁ·Î±×·¥ÀÔ´Ï´Ù.
Websphere 5v°ú Oracle 8i¹öÀüÀ» »ç¿ëÇÕ´Ï´Ù.
classes12´Â 8i¹öÀü°ú 9i¹öÀüÀ» »ç¿ëÇØ º¸¾Ò´Âµ¥ ¶È°°½À´Ï´Ù.
µðºñÁ¢¼ÓÀº Àß µË´Ï´Ù.
CLOB clob = ((OracleResultSet)rs).getCLOB(1);
ÀÌ ¹®Àå¿¡¼ ClassCastExceptionÀÌ ¹ß»ýÇÕ´Ï´Ù.
°³¹ßÀº tomcatÀ¸·Î PCȯ°æ¿¡¼ Çϰí AIX+Websphere ȯ°æ¿¡ Æ÷ÆÃÇÏ·Á´Ï ÀÌ·±¿¡·¯°¡ ³ª¿É´Ï´Ù.
ÇØ°á¹æ¾ÈÀ» ¾Æ½Ã¸é ºÎʵ右´Ï´Ù.
°¨»çÇÕ´Ï´Ù.
ErrorÄÚµå:
java.lang.ClassCastException: com.ibm.ws.rsadapter.jdbc.WSJdbcResultSet
¿¡·¯³ª´Â ¼Ò½º:
con = ConnectionFactory.getConnection();
StringBuffer query = new StringBuffer();
query.append("\n INSERT INTO TB_BOARD_ARTICLE (ARTICLE_ID ");
query.append("\n , BBS_ID ");
query.append("\n , CONTENTS ");
query.append("\n ) VALUES(? , ? ,empty_clob() )");
ps = con.prepareStatement(query.toString());
ps.setString( 1 , maxId );
ps.setString( 2 , bbs_id );
ps.execute();
ps.close();
con.setAutoCommit(false);
StringBuffer queryclob = new StringBuffer();
queryclob.append(" SELECT CONTENTS FROM TB_BOARD_ARTICLE ");
queryclob.append(" WHERE ARTICLE_ID= "+maxId);
queryclob.append(" FOR UPDATE ");
st = con.createStatement();
rs = st.executeQuery(queryclob.toString());
if (rs.next())
{
CLOB clob = ((OracleResultSet)rs).getCLOB(1);
Writer writer = clob.getCharacterOutputStream();
Reader src = new CharArrayReader(contents.toCharArray());
char[] buffer = new char[1024];
int read = 0;
while ( (read = src.read(buffer,0,1024)) != -1)
{
writer.write(buffer, 0, read);
}
src.close();
writer.close();
}
con.commit();
con.setAutoCommit(true);
|
Á¦¸ñ : Re: À¥½ºÇǾî´Â Áö¿øÇÏÁö ¾Ê½À´Ï´Ù. ±Û¾´ÀÌ: ÀÌ¿ø¿µ(javaservice) 2006/01/17 23:18:31 Á¶È¸¼ö:1465 ÁÙ¼ö:44 |
|
À¥½ºÇǾî´Â ±×¿Í °°ÀÌ OracleResulSetÀ¸·Î °ð¹Ù·Î ij½ºÆÃÇÏ´Â Çü½ÄÀ» Áö¿øÇÏÁö ¾Ê½À´Ï´Ù.
±»ÀÌ, ¾ÇÂø°°ÀÌ, ¹«½¼ÀÏÀÌ À־, ´©°¡ ¹¹¶ó ±×·¡µµ, ¿ìÂ¥µç, ²À »ç¿ëÇϽ÷Á¸é, ´ÙÀ½°ú °°ÀÌ
ÇÏ½Ã¸é µË´Ï´Ù.
con = ConnectionFatctory.getConnection();
......
Connection oconn = (Connection)com.ibm.ws.rsadapter.jdbc.WSJdbcUtil.getNativeConnection(con);
//st = con.createStatement();
st = oconn.createStatement();
rs = st.executeQuery(queryclob.toString());
if (rs.next())
{
CLOB clob = ((OracleResultSet)rs).getCLOB(1);
Writer writer = clob.getCharacterOutputStream();
Reader src = new CharArrayReader(contents.toCharArray());
char[] buffer = new char[1024];
int read = 0;
while ( (read = src.read(buffer,0,1024)) != -1)
{
writer.write(buffer, 0, read);
}
src.close();
writer.close();
}
con.commit();
con.setAutoCommit(true);
NOTE: com.ibm.ws.rsadapter.jdbc.WSJdbcUtil.class´Â WAS_HOME/lib/rsadapterspi.jar¿¡
ÀÖ½À´Ï´Ù.
NOTE: ±×·¯³ª, À§Ã³·³ Oracle Á¾¼ÓÀûÀÎ oracle.sql.CLOBÇüÀ» ±»ÀÌ °íÁýÇÏÁö ¾Ê±â¸¦ Èñ¸ÁÇØ
º¾´Ï´Ù. JDBC 10g Driver¸¦ ÀÌ¿ëÇϰí, À¥½ºÇǾî 5.x¸¦ »ç¿ëÇϽøé JDBC 2.0 Ç¥ÁØÀÎ java.sql.Clob
À» ÀÌ¿ëÇØ µ¿ÀÏÇÑ ÀÛ¾÷À» ÇÒ ¼ö Àְŵç¿ä.
ÀÚ¹Ù¼ºñ½º³Ý ÀÌ¿ø¿µ
Phone: 010-6239-6498
E-mail: NOSPAM_lwy@javaservice.com
MSN: NOSPAM_javaservice@hanmail.net
|
Á¦¸ñ : Re: À¥½ºÇǾî´Â Áö¿øÇÏÁö ¾Ê½À´Ï´Ù. ±Û¾´ÀÌ: ¼Õ´Ô(guest) 2006/01/18 23:21:59 Á¶È¸¼ö:1849 ÁÙ¼ö:56 |
|
´äº¯°¨»çÇÕ´Ï´Ù.
À§¿¡ ´äº¯ÁֽŴë·Î ÇØº¸¾Ò½À´Ï´Ù.
Connection oconn = (Connection)com.ibm.ws.rsadapter.jdbc.WSJdbcUtil.getNativeConnection((com.ibm.ws
.rsadapter.jdbc.WSJdbcConnection)con);
st = oconn.createStatement();
getNativeConnection°¡ WSJdbcConnection ÇüÀ̾î¾ßÇÑ´Ù°íÇØ¼
À§¿Í°°ÀÌ Ä³½ºÆÃÀ» Çß½À´Ï´Ù.
±×·¨´õ´Ï ¾Æ·¡¿Í°°Àº ¿¡·¯°¡ ¹ß»ýÇß½À´Ï´Ù.
Á¾ÀÏ ÇØ°áÇØº¸·Á°í ³ë·ÂÇߴµ¥ °è¼Ó Á¦ÀÚ¸®¸¸ ¸Éµµ³×¿ä.
Çѹø ´õ °¡¸£Ä§À» ÁÖ½Ã¸é °í¸¿°Ú½À´Ï´Ù.
[06-01-18 23:04:50:084 KST] 19cb84f9 SharedPool I J2CA0086W: jdbc/familyDS ÀÚ¿øÀ¸·ÎºÎÅÍ °øÀ¯
°¡´É ¿¬°á MCWrapper id 22eb84f2 Managed connection com.ibm.ws.rsadapter.spi.WSRdbManagedConnection
Impl@5c9cc4f2 State:STATE_TRAN_WRAPPER_INUSE
ÀÌ(°¡) ·ÎÄà Ʈ·£Àè¼Ç Æ÷ÇÔ °æ°è ³»¿¡¼ »ç¿ëµÇ¾ú½À´Ï´Ù.
[06-01-18 23:05:00:936 KST] 19cb84f9 WebGroup E SRVE0026E: [Servlet ¿À·ù]-[com/ibm/ws/rsadap
ter/jdbc/WSJdbcConnection]: java.lang.NoClassDefFoundError: com/ibm/ws/rsadapter/jdbc/WSJdbcConnection
at kr.co.flg.dao.board.BbsBoardDAO.insertContents(BbsBoardDAO.java:1301)
at kr.co.flg.dao.board.BbsBoardDAO.insert(BbsBoardDAO.java:1079)
at kr.co.flg.action.happy.TodayTalkAction.insert(TodayTalkAction.java:158)
at org.apache.jsp._talk_5F_writeProc._jspService(_talk_5F_writeProc.java:217)
at com.ibm.ws.webcontainer.jsp.runtime.HttpJspBase.service(HttpJspBase.java:89)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.ibm.ws.webcontainer.jsp.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:344)
at com.ibm.ws.webcontainer.jsp.servlet.JspServlet.serviceJspFile(JspServlet.java:598)
at com.ibm.ws.webcontainer.jsp.servlet.JspServlet.service(JspServlet.java:696)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doService(StrictServletInstance.java:110)
at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._service(StrictLifecycleServlet.java:174)
at com.ibm.ws.webcontainer.servlet.IdleServletState.service(StrictLifecycleServlet.java:313)
at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.service(StrictLifecycleServlet.java:116)
at com.ibm.ws.webcontainer.servlet.ServletInstance.service(ServletInstance.java:258)
at com.ibm.ws.webcontainer.servlet.ValidServletReferenceState.dispatch(ValidServletReferenceState.java:42)
at com.ibm.ws.webcontainer.servlet.ServletInstanceReference.dispatch(ServletInstanceReference.java:40)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.handleWebAppDispatch(WebAppRequestDispatcher.java:872)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java:491)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:173)
at com.ibm.ws.webcontainer.srt.WebAppInvoker.doForward(WebAppInvoker.java:79)
at com.ibm.ws.webcontainer.srt.WebAppInvoker.handleInvocationHook(WebAppInvoker.java:199)
at com.ibm.ws.webcontainer.cache.invocation.CachedInvocation.handleInvocation(CachedInvocation.java:71)
at com.ibm.ws.webcontainer.srp.ServletRequestProcessor.dispatchByURI(ServletRequestProcessor.java:182)
at com.ibm.ws.webcontainer.oselistener.OSEListenerDispatcher.service(OSEListener.java:331)
at com.ibm.ws.webcontainer.http.HttpConnection.handleRequest(HttpConnection.java:56)
at com.ibm.ws.http.HttpConnection.readAndHandleRequest(HttpConnection.java(Compiled Code))
at com.ibm.ws.http.HttpConnection.run(HttpConnection.java(Compiled Code))
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:592)
JDBC 10g Driver¸¦ »ç¿ëÇ϶õ ¾ê±â´Â 10¹öÀü¿ë classes12.zipÀ¸·Î µ¥ÀÌÅͼҽº¸¦ »õ·Î ¿¬°áÇ϶ó´Â ¸»¾¸À̽ÅÁö¿ä??
¼¹ö°ü¸®ÀÚ°¡ µû·ÎÀÖ´Â ½Ã½ºÅÛÀ̶ó¼ Á¦°¡ Ãß°¡ÇÒ ¼ö°¡¾ø°í ¿äûÀ» Çß´õ´Ï °ï¶õÇØÇÏ´õ±º¿ä..
¿Ö µû·ÎÇÊ¿äÇÑÁö ¸ð¸£°Ú´Ù¸é¼¿ä..
|
Á¦¸ñ : Re: ÀÌ·¸°Ô ÇØ º¸¼¼¿ä. ±Û¾´ÀÌ: ÀÌ¿ø¿µ(javaservice) 2006/01/19 00:35:47 Á¶È¸¼ö:1431 ÁÙ¼ö:59 |
|
¿Ö NoClassDefFoundErrorÀÌ ¹ß»ýÇÏ´ÂÁö´Â Àß ¸ð¸£°Ú³×¿ä.
±×·³ ÀÌ·¸°Ô ÇØ º¸¼¼¿ä. ÷ºÎÇÑ wasutil.jar´Â ¾Æ·¡ÀÇ Å¬·¡½º¸¦ °®°í ÀÖ½À´Ï´Ù.
------------------------------------------------------------------------------
package com.ibm.ws.rsadapter.jdbc;
import com.ibm.ws.rsadapter.jdbc.WSJdbcResultSet;
public class WASUtil
{
public static Object getOracleResultSet(java.sql.ResultSet rs){
if(rs instanceof WSJdbcResultSet){
try{
Class[] arg_c = {};
java.lang.reflect.Method method = rs.getClass().getMethod("getJDBCImplObject", arg_c);
Object[] arg_o = {};
return method.invoke(rs, arg_o);
}
catch(Throwable e){
throw new RuntimeException("WASUtil.getOracleResultSet(rs):" + e.toString());
}
}
throw new RuntimeException("WASUtil.getOracleResultSet(rs) need WSJdbcResultSet only as parameter");
}
}
------------------------------------------------------------------------------
À̸¦ WAS_HOME/lib/ µð·ºÅ丮¿¡ º¹»çÇØ ³Ö½À´Ï´Ù. (¾Æ¸¶ ¹Ý¿µµÇ·Á¸é Àç±âµ¿ÀÌ ÇÊ¿äÇÕ´Ï´Ù.)
±×´ÙÀ½ ÇØ´ç ¾îÇø®ÄÉÀÌ¼Ç ¼Ò½º¿¡¼´Â (¾Õ¼± °¡À̵å´Â ¹«½ÃÇϰí) ´ÙÀ½°ú °°ÀÌ ÇØ º¸¼¼¿ä.
if (rs.next())
{
//CLOB clob = ((OracleResultSet)rs).getCLOB(1);
OracleResultSet ors = (OracleResultSet)com.ibm.ws.rsadapter.jdbc.WASUtil.getOracleResultSet(rs);
CLOB clob = ors.getCLOB(1);
Writer writer = clob.getCharacterOutputStream();
Reader src = new CharArrayReader(contents.toCharArray());
char[] buffer = new char[1024];
int read = 0;
while ( (read = src.read(buffer,0,1024)) != -1)
{
writer.write(buffer, 0, read);
}
src.close();
writer.close();
}
NOTE: oracle.sql.CLOBÇüÀ» »ç¿ëÇÒ ¶§´Â ÀÌ¹Ì Oracle JDBC Driver¿¡ Á¾¼ÓÀûÀÌ µÇ¾úÀ¸¸ç,
ÀÌ´Â WAS°¡ JDBC Wrapper¸¦ »ç¿ëÇϰí ÀÖÀ» ¶§, ƯÈ÷ ResultSetÀ» WrappingÇϰí ÀÖ´Â WAS¿¡¼´Â
µ¿ÀÛÇÏÁö ¾Ê°Ô µË´Ï´Ù.
À§Ã³·³ ¶Ç´Ù½Ã wasutil.jar¸¦ Á¦°øÇϰí, getOracleResultSet(rs)¸¦ ÅëÇØ OracleResultSetÀ»
²¨³»¿À´Â ÄÚµå´Â À¥½ºÇǾî 5.x/6.x, Oracle JDBC Driver¶ó´Â µÎ°¡Áö ¸ðµÎ¿¡ Á¾¼ÓÀûÀÌ°Ô µË´Ï´Ù.
ÀÚ¹Ù¼ºñ½º³Ý ÀÌ¿ø¿µ
Phone: 010-6239-6498
E-mail: NOSPAM_lwy@javaservice.com
MSN: NOSPAM_javaservice@hanmail.net
wasutil.jar (1118 Bytes)
|
Á¦¸ñ : Re: Å×½ºÆ® ÇØº¸´Ï ¾Æ·¡¿Í °°Àº ¿¡·¯°¡ ³ª³×¿ä !! ±Û¾´ÀÌ: ¼Õ´Ô(guest) 2006/02/09 19:29:06 Á¶È¸¼ö:1571 ÁÙ¼ö:15 |
|
The following exception was logged java.lang.RuntimeException:
WASUtil.getOracleResultSet(rs):java.lang.NoSuchMethodException:
com.ibm.ws.rsadapter.jdbc.WSJdbcResultSet.getJDBCImplObject()
at com.ibm.ws.rsadapter.jdbc.n.a(DashoA12957)
Âü°í·Î ¹öÁ¯Àº : 5.1.1.7 ÀÔ´Ï´Ù.
°¨»çÇÕ´Ï´Ù.
|
Á¦¸ñ : Re: ¿¡°ø... ±Û¾´ÀÌ: ÀÌ¿ø¿µ(javaservice) 2006/02/09 23:55:18 Á¶È¸¼ö:1512 ÁÙ¼ö:8 |
|
À¥½ºÇÇ¾î ¹öÀüÀÌ ¿Ã¶ó°¨¿¡ µû¶ó rsadapterspi.jar¿¡ RetroGaurd°¡ °É·Á Àֳ׿ä.
Çö ¹öÀüÀÇ rsadapterspi.jar¸¦ ¿Ã·ÁÁÖ½Ã¸é º¯ÇüµÈ getJDBCImplObject() ¸Þ¼Òµå¸¦ ã¾Æ
µ¿ÀÛÇϵµ·ÏÀº ÇÒ ¼ö ÀÖ°ÚÀ¸³ª, ÀÌ·¸°Ô µÇ¸é ³Ê¹« ±í¼÷È÷ Á¾¼ÓÀûÀÌ µÇ¾î ¹ö¸®³×¿ä.
ÀÚ¹Ù¼ºñ½º³Ý ÀÌ¿ø¿µ
Phone: 010-6239-6498
E-mail: NOSPAM_lwy@javaservice.com
MSN: NOSPAM_javaservice@hanmail.net
|
Á¦¸ñ : Re: ³×! Çö ¹öÁ¯ÀÇ rsadapterspi.jar¸¦ ¿¾îº¸´Ï getJDBCImplObject()ÀÌ finall Method·Î.. ±Û¾´ÀÌ: ¼Õ´Ô(guest) 2006/02/10 09:26:35 Á¶È¸¼ö:1452 ÁÙ¼ö:11 |
|
RetroGaurd°¡ °É·Á ÀÖ´Ù´Â ¸»¾¸ÀÌ ¹«½¼ ¸»¾¸ÀÎÁö¿ä ?
Çö ¹öÁ¯ÀÇ rsadapterspi.jar¸¦ ¿¾îº¸´Ï getJDBCImplObject()ÀÌ finall Method·Î Á¸Àç ÇÕ´Ï´Ù.
Oracle CLOBÇüÀ» »ç¿ë ÇØ¾ß¸¸ Çϴµ¥, À¥½ºÇǾ¼´Â »ç¿ë ÇÒ ¹æ¹ýÀÌ ¾ø´ÂÁö¿ä ?
ÇöÀç ¹öÁ¯(5.1.1.7 ) rsadapterspi.jar¸¦ ÷ºÎ ÇÕ´Ï´Ù.
°¨»çÇÕ´Ï´Ù.
rsadapterspi.jar (297547 Bytes)
|
Á¦¸ñ : Re: Àüü ½ºÅÃÀ» ¿Ã·ÁÁÖ¼¼¿ä ±Û¾´ÀÌ: ÀÌ¿ø¿µ(javaservice) 2006/02/10 10:24:31 Á¶È¸¼ö:1540 ÁÙ¼ö:16 |
|
Á¶±Ý ÀÌ»óÇϳ׿ä... ¿¡·¯°¡ ¹ß»ýÇÑ ¾Æ·¡ÀÇ Àü ÈÄ Àüü ½ºÅÃÆ®·¹À̽º¸¦ ¿Ã·ÁÁàºÁ ÁÖ¼¼¿ä.
The following exception was logged java.lang.RuntimeException:
WASUtil.getOracleResultSet(rs):java.lang.NoSuchMethodException:
com.ibm.ws.rsadapter.jdbc.WSJdbcResultSet.getJDBCImplObject()
at com.ibm.ws.rsadapter.jdbc.n.a(DashoA12957)
PS: wasutil.jar¸¦ À¥½ºÇǾî 4.x/5.x/6.x ÀÇ lib/ µð·ºÅ丮¿¡ ³Ö°í, À§ ó·³ ÄÚµùÇÒ °æ¿ì
¿øÇϽô Oracle CLOB Á¢±ÙÀÌ °¡´ÉÇϵµ·Ï ÇÏ´Â °Í±îÁö ÀÔ´Ï´Ù. ¾ÖÇø®ÄÉÀ̼ÇÀÌ À¥½ºÇǾ
Á¾¼ÓÀûÀÌ µÊÀ» ÀÎÁöÇÏ´Â ¹üÀ§ ³»¿¡¼¿ä..
ÀÚ¹Ù¼ºñ½º³Ý ÀÌ¿ø¿µ
Phone: 010-6239-6498
E-mail: NOSPAM_lwy@javaservice.com
MSN: NOSPAM_javaservice@hanmail.net
|
Á¦¸ñ : Re: ³×. °¨»çÇÕ´Ï´Ù. Àüü ½ºÅØ ¿Ã¸³´Ï´Ù. ±Û¾´ÀÌ: ¼Õ´Ô(guest) 2006/02/10 13:06:17 Á¶È¸¼ö:1463 ÁÙ¼ö:27 |
|
Àúµµ Á¶±Ý ÀÌ»óÇÏ´Ù°í´Â »ý°¢ µË´Ï´Ù.
¿¡·¯ ³»¿ëÀº ¸Þ¼Òµå(getJDBCImplObject())¸¦ ãÁö ¸øÇÏ´Â ¿¡·¯ °°Àºµ¥¿ä.
[2/10/06 12:57:52:208 KST] 18c51459 OptioninfoAct E com.htns.admin.travel.action.OptioninfoAction
java.lang.RuntimeException: WASUtil.getOracleResultSet(rs):java.lang.NoSuchMethodException: com.ibm
.ws.rsadapter.jdbc.WSJdbcResultSet.getJDBCImplObject()
[2/10/06 12:57:52:296 KST] 18c51459 BaseAction E com.neotek.core.action.BaseAction WASUtil.getO
racleResultSet(rs):java.lang.NoSuchMethodException: com.ibm.ws.rsadapter.jdbc.WSJdbcResultSet.getJD
BCImplObject()
[2/10/06 12:57:52:307 KST] 18c51459 BaseAction E com.neotek.core.action.BaseAction TRAS0014I:
The following exception was logged java.lang.RuntimeException: WASUtil.getOracleResultSet(rs):java.
lang.NoSuchMethodException: com.ibm.ws.rsadapter.jdbc.WSJdbcResultSet.getJDBCImplObject()
at com.ibm.ws.rsadapter.jdbc.n.a(DashoA12957)
at com.neotek.client.manager.QueryManager.executeUpdate(DashoA12957)
...(ÀÌÇÏ »ý·«)...
Oracle 9i ÀÇ CLOBÇü Çʵå Insert Æ®·£Àè¼ÇÀ» ÇàÇÏ´ø µµÁß
À§ ½ºÅذú °°Àº ¿¡·¯°¡ ¹ß»ý ÇÕ´Ï´Ù.
// ÄÚµù
OracleResultSet ors = (OracleResultSet)com.ibm.ws.rsadapter.jdbc.WASUtil.getOracleResultSet(rs);
CLOB clob = ors.getCLOB(1);
°¨»çÇÕ´Ï´Ù.
|
Á¦¸ñ : Re: µÆ½À´Ï´Ù! ÀÌ·¸°Ô ÇÏ½Ã¸é µÇ°Ú½À´Ï´Ù. ±Û¾´ÀÌ: ÀÌ¿ø¿µ(javaservice) 2006/02/11 11:31:17 Á¶È¸¼ö:1994 ÁÙ¼ö:62 |
|
±âÁ¸¿¡ µå¸° wasutil.jar´Â »èÁ¦ÇϽðí, ´ë½Å ÷ºÎÇÑ clobutil.jar¸¦ ¹Ýµå½Ã WAS_HOME/lib/ µð·ºÅ丮¿¡
³Ö¾îÁÖ¼¼¿ä. ÷ºÎÇÑ »õ·Î¿î clobutil.jar ¿¡´Â ´ÙÀ½°ú °°Àº ¼Ò½º°¡ µé¾î ÀÖ½À´Ï´Ù.
-------------------8><------------------------------
package com.ibm.ws.rsadapter.jdbc;
import com.ibm.ws.rsadapter.jdbc.WSJdbcResultSet;
public class WASUtil
{
public static Object getOracleResultSet(java.sql.ResultSet rs){
if(rs instanceof WSJdbcResultSet){
try{
WSJdbcResultSet wrs = (WSJdbcResultSet)rs;
return wrs.getJDBCImplObject();
}
catch(Throwable e){
throw new RuntimeException("WASUtil.getOracleResultSet(rs):" + e.toString());
}
}
else {
String classname = rs.getClass().getName();
if(classname.lastIndexOf("OracleResultSetImpl")>-1 || classname.lastIndexOf("ResultSet4Oracle")>-1 )
return rs;
}
//else
throw new RuntimeException(
"WASUtil.getOracleResultSet(rs) needs olny OracleResultSetImpl " +
"or IBM's WSJdbcResultSet as a parameter");
}
}
-------------------8><------------------------------
ÄÚµùÀº °¡ÀÌµå µå¸° ¹Ù¿Í °°ÀÌ ´ÙÀ½°ú °°ÀÌ ÇÏ½Ã¸é µÇ°Ú½À´Ï´Ù.
//CLOB clob = ((OracleResultSet)rs).getCLOB(1); ;
OracleResultSet ors = (OracleResultSet)com.ibm.ws.rsadapter.jdbc.WASUtil.getOracleResultSet(rs);
CLOB clob = ors.getCLOB(1);
NOTE:
- WASUtil.class ÀÇ package°¡ ¿Ö "com.ibm.ws.rsadapter.jdbc"À̾î¾ß Çϳĸé,
WSJdbcResultSet.classÀÇ "getJDBCImplObject()"¶ó´Â ¸Þ¼ÒµåÀÇ Á¢±ÙÀÚ°¡ ¾ø±â¿¡ ¹Ýµå½Ã
°°Àº package¿¡¼¸¸ ºÒ·ÁÁú ¼ö Àֱ⠶§¹®ÀÔ´Ï´Ù.
- ¾Õ¼ refrectionÀ¸·Î ÇßÀ» °æ¿ì NoSuchMethodExcpetionÀÌ ¹ß»ýÇÑ ÀÌÀ¯´Â refrectionÀº
public method¸¸ Á¢±ÙÀÌ °¡´ÉÇϳ׿ä.
- À¯Æ¿¸®Æ¼·Î ¸¸µç clobutil.jar¸¦ ¿Ö WAS_HOME/lib/ µð·¢Å丮¿¡ ³Ö¾î¾ß ÇÏ´À³Ä´Â, WASUtil.class´Â
rsadapterspi.jar¿¡ µé¾î ÀÖ´Â WSJdbcResultSet.class¿Í °°Àº Ŭ·¡½º·Î´õ¿¡ ÀÇÇØ ·ÎµùµÇ¾î¾ß
Çϱ⠶§¹®ÀÔ´Ï´Ù.
- WASUtil.getOracleResultSet(rs) À¯ÇüÀ¸·Î ÄÚµùµÈ ¼Ò½º´Â IBM À¥½ºÇǾî 5.x, 6.x(?)¿¡ Á¾¼ÓÀûÀÔ´Ï´Ù.
- ¼Ò½ºÄÚµå Áß¿¡ "OracleResultSetImpl"Àº OracleResultSet ¿øº»ÀÌ µé¾î¿Â °æ¿ì°Å³ª, ȤÀº
"ResultSet4Oracle"Àº Çà¿©³ª Á¦´ÏÆÛ¸¦ Àû¿ëÇßÀ» ¶§µµ µ¿ÀÛÅä·Ï Çϱâ À§ÇÑ Á¶Ä¡¿´½À´Ï´Ù.
- ÀÌ·¯ÇÑ ¹æ½ÄÀº IBMÀ¥½ºÇÇ¾î ¿£ÁøÀ» ¹«¾ùÀΰ¡ °Çµå¸° °ÍÀÌ ¾Æ´Õ´Ï´Ù. À¥½ºÇÇ¾î ³»ºÎ¿¡ Á¸ÀçÇÏ´Â
¸Þ¼Òµå¸¦ ¿ªÀ¸·Î Ȱ¿ëÇÑ °Í »ÓÀÔ´Ï´Ù.
PS: °ÅÀÇ 1³âµ¿¾È ¼Õ ³õ¾Ò´ø IBM À¥½ºÇǾ ³ëÆ®ºÏ¿¡ ´Ù½Ã ÀνºÅçÇϰí, µ¿ÀÏÇÑ fixpacksÀ¸·Î
¸ÂÃß´À¶ó ²Ï³ª ½Ã°£ÀÌ °É·È³×¿ä... ;-)
ÀÚ¹Ù¼ºñ½º³Ý ÀÌ¿ø¿µ
Phone: 010-6239-6498
E-mail: NOSPAM_lwy@javaservice.com
MSN: NOSPAM_javaservice@hanmail.net
clobutil.jar (1136 Bytes)
|
Á¦¸ñ : Re: ´ë´ÜÇϽʴϴÙ. °¨»çÇÕ´Ï´Ù. ±Û¾´ÀÌ: ¼Õ´Ô(guest) 2006/02/13 13:22:08 Á¶È¸¼ö:1494 ÁÙ¼ö:4 |
|
´ë´ÜÇϽʴϴÙ.
°¨»çÇÕ´Ï´Ù.
|
Á¦¸ñ : Re: WSADÀÇ Å×½ºÆ® ¼¹ö¿¡¼´Â... ±Û¾´ÀÌ: ¼Õ´Ô(guest) 2006/03/27 21:39:40 Á¶È¸¼ö:2095 ÁÙ¼ö:11 |
|
¼³Ä¡°æ·Î°¡ À§¿¡ ÇÏ°í ´Ù¸£´Ï±î¿ä..
Å×½ºÆ® ¼¹ö ¹öÀüÀÇ 5.1ÀÇ °æ¿ì runtime\base_v51\lib¿¡ clobutil.jar¸¦ ³Ö°í..
¶óÀ̺귯¸® jar °æ·Î Ãß°¡ÇϽŴÙÀ½¿¡.. WSAD ´Ù½Ã ½ÇÇàÇÏ¼Å¾ß ÇÕ´Ï´Ù.
3½Ã°£µ¿¾È »ý¾¤ Çߴµ¥.. ¼¹ö Àç½ÃÀÛÀÌ ¾Æ´Ï¶ó WSAD Àç½ÃÀÛÀ» ÇÏ´Ï µÇ´õ±º¿ä.
¾ÏÅÏ.. ´öºÐ¿¡ ÇØ°áÇß½¿´Ù.
°¨»ç°¨»ç
|
|