ÆäÀÌÁö µ¥ÀÌÅÍ º¸±â¿¡¼ ÇÁ¸® ·¹À̾ƿô Å×À̺íÀ» Æ÷ÇÔÇÏ´Â ÆäÀÌÁö·Î ²ø¾î´Ù ³õÀ¸·Á°í ÇÒ ¶§ Ä¿¼°¡ Ç¥½ÃµÇÁö ¾Ê¾Æ ²ø¾î¼ ³õÀ» ¼ö ¾ø½À´Ï´Ù.
ÆäÀÌÁö µ¥ÀÌÅÍ º¸±â¿¡¼ ²ø¾î¼ ³õ±â¸¦ ¼öÇàÇÏ·Á¸é, ¸ÕÀú ÆÈ·¹Æ®¿¡¼ 'ÅØ½ºÆ® ¼¿'À» ¼±ÅÃÇÑ ÈÄ ÇÁ¸® ·¹À̾ƿô Å×ÀÌºí¿¡ ÅØ½ºÆ® ¼¿À» Ãß°¡ÇϽʽÿÀ. ±×·± ´ÙÀ½, ÆäÀÌÁö µ¥ÀÌÅÍ º¸±â¿¡¼ ÅØ½ºÆ® ¼¿·Î ²ø¾î´Ù ³õÀ¸½Ê½Ã¿À.
µå¶óÀ̹ö °ü¸®ÀÚ ¿¬°á·Î °ü°èÇü µ¥ÀÌÅͺ£À̽º¿¡ ¾×¼¼½ºÇÏ´Â (SDO ±â´ÉÀÌ ÀÖ´Â) À¥ ÀÀ¿ëÇÁ·Î±×·¥À» Àü°³ÇÏ·Á°í ÇÒ ¶§, µå¶óÀ̹ö jarÀÌ ÀÚµ¿À¸·Î ¼¹ö Ŭ·¡½º °æ·Î¿¡ Ãß°¡µÇÁö ¾Ê½À´Ï´Ù. ÀÌ·Î ÀÎÇØ ClassNotFound ¿À·ù°¡ ¹ß»ýÇÕ´Ï´Ù.
ÇöÀç, ÀÀ¿ëÇÁ·Î±×·¥ÀÌ °ü°èÇü µ¥ÀÌÅͺ£À̽ºÀÎ Cloudscape, DB2, SQL Server ¹× Oracle¿¡ ¾×¼¼½ºÇÒ ¶§¸¶´Ù µ¥ÀÌÅÍ ¼Ò½º ¿¬°áÀÌ ±âº»ÀûÀ¸·Î ÀÛ¼ºµË´Ï´Ù. ±×·¯³ª ´Ù¸¥ µ¥ÀÌÅͺ£À̽ºÀÇ °æ¿ì(ƯÈ÷, Informix(R) ¹× Sybase), µå¶óÀ̹ö °ü¸®ÀÚ ¿¬°áÀÌ ÀÛ¼ºµÈ ÈÄ À§¿¡ ¼³¸íµÈ ¹®Á¦Á¡ÀÌ ¹ß»ýÇÕ´Ï´Ù.
µå¶óÀ̹ö °ü¸®ÀÚ ¿¬°áÀÌ µ¿ÀÛÇÏ°Ô ÇÏ·Á¸é, Á÷Á¢ µå¶óÀ̹ö jar °æ·Î¸¦ ¼¹ö Ŭ·¡½º °æ·Î¿¡ Ãß°¡ÇØ¾ß ÇÕ´Ï´Ù. À̸¦ ¼öÇàÇÏ·Á¸é, ¼¹öÀÇ °ü¸® ÄܼÖÀ» ½ÇÇàÇÏ°í ¼¹ö->Application Server-><serverName>->Java ¹× ÇÁ·Î¼¼½º °ü¸®->ÇÁ·Î¼¼½º Á¤ÀÇ->JVM(Java Virtual Machine)->Ŭ·¡½º °æ·Î ¾Æ·¡¿¡ Ŭ·¡½º °æ·Î Ç׸ñÀ» Ãß°¡ÇϽʽÿÀ.
ÇöÀç ÀÌ Á¦Ç°Àº °¢°¢ÀÇ µ¥ÀÌÅÍ ¸ñ·ÏÀ¸·Î ¸Þ¼Òµå¸¦ »ý¼ºÇÏÁö ¾Ê½À´Ï´Ù. ´ÙÀ½Àº µ¥ÀÌÅÍ ¸ñ·Ï myListÀÇ ÄÁÅÙÃ÷¸¦ °»½ÅÇϱâ À§ÇÑ Á¶Ä¡ ÄÚµåÀÔ´Ï´Ù.
try { getMyListMediator().applyChanges((DataObject)((ECoreEList)getMyList()).getEObject()); } catch (Throwable e) { logException(e); }
º¥´õ ±âº»°ªÀÌ ¾Æ´Ñ ´Ù¸¥ Æ÷Æ®¿¡¼ JDBC ¼¹ö¸¦ ½ÇÇàÇÒ °æ¿ì, óÀ½ ÀÛ¼ºµÇ´Â SDO ·±Å¸ÀÓ ¿¬°áÀ» ¼öÁ¤ÇØ¾ß ÇÕ´Ï´Ù.
À¥ ÇÁ·ÎÁ§Æ® ´ë»óÀ» WAS V5 ¼¹ö¿¡¼ WAS V6 ¼¹ö·Î ÀçÁöÁ¤ÇÏ´Â °æ¿ì, °£È¤ WEB-INF/lib/wdo_web.jarÀÌ »èÁ¦µÇÁö ¾Ê½À´Ï´Ù. ÀÌ´Â WAS V6 ¼¹ö¿¡ ´ëÇØ À¯È¿ÇÏÁö ¾ÊÀ¸¸ç, À¥ ÇÁ·ÎÁ§Æ®¿¡¼ Ŭ¶óÀ̾ðÆ®Ãø ¿ÀºêÁ§Æ®¸¦ Àç»ý¼ºÇÒ ¶§ ¹®Á¦Á¡À» ÀÏÀ¸Å³ ¼ö ÀÖ½À´Ï´Ù(ÀÌÁÖ ¾È³»¼ÀÇ "Faces Client ±¸¼º¿ä¼Ò°¡ ÀÖ´Â JavaServer Faces ÀÚ¿ø ÀÌÁÖ" Àý¿¡ ÀÖ´Â ´Ü°è¸¦ ¼öÇàÇÑ °æ¿ì).
ÀÌ ¹®Á¦Á¡À» ¹æÁöÇÏ·Á¸é lib Æú´õ¿¡¼ ÀÌ JAR ÆÄÀÏÀ» »èÁ¦ÇϽʽÿÀ. À̸¦ »èÁ¦ÇÑ ÈÄ, À¥ ÇÁ·ÎÁ§Æ®¿¡ ´ëÇØ web.xml ÆÄÀÏÀ» ¿°í JAR ÆÄÀÏÀ» ÂüÁ¶ÇÏ´Â taglib ű׸¦ Á¦°ÅÇϽʽÿÀ. À¥ Àü°³ ¼³¸íÀÚ ÆíÁý±âÀÇ º¯¼ö ¶Ç´Â ¼Ò½º ÆäÀÌÁö¿¡¼ À̸¦ Á¦°ÅÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ taglibÀÇ URI´Â http://www.ibm.com/websphere/wdo/coreÀÔ´Ï´Ù. ±×·± ´ÙÀ½, ÇÁ·ÎÁ§Æ® Ž»ö±â º¸±â¿¡¼ À¥ ÇÁ·ÎÁ§Æ®¸¦ ¼±ÅÃÇÏ°í ÆË¾÷ ¸Þ´º¿¡¼ Ư¼ºÀ» ¼±ÅÃÇϽʽÿÀ. ±×·± ´ÙÀ½, ¶óÀ̺귯¸® ÆäÀÌÁö¿¡¼ Java ºôµå °æ·Î¸¦ ¼±ÅÃÇÏ°í ¸ðµç WDO_EMF_JARS_PATH/* Ŭ·¡½º °æ·Î Ç׸ñÀ» Á¦°ÅÇϽʽÿÀ.
V5.1 ¼¹ö¿¡¼ ´ë»óÀ¸·Î ÁöÁ¤µÈ ÀÚµ¿ Ű »ý¼ºÀ» »ç¿ëÇÏ´Â °ü°èÇü ·¹ÄÚµå·Î JSP ÆäÀÌÁö¸¦ ÀÛ¼ºÇÏ´Â °æ¿ì, ´ÙÀ½ ¿À·ù°¡ ¹ß»ýÇÒ ¼ö ÀÖ½À´Ï´Ù.
2 cvc-complex-type.2.4.d: 'tables' ¿ä¼Ò·Î ½ÃÀÛÇÏ´Â À¯È¿ÇÏÁö ¾ÊÀº ÄÁÅÙÃ÷°¡ ¹ß°ßµÇ¾ú½À´Ï´Ù. ÀÌ ½ÃÁ¡¿¡¼´Â ÇÏÀ§ ¿ä¼Ò°¡ ¿¹»óµÇÁö ¾Ê½À´Ï´Ù.
ÀÌ ¿À·ù ¸Þ½ÃÁö´Â À¯È¿ÇÏÁö ¾ÊÀ¸¹Ç·Î ¹«½ÃÇØµµ µË´Ï´Ù.
±âº» ÀÎÁõÀ» »ç¿ëÇÏ¿© ¼ºñ½º·Î WebSphere Application Server¸¦ ½ÇÇà(·Î±×ÀÎÇÑ »ç¿ëÀÚ·Î ½ÇÇà)ÇÒ ¶§, À¥ ÀÀ¿ëÇÁ·Î±×·¥ ³»¿¡¼ »ç¿ëÀÚ À̸§ ¹× ¾ÏÈ£¸¦ Á¦°øÇÏÁö ¾ÊÀº ä DB2¿¡ ¿¬°áÇÏ·Á°í ÇÏ¸é ´ÙÀ½ ¿À·ù°¡ ¹ß»ýÇÒ ¼ö ÀÖ½À´Ï´Ù.
java.sql.SQLException: [IBM][CLI Driver] SQL0567N "SYSTEM"Àº À¯È¿ÇÑ ±ÇÇÑ ID°¡ ¾Æ´Õ´Ï´Ù. SQLSTATE=42602 DSRA0010E: SQL »óÅ = 42602, ¿À·ù ÄÚµå = -567
ÀÌ ¹®Á¦Á¡À» ¹æÁöÇÏ·Á¸é, ÀÀ¿ëÇÁ·Î±×·¥¿¡ »ç¿ëÀÚ ID ¹× ¾ÏÈ£¸¦ Á¦°øÇϰųª, DB2 ¼³Ä¡¿¡ ¾×¼¼½ºÇÒ ¼ö ÀÖ´Â »ç¿ëÀÚ °èÁ¤À¸·Î ¸í½ÃÀûÀ¸·Î ½ÇÇà(¿¹: »ç¿ëÀÚ ID ¹× ¾ÏÈ£ Á¦°ø)Çϵµ·Ï WAS¸¦ ¼³Á¤ÇϽʽÿÀ.
È®¾àµÇÁö ¾ÊÀº º¯°æ»çÇ×ÀÌ Æ÷ÇÔµÈ JSP¸¦ ´Ý°í ÇÁ·ÒÇÁÆ®°¡ Ç¥½ÃµÈ ÈÄ JSP¸¦ ÀúÀåÇÒ °æ¿ì, WDO/SDO ±¸¼º ÆÄÀÏ¿¡ ´ëÇÑ È®¾àµÇÁö ¾ÊÀº º¯°æ»çÇ×ÀÌ ÀúÀåµÇÁö ¾ÊÀ» ¼öµµ ÀÖ½À´Ï´Ù.
À̸¦ ¹æÁöÇÏ·Á¸é °ü°è ·¹ÄÚµå ¶Ç´Â ·¹ÄÚµå ¸ñ·Ï ±¸¼º ÈÄ CRTL+S¸¦ ´©¸£°Å³ª ÆÄÀÏ-->ÀúÀåÀ» Ŭ¸¯ÇÏ¿© JSP¸¦ ÀúÀåÇÕ´Ï´Ù.
ÀÌ ¹®Á¦Á¡Àº Websphere V51 ¼¹ö¿¡¼ ½ÇÇàÇϵµ·Ï ÀÛ¼ºµÇ¾úÁö¸¸ Websphere V60 ¼¹ö¿¡¼ ½ÇÇàÇϵµ·Ï ÀÌÁÖµÈ WDO ÀÀ¿ëÇÁ·Î±×·¥¿¡¼ ¹ß»ýÇÕ´Ï´Ù. ÀÌ ½Ã³ª¸®¿Àó·³ Faces ÆäÀÌÁö¿¡ ÇÊÅÍ ÀýÀÌ µÎ °³ ÀÌ»óÀÎ ·¹ÄÚµå ¶Ç´Â ·¹ÄÚµå ¸ñ·ÏÀÌ ÀÖÀ» °æ¿ì, ÆäÀÌÁö¸¦ ¼¹ö¿¡¼ ½ÇÇàÇÏ¸é ´ÙÀ½ ¿¹¿Ü°¡ ¹ß»ýÇÒ ¼ö ÀÖ½À´Ï´Ù.
java.lang.ArrayIndexOutOfBoundsException: 1 at org.eclipse.emf.ecore.impl.DynamicEObjectImpl.dynamicGet(DynamicEObjectImpl.java:192) at org.eclipse.emf.ecore.impl.EStructuralFeatureImpl$InternalSettingDelegateSingleData.dynamicGet(EStructuralFeatureImpl.java:1758) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eDynamicGet(BasicEObjectImpl.java:485) at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eGet(BasicEObjectImpl.java:476)e at org.eclipse.emf.ecore.impl.BasicEObjectImpl.eGet(BasicEObjectImpl.java(Compiled Code)) at com.ibm.etools.webtools.sdo.runtime.internal.MapDataObjectImpl.getValue(MapDataObjectImpl.java:197) at com.ibm.etools.webtools.sdo.runtime.internal.MapDataObjectImpl.put(MapDataObjectImpl.java:162) at pagecode.PageCodeBase.resolveParams(PageCodeBase.java:189)
Á¶Á¤ÀÚÀÇ ¸Å°³º¯¼ö ¿ÀºêÁ§Æ®¿¡ ¹®Á¦Á¡ÀÌ ÀÖ½À´Ï´Ù.
ÀÌ ¹®Á¦Á¡À» ¼öÁ¤ÇÏ·Á¸é Áß°³ÀÚÀÇ ¸Å°³º¯¼ö ¿ÀºêÁ§Æ®¸¦ ¿Ã¹Ù¸£°Ô ¼³Á¤ÇØ¾ß ÇÕ´Ï´Ù. À̸¦ ¼öÇàÇÏ·Á¸é, getList ¶Ç´Â getRecord ¸Þ¼Òµå¸¦ ¼öÁ¤ÇϽʽÿÀ.
´ÙÀ½À»
public DataListAccessBean getList1() { if (list1 == null) { try { resolveParams(getList1Mediator().getParams(), list1ArgNames, list1ArgValues, "list1_params_cache"); DataGraphAccessBean graph = getList1Mediator().fetchGraph(); list1 = graph.getDataListAccessBean(); } catch (Throwable e) { logException(e); } } return list1; }
´ÙÀ½À¸·Î ¼öÁ¤ÇϽʽÿÀ.public DataListAccessBean getList1() { if (list1 == null) { try { getList1Mediator().setParams( new MapDataObjectImpl(((EObject) new MediatorImpl( (Metadata) getList1Mediator().getMetadata(), new NullConnectionWrapper()) .getParameterDataObject()).eClass())); resolveParams(getList1Mediator().getParams(), list1ArgNames, list1ArgValues, "list1_params_cache"); DataGraphAccessBean graph = getList1Mediator().fetchGraph(); list1 = graph.getDataListAccessBean(); } catch (Throwable e) { logException(e); } } return list1; }
¸Å°³º¯¼ö ¿ÀºêÁ§Æ®¸¦ ¼³Á¤ÇÏ´Â ÄÚµå ½º´ÏÆê¿¡ ÁÖÀÇÇϽʽÿÀ.
±âº» ¼¹ö¸¦ ¼±ÅÃÇÏ¸é ¼¹ö¿¡¼ ½ÇÇà µµÁß µ¥ÀÌÅͼҽº°¡ ¼¹ö¿¡¼ ¿Ã¹Ù¸£°Ô ±¸¼ºµÇÁö ¾Ê½À´Ï´Ù. µ¥ÀÌÅͼҽº°¡ ÀûÀýÇÏ°Ô ¼³Á¤µÇµµ·Ï ÇÏ·Á¸é ±âº» ¼¹ö¸¦ ¼±ÅÃÇÏÁö ¸¶½Ê½Ã¿À. ÀÏ´Ü ÀÀ¿ëÇÁ·Î±×·¥ÀÌ ¼º°øÀûÀ¸·Î °ø°³µÇ¸é, µ¥ÀÌÅͼҽº¸¦ º¯°æÇϱâ Àü±îÁö´Â ±âº» ¼¹ö¸¦ ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù.
·¹ÄÚµå/¸ñ·Ï¿¡ ´ëÇÑ ½ºÅ°¸¶ À̸§ ¹Ù²Ù±â Á¶Ä¡ ½Ã °íÀ¯ÇÑ Å° Å×ÀÌºí ½ºÅ°¸¶ À̸§ÀÌ °»½ÅµÇÁö ¾Ê½À´Ï´Ù.
ÀÌ ¹®Á¦Á¡À» ÇØ°áÇÏ·Á¸é ·¹ÄÚµå/¸ñ·Ï¿¡ ´ëÇÑ Á¶È¸¸¦ ÀúÀåÇÏ´Â xml ÆÄÀÏÀ» ã¾Æ¼ °íÀ¯ÇÑ Å° Å×ÀÌºí ½ºÅ°¸¶ À̸§À» °»½ÅÇϽʽÿÀ.