¿¬Àç °¡À̵å¿î¿µÃ¼Á¦ : À©µµ¿ì 2000/XP, À¯´Ð½º °è¿, ¸®´ª½º³ª Mac OS Xµµ °¡´É
°³¹ßµµ±¸ : ÀÌŬ¸³½º 3.1
±âÃÊÁö½Ä : ÀÚ¹Ù, À¥¼ºñ½º, XML
ÀÀ¿ëºÐ¾ß : ÀÚ¹Ù Ç÷§ÆûÀ» ÀÌ¿ëÇÑ À¥¼ºñ½º Á¦°ø
Áö³ ÇÑ´Þ »çÀÌ¿¡ ¸¹Àº ÀÏÀÌ ÀÖ¾ú´Ù. EJB 3.0 »õ ½ºÆå(2¹øÂ° Á¶±â ÃʾÈ)°ú JBossÀÇ µÚÀÌÀº »õ ±¸Çöü°¡ ³ª¿Ô°í JAX-RPC 2.0°ú JAXB 2.0ÀÇ Á¶±â ±¸Çöü°¡ WS-I »ùÇà ¾ÖÇø®ÄÉÀÌ¼Ç ÆÐŰÁö¿¡ Æ÷ÇԵǾî Ãâ½ÃµÇ¾ú´Ù. ÀÌ·Î ÀÎÇØ ¿ì¸®ÀÇ °èȹ¿¡µµ Áß´ëÇÑ º¯°æÀÌ »ý°å´Ù.
ÀÛÀü º¯°æ - JAXB 2.0 + JAX-RPC 2.0
Á¤¸» ¼¼»óÀÇ º¯È´Â ³î¶ø´Ù. ½ºÆåÀÌ ³ª¿À°íµµ ±¸Çöü°¡ ³ª¿À±â±îÁö ÇÑÂü °É·È´ø °ÍÀÌ ¾ü±×Á¦ °°Àºµ¥ ÀÌÁ¦´Â ½ºÆåÀÌ ÁøÇà Áß¿¡ ±¸Çöüµµ ³ª¿Â´Ù. ƯÈ÷ J2EE 5.0ÀÇ ÇÙ½É ÄÄÆ÷³ÍÆ®ÀÎ EJB 3.0, JAXB 2.0, JAX-RPC 2.0, ÀÌ ¼¼ °¡Áö ±â¼úÀÇ ÁøÇà °úÁ¤À» º¸¸é ±×·¯ÇÑ °æÅºÀÌ ³ª¿Ã ¸¸ÇÏ´Ù.
 | WS-I SA(Sample Application) 1.1 |  | |  | |
| WS-I(Web Services Interoperability)´Â À¥ ¼ºñ½ºÀÇ »óÈ£¿î¿ë¼ºÀ» È®º¸Çϱâ À§ÇÑ °ü·Ã ¾÷°èÀÇ °øµ¿Ã¼ÀÌ´Ù. À¥ ¼ºñ½º°¡ ¼·Î ´Ù¸¥ ÄÄÇ»ÅÍ È¯°æ°£ÀÇ Åë½ÅÀ» XML·Î ¾Æ¿ì¸£·Á ÇØ¿ÔÁö¸¸, ±×·¸´Ù°í ±× (XMLÀ» ±â¹ÝÇÑ´Ù´Â) ¼±Åà ÀÚü°¡ ¸ðµç ¹®Á¦¸¦ ÇØ°áÇÏ´Â °ÍÀº ¾Æ´Ï´Ù. ¿ÀÈ÷·Á °®°¡Áö Ãæµ¹ÀÌ ºú¾îÁ®¼, SOAPBuildersÀÇ ¸î Â÷·Ê ¶ó¿îµå(Round)¸¦ ÅëÇØ SOAP ¸Þ½ÃÁö¸¦ ÅëÇÑ À¥¼ºñ½º Ç÷§Æû Á¦°ø ¾÷ü, À¥ ¼ºñ½º Á¦ÀÛ ¾÷ü °£ÀÇ »óÈ£¿î¿ë¼ºÀ» ¸é¹ÐÈ÷ °ËÁõÇØ¿Â ¹Ù, À̰ÍÀº À¥ ¼ºñ½º °ü·Ã ½ºÆåÀÇ ±â¼úÀû ¹®Á¦¶ó±âº¸´Ù´Â ´Ù¾çÇÑ À¥ ¼ºñ½º ½Ç½Ã ¹æ½Ä¿¡ ´ëÇÑ ÇÕÀǰ¡ ÇÊ¿äÇÔÀ» ±ú´Ý±â¿¡ À̸£·¯ WS-I¿Í °°Àº ´ëµ¿´Ü°áÀÌ ÀÌ·ç¾îÁ³´Ù.
WS-I´Â ÇÁ·ÎÆÄÀÏ(Profile)·Î ¸ÕÀú »óÈ£¿î¿ë¼º º¸ÀåÀ» À§ÇÑ ¿ä±¸ »çÇ×À» Á¤¸®Çϰí, ±×°ÍÀ» Å×½ºÆ®ÇÏ´Â µµ±¸¸¦ Á¦°øÇϸç, ½ÇÁ¦·Î ÀÌ·¯ÇÑ »óÈ£¿î¿ëÀÇ °¡´É¼ºÀ» º¸¿©ÁÖ´Â ¿¹Á¦ ¾ÖÇø®ÄÉÀ̼Ç(Sample Application, ÀÌÇÏ SA)µµ Á¦½ÃÇÑ´Ù. ÇöÀç ±âº» ÇÁ·ÎÆÄÀÏ(Basic Profile)ÀÇ ÃֽйöÀüÀÎ 1.1¿¡ ºÎÇÕÇÏ´Â SA°¡ ³ª¿Í Àִµ¥, ½ã¿¡¼ Áö³ 1¿ù¸»¿¡ JAX-RPC 2.0°ú JAXB 2.0À¸·Î ¿ÏÀüÈ÷ »õ·Î § WS-I SA 1.1(Âü°í ÀÚ·á 1)À» ¹ßÇ¥ÇÏ¿´´Ù.
Àá½Ã µÚ¿¡ ¼³¸íÇϰÚÁö¸¸ WS-I SA´Â ¸ÕÀú WSDLÀ» ¼³°èÇÑ ÈÄ °¢ ÇÁ·Î±×·¡¹Ö ¾ð¾î(ÇöÀç´Â ÀÚ¹Ù¿Í C#ÀÌ ´ëÇ¥Àû)·Î ´ëÀÀÇÏ´Â °³¹ß ¹æ½ÄÀ» ÃëÇϰí ÀÖ´Ù. ÇÁ·Î±×·¡¹Ö ¾ð¾î µ¶¸³ÀûÀÎ À¥ ¼ºñ½ºÀÇ º»Áú¿¡ ¸Â±â´Â ÇÏÁö¸¸, À¥ ¼ºñ½º, ƯÈ÷ WSDL¿¡ Àͼ÷ÇÏÁö ¾ÊÀº °³¹ßÀÚ¿¡°Ô´Â À¥ ¼ºñ½º ¼³°è¿Í Á¦ÀÛÀ» ¾î·Æ°Ô ´À³¢°Ô ÇÒ ¼ö ÀÖ´Ù.
SA 1.0¿¡¼´Â °ø±Þ¸Á°ü¸®(Supply Chain Management)¸¦ ¼Ò¸Å, µµ¸Å, Á¦Á¶»ç Çü½ÄÀ¸·Î ²Ù¸ì´Âµ¥, 1.1¿¡¼´Â īŻ·Î±×¸¦ ºÙ¿© ±×¸² ÆÄÀÏÀ̳ª PDF ¼³¸í¼¿Í °°Àº ÷ºÎ ÆÄÀÏ¿¡ ´ëÇÑ »ç¿ëÀÌ µÎµå·¯Áø Ư¡ÀÌ´Ù. À¥ ¼ºñ½ºÀÇ ¼³°è¿Í °³¹ß, ´õ¿íÀÌ »óÈ£¿î¿ë¼ºÀ» °í·ÁÇÏ´Â ÀÌ¿¡°Ô´Â ¹«Ã´ ÁÁÀº ¿¹Á¦ÀÏ °ÍÀÌ´Ù. | | | | | |
| |
EJB 3.0ÀÇ °æ¿ì JBossÀÇ ±¸Çöü°¡ ÀÖ¾î À̹ø ¿¬Àç¿¡ ½ÃµµÇØ º¼ ¼ö ÀÖ¾úÁö¸¸, JAX-RPC 2.0°ú JAXB 2.0ÀÇ °æ¿ì ½ºÆå¸¸ ³ª¿Â »óÅ¿´´Âµ¥, ¸¶Ä§ ½ãÀÇ Arun Gupta(±×´Â ½ãÀ» ´ëÇ¥ÇØ WS-I¿¡ Âü¿©Çϰí ÀÖ°í, ÇÊÀÚ¿Í´Â JAX-WSA 1.0À̶ó´Â WS-Addressing¿ë ÀÚ¹Ù API Á¦Á¤À» ÇÔ²² Çϰí ÀÖ´Ù)·ÎºÎÅÍ Á¶±â ±¸Çöü°¡ WS-I SA 1.1 ÆÑÀÇ ÀϺηΠ³ª¿Ô´Ù´Â ¼Ò½ÄÀ» ¹Þ°í´Â Áß´ë °á½ÉÀ» Çß´Ù. JAX-RPC 2.0Àº WSMÀ» Æ÷ÇÔÇϰí ÀÖ°í JAXB 2.0À» ÅëÇØ XMLÀ» ó¸®ÇϹǷΠÂ÷¼¼´ë ÀÚ¹Ù À¥ ¼ºñ½ºÀÇ Àü¸ð¸¦ µ¶ÀÚ¿¡°Ô Àü´ÞÇÒ ¼ö ÀÖ´Â ±âȸ¶ó°í ÆÇ´Ü, °ú°¨È÷ äÅÃÇß´Ù. µû¶ó¼ Åýà ¿¹¾à ¼ºñ½ºÀÇ ÀüüÀûÀÎ ±¸Á¶µµ ´Þ¶óÁ³À¸¸ç ¾ÆÁ÷ ¼Ò°³ÇÏÁö´Â ¾Ê¾ÒÁö¸¸ °³¹ß ¹æ¹ýµµ ¹Ù²î°Ô µÇ¾ú´Ù.
Àá½Ã º¹½À - ±¸Á¶ È®ÀÎ
±×·¯¸é ¸ÕÀú Áö³ ´ÞÀÇ º¹½À »ï¾Æ Àüü Á¶¸ÁÀ» º¸µµ·Ï ÇÏÀÚ. <±×¸² 1>ÀÌ JAX-RPC 2.0°ú JAXB 2.0ÀÇ Ã¤ÅÃÀ¸·Î <±×¸² 2>¿Í °°ÀÌ ´Þ¶óÁø´Ù.
 |
| <±×¸² 1> J2EE 5.0 °üÁ¡ÀÇ Åýà ¿¹¾à ¼ºñ½º ±¸Á¶(°»½Å Àü) |
 |
| <±×¸² 2> J2EE 5.0 ±â¹ÝÀÇ Åýà ¿¹¾à ¼ºñ½ºÀÇ »õ·Î¿î ±¸Á¶ |
 | EJB 3.0 ED2¿Í JBoss EJB 3.0 PR 3 |  | |  | |
| °øºÎÇÒ °Å¸®°¡ Çϳª ´õ ´Ã¾ú´Ù. Áö³´Þ Áö·É¿¡ ¹ß¸ÂÃç EJB 3.0ÀÇ ED¸¦ ¹ÙÅÁÀ¸·Î °øºÎÇÑ µ¶ÀÚ¶ó¸é 2°³·Î ³ª´©¾îÁø ED2ÀÇ ½ºÆå¿¡ ³î¶ö °ÍÀÌ´Ù. À̹ø 2Â÷ Á¶±â ½ºÆåÀº ¾Æ¿¹ ÆÛ½Ã½ºÅϽº(Persistence) ÂÊÀ» Àüü ½ºÆå¿¡¼ »Ì¾Æ³» ´õ¿í °ÈÇß´Ù. ÀÌ´Â ÇÏÀ̹ö´Ö(Hibernate)À¸·Î ¿£Æ¼Æ¼ ºóÀÇ °³Çõ¿¡ ¹ÚÂ÷¸¦ °¡Çϰí ÀÖÀ½À» °¡¸®Å°´Âµ¥, EJB QLÀÌ ÇÏÀ̹ö´ÖÀÇ QLÀ» Åä´ë·Î ´ëÆø ÁøÈÇÏ¿© »ó´çÇÑ ¼öÁØÀÇ ¿ÀºêÁ§Æ® ±â¹Ý Äõ¸® ¾ð¾î¸¦ Á¦°øÇϰí ÀÖ´Ù.
JBoss EJB 3.0(Âü°í ÀÚ·á 2)ÀÇ ÇÁ¸®ºäµµ 3¹øÂ° ¹öÀüÀÌ ³ª¿Ô´Ù. ÀÌÀü ¹öÀüÀÌ JBoss 4.0.1 RC1¸¸À» Áö¿øÇÏ´Â ¹®Á¦¸¦ ÇØ°áÇÑ °ÍÀ» À§½Ã·Î, ED2¿¡ ¸Â°Ô Çâ»óµÇ¾ú´Ù. ÇÏÀ̹ö´ÖÀ» Á÷Á¢ ¾²Áö ¾Ê°íµµ ÇÏÀ̹ö´ÖÀ» EJB 3.0ÀÇ Ç¥ÁØ ÆÛ½Ã½ºÅϽº API·Î »ç¿ëÇÒ ¼ö ÀÖ´Ù´Â Á¡ÀÌ Èï¹Ì·Ó´Ù´Â »ý°¢ÀÌ µç´Ù. | | | | | |
| |
À̷μ ÀÌ ¿¬Àç´Â J2EE 5.0 ±â¹Ý SOA¸¦ »ç½Ç»ó ¿ÏÀüÈ÷ ³íÇÒ ¼ö ÀÖ°Ô µÇ¾ú´Ù. ´Þ¸® ¸»Çϸé Á¶±â ½ºÆå°ú Á¶±â ±¸Çöü¿¡ ¾î¿ï¸®´Â Á¶±â ÇнÀÀÌ °¡´ÉÇØÁø ¼ÀÀÌ´Ù.
½ºÅ¸ÀÏÀÌ »ì¾Æ ÀÖ´Ù - ÀÚ¹Ù¿¡¼ WSDL·Î? WSDL¿¡¼ ÀÚ¹Ù·Î?
Áö³ ´Þ¿¡ ¿ì¸®´Â ¼ºñ½ºÀÇ ÀÎÅÍÆäÀ̽º¸¦ Á¤Çß¾ú´Ù. ´Ù½Ã ¶°¿Ã·Áº¸¸é,
soa.service.TaxiBookService [ÀÎÅÍÆäÀ̽º]
Taxi[] getAvailableTaxis(Location location, Calendar calendar)
void reserve(int taxiId)
Order[] viewOrders()
void cancelOrder(int orderId)
ÀÌ Ç¥ÇöÀº ÀÚ¹Ù ÇÁ·Î±×·¡¹Ö ¾ð¾î·Î µÈ °ÍÀÌ´Ù. ÇÏÁö¸¸ ¾Õ¼µµ ¸»ÇßµíÀÌ (»ó´çÈ÷ ¹Ýº¹µÇ¾î ¿Ô°í, ¾ÕÀ¸·Îµµ ±×·² °Í °°´Ù), À¥ ¼ºñ½º´Â ¾î¶°ÇÑ Ç÷§Æû¿¡¼ ¾î¶°ÇÑ ÇÁ·Î±×·¡¹Ö ¾ð¾î·Îµµ Á¢±ÙÇϰí Ȱ¿ëÇÒ ¼ö ÀÖµµ·Ï ÇÏ´Â µ¥¿¡ ÀÇÀǰ¡ ÀÖ´Ù.
 |
| <±×¸² 3> WSDL Á᫐ °³¹ß |
<±×¸² 3>Àº ±×·¯ÇÑ À¥ ¼ºñ½ºÀÇ º»·É¿¡ Ãæ½ÇÇÑ, Áï ¿ø¸®ÁÖÀÇÀû °³¹ß ¹æÄ§ÀÌ´Ù. WSDL¿¡ Á¤ÅëÇÑ ´©±º°¡°¡ ÇÁ·Î±×·¡¹Ö ¾ð¾î Á߸³ÀûÀÎ WSDLÀ» ÀÛ¼ºÇÏ¿© °¢ ¾ð¾î °³¹ßÀÚ¿¡°Ô Àü´ÞÇϸé ÁÖ¾îÁø WSDLÀ» °¡Áö°í À¥ ¼ºñ½º ÇÁ·Î±×·¥À» Â¥°Ô µÈ´Ù.
À̶§ ÇÊ¿äÇÑ °ÍÀÌ WSDL¿¡¼ ÇØ´ç ÇÁ·Î±×·¡¹Ö ¾ð¾î·ÎÀÇ ´ëÀÀÀÌ´Ù. ÀÚ¹Ù¿¡¼´Â JAX-RPC ½ºÆåÀÌ ÀÌ ÁÖÁ¦¿¡ ´ëÇÑ Ç¥ÁØÀ» Á¤Çϰí ÀÖ¾î¼, JAX-RPC ±¸Çöü¿¡´Â WSDLÀ» ÁÖ¸é ÀÚ¹Ù ¾ÆÆ¼ÆÑÆ®(WSDL¿¡ ´ëÀÀÇÏ´Â °¢Á¾ Àڹ٠Ŭ·¡½ºµé)À» »ý¼ºÇÏ´Â ÅøÀÌ µé¾î ÀÖ´Ù. ÇÏÁö¸¸ ¹®Á¦´Â Çö½Ç¿¡ ÀÖ´Ù. CORBAÀÇ IDLµµ ±×·¸°í À¥ ¼ºñ½ºÀÇ WSDLµµ ±×·¸°í, Ãß»óÀÌ Áö³ªÄ¡´Ù º¸´Ï µÇ·¡ °¨ÀÌ ¾È ¿Â´Ù. Áï ¾î¶»°Ô Â¥¾ßÇÒÁö, ƯÈ÷ ±×·¯ÇÑ Ãß»óÀû ÀÎÅÍÆäÀ̽º ¼±¾ð¿¡ Àͼ÷ÇÏÁö ¾ÊÀº °³¹ßÀڵ鿡°Ô´Â ½Ã°£µµ Âѱâ´Âµ¥ ³°¨ÇÒ µû¸§ÀÌ´Ù.
| |
| JAX-RPC 1.1±îÁö ÀÚ¹Ù À¥ ¼ºñ½ºÀÇ »ç½Ç»ó ¸ðµç °ÍÀ» ´ã´çÇØ¿Ô´ø JAX-RPC´Â 2.0À¸·Î ¿À¸é¼ XML°ú ÀÚ¹Ù »çÀÌÀÇ ´ëÀÀÀ» JAXB 2.0¿¡°Ô ³Ñ±âµµ ¹«Ã´ °¡º¿öÁ³´Ù. ÀÌÁ¦ JAX-RPC°¡ ÇÒ ÀÏÀº WSDL°ú ÀÚ¹Ù °£ÀÇ ´ëÀÀÀ̰í, WSDL ¾ÈÀÇ Å¸ÀÔ¿¡ ´ëÇÑ ´ëÀÀÀº JAXB ÂÊÀ¸·Î À§ÀÓÇϵµ·Ï µÇ¾î ÀÖ´Ù.
JAX-RPC 2.0°ú JAXB 2.0Àº J2SE 6.0 ¸Ó½ºÅÊ¿¡ Æ÷Ç﵃ ¿¹Á¤À̹ǷÎ, ¾ÕÀ¸·Î À¥ ¼ºñ½º Ŭ¶óÀÌ¾ðÆ®¸¦ ½ÇÇàÇϱâ À§ÇØ º°µµÀÇ ·±Å¸ÀÓ ¶óÀ̺귯¸®¸¦ Ãß°¡ÇÒ Çʿ䰡 ¾ø¾îÁö°Ô µÈ´Ù. ¸¸¾à Åýà ¿¹¾à ¼ºñ½ºÀÇ J2SE ¸®Ä¡ Ŭ¶óÀÌ¾ðÆ®¿¡¼ RCP¸¦ ¾²Áö ¾Ê´Â´Ù¸é, ¸Ó½ºÅÊ¿¡¼´Â ¾ÖÇø®ÄÉÀÌ¼Ç Äڵ常À¸·Î Ŭ¶óÀÌ¾ðÆ®¸¦ µ¹¸± ¼ö ÀÖ´Ù. JAX-RPC 2.0Àº JAXB 2.0»Ó¸¸ ¾Æ´Ï¶ó WSMµµ Æ÷ÇÔÇϰí ÀÖ¾î¼, ÀÚ¹Ù¿Í XML ½ºÅ°¸¶-WSDL°£ÀÇ ´ëÀÀÀ» ¿Ïº®È÷ Á¶ÀýÇÒ ¼ö ÀÖ´Â °·ÂÇÔÀÌ ±â´ëµÇ´Â ±â¼úÀ̱⵵ ÇÏ´Ù. | | | | | |
| |
¾îÂ÷ÇÇ ÇÁ·Î±×·¥Àº ÇÁ·Î±×·¡¹Ö ¾ð¾î·Î Â¥´Â °Í, ±×·¡¼ ¹Ù·Î ƯÁ¤ ÇÁ·Î±×·¡¹Ö ¾ð¾î·ÎºÎÅÍ WSDL¸¦ »ý¼ºÇÏ´Â ¹æ½ÄÀÌ ÀÖ´Â ¼ÀÀÌ´Ù.
 |
| <±×¸² 4> ÇÁ·Î±×·¡¹Ö ¾ð¾î Á᫐ °³¹ß |
<±×¸² 4>´Â ÀÚ¹Ù °³¹ßÀÚ°¡ À¥ ¼ºñ½º Á¦°øÀÚ¸¦ Á¦ÀÛÇϰí .NET °³¹ßÀÚ°¡ À¥ ¼ºñ½º ¼ÒºñÀÚ¸¦ Á¦ÀÛÇÏ´Â °æ¿ìÀÇ ¿¹ÀÌ´Ù. ´©±º°¡°¡ Áß°£ÀÇ À§Ä¡¿¡¼ WSDLÀ» ¼³°èÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó, ¼ºñ½º °ø±Þ ÃøÀÇ ÇÁ·Î±×·¡¹Ö ¾ð¾î·ÎºÎÅÍ WSDLÀÌ À¯µµµÇ°í ¹Ù·Î ±× WSDLÀ» ¼ºñ½º ¼ö¿äÃøÀÌ ²ø¾î¿À´Â ²ÃÀÌ´Ù.
À̶§¿¡´Â ¿ªÀ¸·Î ÀÚ¹Ù¿¡¼ WSDL·Î ´ëÀÀÇÏ´Â ±ÔÄ¢°ú ÅøÀÌ ÇÊ¿äÇѵ¥, ¿ª½Ã JAX-RPC¿¡¼ ±× ÀÏÀ» ¸Ã´Â´Ù. ±×·±µ¥ °¡¸¸ »ý°¢Çغ¸¸é, Å»ýºÎÅͰ¡ ´Ù¸¥ ÀÚ¹Ù¿Í WSDL(±×¸®°í XML ½ºÅ°¸¶±îÁö)À» µüµü µé¾î¸Â°Ô ´ëÀÀ½ÃŲ´Ù´Â °ÍÀº ±Ùº»ÀûÀ¸·Î ¾î·Á¿òÀÌ ÀÖÀ» ¼ö¹Û¿¡ ¾ø´Ù. ÀÌ ¹®Á¦ ÀÖ¾î ÀÚ¹Ù´Â .NET¿¡ ºñÇØ ²Ï³ª µÚÁ® Àִµ¥´Ù°¡(ÇÊÀÚÀÇ ÆÀÀå´Ô¸¶Àú ´Ã °¨ÅºÇظ¶Áö ¾Ê´Â´Ù. ±×¸®°íµµ C#Àº ³ª¿Ã ¶§ºÎÅÍ ¸ÞŸµ¥ÀÌÅ͸¦ Áö¿øÇؿԴÙ), Åøµµ Ç÷§Æû(¾×½Ã½º, ½ã RI, BEA µî) º°·Î °¡Áö°¢»öÀÌ¾î¼ Ç÷§Æû°£ÀÇ À̵¿ÀÌ ºÒÆíÇϱâ±îÁö ÇÏ´Ù.
ÀÚ¹Ù À¥ ¼ºñ½ºÀÇ Çö½ÇÀº »ç½Ç ÀÌ ¾÷°è¿¡ Á¾»çÇϰí ÀÖ´Â ÇÊÀÚµµ ¾Ï´ãÇÏ°Ô ´À²¸Áú ¶§°¡ Á¾Á¾ ÀÖ´Ù. ºÎÁ·ÇÑ Á¡ÀÌ ¿©±âÀú±â ´«¿¡ ¶ç¸ç, .NETÀ» À§½ÃÇÑ °æÀïÀÚµéÀÇ ¿òÁ÷ÀÓµµ ¸¸¸¸Ä¡ ¾Ê´Ù. ±×·¯³ª ºÐ¸íÇÑ °ÍÀº ¿ª¼³ÀûÀ¸·Î ±×¸¸Å ±âȸ°¡ ¸¹±âµµ ÇÏ´Ù´Â ÀνÄÀÌ´Ù. ºÒÆíÇÑ °Íµµ ¸¹°í ¾ÈµÇ´Â °Íµµ ¸¹´Ù. ±×·¯´Ï±î ¹ßÀüÇÒ ¿©Áö°¡ ¹«±Ã¹«ÁøÇÏ´Ù¸é ³Ê¹« ±àÁ¤ÀûÀÎ ½Ã°¢Àϱî?
¼û °í¸£±â
Áö³ ´Þ µ¶ÀÚÀÇ ¸òÀº ¾î¶»°Ô ÁغñµÇ°í ÀÖ´ÂÁö ÇÊÀڷμ ¸÷½Ã ±Ã±ÝÇÏ´Ù. ¸Å¿ì ¸ô¾ÆÄ¡±â´Â ÇßÁö¸¸, »ç½Ç ÇÑ´Þ ¸¸¿¡ ¸ðµç °ÍÀ» ÁغñÇϱâ¶õ(°Å±â¿¡ ÁÖ¾÷±îÁö °âÇϰí ÀÖ´Ù¸é) ³Ê¹« ºýºýÇßÀ»Áöµµ ¸ð¸¥´Ù´Â »ý°¢ÀÌ ÀÌÁ¦¾ß µé¾î ¹Ì¾ÈÇÔ°ú µ¿½Ã¿¡, ¾à°£ÀÇ ½Ã°£ ¿©À¯¸¦ ÁÙ ¼ö ÀÖ°Ô µÇ¾î ´ÙÇེ·´±âµµ ÇÏ´Ù.
 | JSR 223 "Scripting for Java Platform" |  | |  | |
| ÇÊÀÚÀÇ À̹ø Çб⠼ö° °ú¸ñ Áß¿¡ ¡®ÀÎÅÍ³Ý ÇÁ·Î±×·¡¹Ö¡¯À̶ó´Â °ú¸ñÀº PHP¸¦ °¡¸£Ä£´Ù. ³»³» ¼ºí¸´°ú JSP¸¸ ÇØ¿Ô´ø ÇÊÀÚ¿¡°Ô´Â »õ·Î¿î °æÇèÀ̶ó ÁÁ¾ÒÁö¸¸, ¸·»ó °úÁ¦¸¦ ÇÏ·Á´Ï ¡®JSP¿´À¸¸é¡¤¡¤¡¤¡¯ÇÏ´Â »ý°¢ÀÌ µéÁö ¾ÊÀ» ¼ö ¾ø´Ù. ±×·±µ¥ °ø±³·Ó°Ôµµ ÀÌ °ú¸ñÀÇ ¼±»ý´ÔÀº ÀÚ¹Ù¸¦ ¹«Ã´ ½È¾îÇÏ´Â ºÐÀÌ´Ù. ±âº»ÀûÀ¸·Î °ÇÑ Å¸ÀÔÀÇ ¾ð¾î¸¦ ÁÁ¾ÆÇÏÁö ¾Ê°í(¸÷½Ã ¿¬·ÎÇϽŠ¹Ú»ç´ÔÀÌ´Ù), ½ºÅ©¸³Æ® ¾ð¾îÀÇ °¡º±°íµµ °£°áÇÑ Ç¥Çö·Â¿¡ ¹«°Ô¸¦ ´õ µÎ´Â ±×·± ºÐÀÌ´Ù. ÇÊÀÚµµ ¹°·Ð ÀÚ¹Ù°¡ ÀüºÎ¶ó°í »ý°¢ÇÏÁö´Â ¾ÊÁö¸¸, À¢¸¸Çϸé ÀÚ¹Ù·Î ÇÏ°í ½ÍÀº °³ÀÎÀûÀÎ Æí¾Ö°¡ ÀÖ´Ù°í »ý°¢Çغ¸´Ï ¼±»ý´ÔÀÇ ¸¶À½µµ ÀÌÇØ´Â °¬´Ù.
PHP´Â È®½ÇÈ÷ À¥ »çÀÌÆ® °³¹ß¿¡ ÀÖ¾î °·ÂÇÑ Á¡ÀÌ ¸¹´Ù. JSP 2.0À̰í JSF°í ÇÏÁö¸¸ ÇÁ·¹ÀÓ¿÷ÀÌ ¾ø±â Àü¿¡´Â Á¤¸»ÀÌÁö ²ûÂïÇß¾ú°í, ÇÁ·¹ÀÓ¿÷ÀÌ ³ª¿À°í ³ª´Ï ÀÌÁ¦´Â º¹ÀâÇϱ⠱×Áö¾ø´Ù. ÇÏÁö¸¸ ºñÁî´Ï½º ÄÄÆ÷³ÍÆ®ÀÇ ±¸¼º¿¡ ÀÖ¾î ÀÚ¹Ù´Â ±× À§Ä¡°¡ ³ô¾ÆÁö°í ÀÖ¾î À¥ ½Ã½ºÅÛ °³¹ßÀÚ¿¡ ÀÖ¾î Àڹ٠ģÈÀûÀÎ »çÀÌÆ®ÀÇ °³¹ßÀº ÀüºÎ ÀÚ¹Ù·Î ÇÏ´Â °Í ÀÌ»óÀÇ Çö½ÇÀûÀÎ ¹æ¾ÈÀÌ ¾ø¾ú´ø ¼ÀÀÌ´Ù.
ÅèÄÏÀÇ ¾Æ¹öÁöÀÌÀÚ ÀÌÁ¦´Â ½ºÆ®·µÃ÷ÀÇ ¾Æ¹öÁö·Î À¯¸íÇÑ Å©·¢ ¸ÆÅ¬·¡³ÊÇåÀÇ ¾ÆµéÀ̾߱Ⱑ ½ºÆ®·µÃ÷ ¹èÆ÷ÆÇÀÇ ÇÑ ÅØ½ºÆ® ÆÄÀÏ¿¡ µé¾î Àִµ¥, ÀÚ½ÅÀº ÀÚ¹Ù·Î ¸Ô°í »ì°í ÀÖÁö¸¸ ¾ÆµéÀº PHP ÇÁ·Î±×·¡¸Ó¶ó°í ÇÑ´Ù(¿ì¸® ³ª¶ó¿¡´Â ¾ÆÁ÷ ÀÌ·± ºÎÀÚ °ü°è°¡ ¾øÀ» °ÍÀÌ´Ù. ÀÌ Á¤µµ µÇ·Á¸é ¾Æ¹öÁö°¡ Àû¾îµµ 50´ë±îÁö Çö¿ª ÇÁ·Î±×·¡¸Ó¿©¾ß ÇÑ´Ù. ¹°·Ð ÀϹÝÀûÀ¸·Î ±×·¸´Ù´Â °Å°í, ¾ÆÁÖ ÀÏÂï Àå°¡°¡°í ¾ÆµéÀÌ º´¿ª ¸éÁ¦¶ó¸é 40´ë-20´ë ºÎÀÚ ÇÁ·Î±×·¡¸Ó°¡ ź»ý °¡´ÉÇÏ´Ù. ÇÏÁö¸¸ Çѱ¹ÀÇ ÇÁ·Î±×·¡¸Ó ¾Æ¹öÁö°¡ ¾ÆµéÀÌ ÇÁ·Î±×·¡¸Ó µÇ´Â °É ÁÁ¾ÆÇÒ±î?) ÀÚ½ÅÀº ¾Æµé¿¡°Ô ÀÚ¹Ù¸¦ °¿ä±îÁö´Â ¾Æ´ÏÁö¸¸ °Á¶Çصµ ¾ÆµéÀº PHP°¡ ÁÁ´Ù°í ÇÑ´Ù´Ï, ¼ÖÁ÷È÷ ÇÊÀÚ°¡ ±×·± ¾ÆµéÀ» µÎ¾ú´Ù ÇØµµ Àß ÀÌÇØ´Â ¾È°¥ °Í °°´Ù(°áÄÚ ¼¼´ëÂ÷°¡ ¾Æ´Ï´Ù).
ÀÌ·± ¼¼»óÀÌ´Ù. °øÁ¸ÀÌ ÇÊ¿äÇÏ´Ù. PHP¿¡¼ ÀÚ¹Ù¸¦ ºÒ·¯ ¾µ ¼ö ÀÖ°í ÀÚ¹Ù¿¡¼µµ PHP¸¦ ºÒ·¯ ¾µ ¼ö ÀÖ´Â ¼¼»ó. ±×°ÍÀÌ ¹Ù·Î JSR 223, ÀÚ¹Ù Ç÷§Æû ½ºÅ©¸³Æ® ±â¼úÀÌ´Ù. PHP»Ó¸¸ ¾Æ´Ï¶ó ÀÚ¹Ù½ºÅ©¸³Æ®¿¡ ÃÖ±Ù °ü½ÉÀ» ºÒ·¯ ¸ðÀ¸°í ÀÖ´Â ±×·çºñ(Groovy)±îÁö ½ÇÁ¦ Áö¿øµÇ°í ÀÖ´Ù. ÇöÀç ½ºÆå °ø°³¾È±îÁö ³ª¿Â »óÅÂ(Âü°í ÀÚ·á 3)°í, JWSDP 1.5¿Í Àß ºÙ´Â ±¸Çöüµµ ÀÖ´Ù(Âü°í ÀÚ·á 4).
¸¶Ä§ JSR 223ÀÇ ½ºÆå ¸®µåÀÎ Michael GroganÀÌ JAX-WSAµµ ÇÔ²² Çϰí ÀÖ¾î ¾ê±â¸¦ ³ª´²º¸´Ï PHPÀÇ ¹ßÀü ¼Óµµ°¡ (JSR 223 ±¸Çöü¿¡ ºñÇØ) ³Ê¹« »¡¶ó JSR 223ÀÇ ±¸Çö ÇÁ·ÎÁ§Æ®µµ PHP ¿ÀǼҽº ÇÁ·ÎÁ§Æ® ¾È¿¡¼ Çϸé ÁÁ°Ú´Ù°í ÇÑ´Ù. »õ ¹öÀüÀÇ PHP°¡ ³ª¿Ã ¶§¸¶´Ù µû¶ó¼ ¾÷µ¥ÀÌÆ®µÈ JSR 223 ±¸Çöü°¡ ÇÔ²² ³ª¿ÂÅͶó, ¸¶Ä¡ MySQL°ú MySQL Connector/J(JDBC µå¶óÀ̹ö) °°Àº ´À³¦ÀÌ µç´Ù. ¾ÕÀ¸·Îµµ ´õ ¸¹Àº ½ºÅ©¸³Æ® ¾ð¾î°¡ JSR 223À» Áö¿øÇÏ¿© ¼·Î º¸¿ÏÇÏ´Â ÇÁ·Î±×·¡¹Ö ȯ°æÀ¸·Î ³ª¾Æ°¡¸®¶ó ¹Ï´Â´Ù. | | | | | |
| |
±×¸®°í ¾ÈŸ±õ°Ôµµ, ½ãÀÇ WS-I SA 1.1¿¡ µé¾î ÀÖ´Â JAX-RPC 2.0°ú JAXB 2.0 RI´Â ¸Å¿ì ±ÞÁ¶ÇÑ ÇüŶó¼ ÀÚ¹Ù->WSDL Çü½ÄÀÇ °³¹ßÀ» JAXB 2.0°ú WSMÀÇ ¾î³ëÅ×À̼ÇÀ¸·Î Ä¿½ºÅ͸¶ÀÌÁîÇÏ´Â ¹æ¹ýÀÌ ¾ÆÁ÷ ºÐ¸íÇÏÁö°¡ ¾Ê´Ù. ±×¸®°í ÀÌŬ¸³½ºÀÇ RCPµµ ´ÙÀ½ ´Þ¿¡ API°¡ È®Á¤µÇ¹Ç·Î ±×¿¡ ¸ÂÃç ³ª¾Æ°¡´Â °ÍÀÌ ÁÁÀ¸¸®¶ó ¿©°ÜÁø´Ù. ÀÌ·¸°Ô ±â¹Ý ±â¼úµéÀÌ ¸¶·ÃµÇ¾î °¡´Â µ¿¾È µ¶ÀÚ°¡ ÇÒ ÀÏÀ» ´Ù½Ã Çѹø Á¤¸®Çغ¸¸é,
¡ß ÇнÀ ºÐ¾ß
- ÄÚµð³×ÀÌÅÍ : end-to-end ¼³°è Àü¹Ý, SOA ¹æÄ§, WSDL, XML ½ºÅ°¸¶, SVN, CruiseControl, Wiki
- EJB ´ã´ç : EJB 3.0 ±â¼ú, JBoss EJB 3.0 Á¶±â ±¸Çöü, JBoss 4.0
- JWS ´ã´ç : JAX-RPC 2.0+JAXB 2.0, WSM ±â¼ú, WS-I SA 1.1, Tomcat 5.5
- RCP ´ã´ç : SWT, JFace, ÀÌŬ¸³½º RCP, JAX-RPC 2.0+JAXB 2.0
- MIDlet ´ã´ç : MIDP 2.0, JSR 172 J2ME Web Services, WTK WSDL Åø
- JSF ´ã´ç : JSF ±â¼ú, MyFaces(HTML ·»´õ¸µ Ŷ, WML ·»´õ¸µ Ŷ), Jetty 5.0, JAX-RPC 2.0+JAXB 2.0
¡ß Áغñ ºÐ¾ß
- ÄÚµð³×ÀÌÅÍ : SVN, CruiseControl, Wiki ȯ°æ ±¸Ãà ¹× »ç¿ë ¹æ¹ý ÀüÆÄ
- EJB ´ã´ç : JBoss 4.0 + EJB 3.0 ¼¹ö Áغñ ¹× ¼¼¼Ç ºó, ¿£Æ¼Æ¼ ºó Å×½ºÆ®
- JWS ´ã´ç : WS-I SA 1.1 Å×½ºÆ®
- RCP ´ã´ç : ÀÌŬ¸³½º RCP ½ÇÇà ȯ°æ Å×½ºÆ®
- MIDlet ´ã´ç : WTK 2.2 ½ÇÇà ȯ°æ ¹× À¥ ¼ºñ½º Å×½ºÆ®
- JSF ´ã´ç : Jetty 5.0 + MyFaces ¼¹ö Áغñ ¹× HTML¡¤WML ·»´õ¸µ Å×½ºÆ®
¡ß ÅäÀÇ ºÐ¾ß
- ÀÌ»óÀûÀÎ ÇÁ·ÎÁ§Æ® µð·ºÅ丮 ±¸Á¶(¼Ò½º, Å×½ºÆ®, ¹ÙÀ̳ʸ® À§Ä¡µî) ÇÕÀÇ
- Å×½ºÆ® ÀÛ¼º ¹æ½Ä(°¢ ¸ðµâ ´ã´çÀº µ¶¸³ÀûÀ¸·Î Å×½ºÆ® ÀÛ¼º. ÄÚµð³×ÀÌÅÍ´Â ÅëÇÕ Å×½ºÆ® ÀÛ¼º ¹× °¢ ¸ðµâ ´ç´çÀÌ µ¶¸³ÀûÀÎ Å×½ºÆ® ÀÛ¼ºÀ» ÇÒ ¼ö ÀÖµµ·Ï ´õ¹Ì µ¥ÀÌÅÍ Á¦°ø)
- Wiki¸¦ ÅëÇÑ ½Ç½Ã°£ ¹®¼ ÀÛ¼º ±ÔÄ¢(¹®¼ ¾ç½Ä°ú ´ë»ó Ç׸ñ µî)
ÇнÀ ºÐ¾ß¿Í Áغñ ºÐ¾ß°¡ WSM(¾×½Ã½º, ºñÇÏÀ̺ê WSM)¿¡¼ JWS(JAX-RPC 2.0°ú JAXB 2.0)À¸·Î ¹Ù²î¾úÀ¸¹Ç·Î ÀÌ Á¡ ÁÖÀÇÇÏ±æ ¹Ù¶õ´Ù.
¾î¶»°Ô »ý°¢ÇØ? - SOA °³¹ß
2¿ùÀº ª°íµµ °¢Á¾ ÇÁ·ÎÁ§Æ®ÀÇ Ãâ¹üÀ¸·Î ¼û°¡»Û ´ÞÀ̾ú´Ù. ³²µé 2³â ÇÏ´Â ¼®»ç¸¦ 1³â¿¡ ÇÏ·Á´Ù º¸´Ï(¿µ±¹ÀÇ Æ¯ÀÌÇÑ Á¦µµ¶ó ½Ã°£ Àý¾à Â÷¿ø¿¡¼ °í¸¿±â´Â ÇÏÁö¸¸), ¹æÇÐÀÌ ¾Æ´Ñ 2¿ùÀº ÂüÀ¸·Î ÀûÀÀÀÌ ¾È µÇ´Â ½Ã°£ÀÇ ¿¬¼ÓÀ̾ú´Ù. Ȥ½Ã³ª ÀÌ¹Ì Áö³ ´ÞÀÇ ÀÓ¹«¸¦ ¿Ïº®È÷ ¸¶Ä£ µ¶ÀÚ ÆÀÀÌ ÀÖ´Ù¸é, Áöü ¾øÀÌ ±¸ÇöÀ¸·Î µé¾î°¡ º¸±â¸¦ °·ÂÈ÷ ±ÇÇÑ´Ù. ´ÙÀ½ ´Þ¿¡´Â ¼ºñ½º ÃøÀ» À§ÇÑ UML°ú Ŭ¶óÀÌ¾ðÆ® Ãø °øÅë UI ¼³°èµµ¸¦ ¹ÙÅÁÀ¸·Î Åýà ¿¹¾à ¼ºñ½ºÀÇ ±¸Çö¿¡ ´Ù°¡°¡ º¸µµ·Ï ÇϰڴÙ.@
* ÀÌ ±â»ç´Â ZDNet KoreaÀÇ Á¦ÈÞ¸ÅüÀÎ ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®¿þ¾î¿¡ °ÔÀçµÈ ³»¿ëÀÔ´Ï´Ù.