ï»??xml version="1.0" encoding="utf-8" standalone="yes"?>美女一区二区久久,色视频在线播放,久草热久草在线频http://www.aygfsteel.com/loyalgl/category/47367.html实现解读客户思想与架构现有最成熟技术的完美融合zh-cnWed, 15 Dec 2010 02:14:04 GMTWed, 15 Dec 2010 02:14:04 GMT60【原】æÕQç‚ÒŽ•°çš„二˜q›åˆ¶è¡¨ç¤ºhttp://www.aygfsteel.com/loyalgl/archive/2009/12/01/304380.html龙樱龙樱Tue, 01 Dec 2009 07:12:00 GMThttp://www.aygfsteel.com/loyalgl/archive/2009/12/01/304380.htmlhttp://www.aygfsteel.com/loyalgl/comments/304380.htmlhttp://www.aygfsteel.com/loyalgl/archive/2009/12/01/304380.html#Feedback0http://www.aygfsteel.com/loyalgl/comments/commentRss/304380.htmlhttp://www.aygfsteel.com/loyalgl/services/trackbacks/304380.html阅读全文

龙樱 2009-12-01 15:12 发表评论
]]>
【原】JBPM开发资料整ç?/title><link>http://www.aygfsteel.com/loyalgl/archive/2009/03/03/257558.html</link><dc:creator>龙樱</dc:creator><author>龙樱</author><pubDate>Tue, 03 Mar 2009 07:11:00 GMT</pubDate><guid>http://www.aygfsteel.com/loyalgl/archive/2009/03/03/257558.html</guid><wfw:comment>http://www.aygfsteel.com/loyalgl/comments/257558.html</wfw:comment><comments>http://www.aygfsteel.com/loyalgl/archive/2009/03/03/257558.html#Feedback</comments><slash:comments>8</slash:comments><wfw:commentRss>http://www.aygfsteel.com/loyalgl/comments/commentRss/257558.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/loyalgl/services/trackbacks/257558.html</trackback:ping><description><![CDATA[     摘要: 引用åQšJBPM是一个扩展性很强的工作‹¹ç³»¾lŸï¼Œç™‘Öˆ†ç™„¡”¨JAVA语言开发,持久层采用Hibernate实现åQŒç†è®ÞZ¸Šè¯ß_¼Œåªè¦Hibernate支持的数据库JBPM都支持。同时它˜q˜èƒ½è¢«éƒ¨¾|²åœ¨ä»ÖM½•一‹Æ¾JAVA应用服务器上ã€?--BSTEKåQ?007-07版权所有,¾˜È‰ˆå¿…ç©¶åQ?nbsp; <a href='http://www.aygfsteel.com/loyalgl/archive/2009/03/03/257558.html'>阅读全文</a><img src ="http://www.aygfsteel.com/loyalgl/aggbug/257558.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/loyalgl/" target="_blank">龙樱</a> 2009-03-03 15:11 <a href="http://www.aygfsteel.com/loyalgl/archive/2009/03/03/257558.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【增】JBOSS 工作‹¹ä¸ŽJBPM开发实ä¾?/title><link>http://www.aygfsteel.com/loyalgl/archive/2009/03/03/257547.html</link><dc:creator>龙樱</dc:creator><author>龙樱</author><pubDate>Tue, 03 Mar 2009 06:27:00 GMT</pubDate><guid>http://www.aygfsteel.com/loyalgl/archive/2009/03/03/257547.html</guid><wfw:comment>http://www.aygfsteel.com/loyalgl/comments/257547.html</wfw:comment><comments>http://www.aygfsteel.com/loyalgl/archive/2009/03/03/257547.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.aygfsteel.com/loyalgl/comments/commentRss/257547.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/loyalgl/services/trackbacks/257547.html</trackback:ping><description><![CDATA[     摘要: 本文介绍了对开源工作流引擎JBPM的核心代码引用方法,便于研究工作‹¹çš„æœ‹å‹ä»¬å¿«é€ŸæŽŒæ¡JBPM的流½E‹æ¨¡æ¿å¼€å‘与使用。其中程序部分ä‹É用的是TESTçš„åŞ式便于朋友们快速掌握ã€?nbsp; <a href='http://www.aygfsteel.com/loyalgl/archive/2009/03/03/257547.html'>阅读全文</a><img src ="http://www.aygfsteel.com/loyalgl/aggbug/257547.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/loyalgl/" target="_blank">龙樱</a> 2009-03-03 14:27 <a href="http://www.aygfsteel.com/loyalgl/archive/2009/03/03/257547.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【è{】GNU 较宽村օ¬å…Þp®¸å¯è¯ (½Ž€ä½“中文翻译版)http://www.aygfsteel.com/loyalgl/archive/2009/03/03/author-rabbit.html龙樱龙樱Tue, 03 Mar 2009 01:19:00 GMThttp://www.aygfsteel.com/loyalgl/archive/2009/03/03/author-rabbit.htmlhttp://www.aygfsteel.com/loyalgl/comments/257462.htmlhttp://www.aygfsteel.com/loyalgl/archive/2009/03/03/author-rabbit.html#Feedback0http://www.aygfsteel.com/loyalgl/comments/commentRss/257462.htmlhttp://www.aygfsteel.com/loyalgl/services/trackbacks/257462.html本文其他格式: PDF å’?TXT
GNU 较宽村օ¬å…Þp®¸å¯è¯ (½Ž€ä½“中文翻译版)

 
声明!
˜q™æ˜¯ä¸€ä»?GNU 较宽村օ¬å…Þp®¸å¯è¯éžæ­£å¼çš„中文¾˜»è¯‘。它不是自由软体基金会所发布åQŒåƈ且不能适用于ä‹Éç”?GNU LGPL çš„èÊYä½?—â€?只有 GNU LGPL 英文原文的版本才行。然而,我们希望˜q™ä†¾¾˜»è¯‘能帮助中文的使用者更了解 GNU LGPLã€?nbsp;       
This is an unofficial translation of the GNU Lesser General Public License into Chinese. It was not published by the Free Software Foundation, and does not legally state the distribution terms for software that uses the GNU LGPL--only the original English text of the GNU LGPL does that. However, we hope that this translation will help Chinese speakers understand the GNU LGPL better.

 
GNU 较宽村օ¬å…Þp®¸å¯è¯

1999.2, ½W?2.1 ç‰?br />
版权所�(C) 1991, 1999 Free Software Foundation, Inc.
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

允许每个人复制和发布本授权文件的完整副本åQ?br /> 但不允许对它˜q›è¡Œä»ÖM½•修改ã€?br />
[˜q™æ˜¯½W¬ä¸€‹Æ¡å‘表的较宽村օ¬å…Þp®¸å¯è¯ (Lesser GPL) ç‰ˆæœ¬ã€‚å®ƒåŒæ—¶ä¹Ÿå¯è§†äØ“ GNU 函数库公å…Þp®¸å¯è¯ (GNU Library Public License) ½W?2 版的后ç‘ô者,故称ä¸?2.1 版]

本版本由 Leo-Hong (leohca (at) yahoo.com) ¾˜»è¯‘整理, Chao-Hong Liu æ ¡æ­£.



坯D¨€

大多数èÊY体许可证å†Ïx„å‰¥å¤ºæ‚¨å…±äº«å’Œä¿®æ”¹è½¯ä½“的自由。相反的åQŒGNU 通用公共许可证力图保证您å…׃ín和修改自ç”ÞpÊY体的自由 —â€?保证自由软体å¯Òމ€æœ‰ä‹É用者都是自ç”Þqš„ã€?br />
˜q™ä¸ªè®¸å¯è¯ï¼Œè¾ƒå®½æ‘Ö…¬å…Þp®¸å¯è¯åQŒé€‚用于一些由自由软体基金会与其他军_®šä½¿ç”¨æ­¤è®¸å¯è¯çš„èÊY体作者,所ç‰ÒŽ®Šè®¾è®¡çš„èÊY体套ä»?—â€?象是函数库。您也可以ä‹É用它åQŒä½†æˆ‘们廸™®®æ‚¨äº‹å…ˆä»”¾l†è€ƒè™‘åQŒåŸºäºŽä»¥ä¸‹çš„说明是否此许可证或原来的通用公共许可证在ä»ÖM½•ç‰Òޮпƒ…å†µä¸‹å‡ä¸ø™¾ƒå¥½çš„æ–ÒŽ¡ˆã€?br />
当我们谈到自ç”ÞpÊY体时åQŒæˆ‘们所指的是自由,而不是ä­hæ ¹{€‚我们的 GNU 通用公共许可证是设计用以¼‹®ä¿ä½¿æ‚¨æœ‰å‘布自ç”ÞpÊY体备份的自由åQˆå¦‚果您愿意åQŒæ‚¨å¯ä»¥å¯ÒŽ­¤™åÒŽœåŠ¡æ”¶å–ä¸€å®šçš„è´¹ç”¨åQ‰ï¼›¼‹®ä¿æ‚¨èƒ½æ”¶åˆ°½E‹å¼åŽŸå§‹ç æˆ–è€…åœ¨æ‚¨éœ€è¦æ—¶èƒ½å¾—åˆ°å®ƒåQ›ç¡®ä¿æ‚¨èƒ½ä¿®æ”¹èÊY体或ž®†å®ƒçš„一部分用于新的自由软体åQ›è€Œä¸”˜q˜ç¡®ä¿æ‚¨çŸ¥é“您可以做上述的这些事情ã€?br />
ä¸ÞZº†ä¿æŠ¤æ‚¨çš„æƒåˆ©åQŒæˆ‘们需要作出限åˆÓž¼š¼›æ­¢ä»ÖM½•人否认您上述的权利,或者要求您攑ּƒ˜q™äº›æƒåˆ©ã€‚如果您发布软äšg的副本,或者对之加以修改,˜q™äº›è§„定ž®Þp{åŒ–äØ“æ‚¨çš„è´£ä“Qã€?br />
例如åQŒå¦‚果您发布此函数库的副本,不管是免费还是收取费用,您必™åÕd°†æ‚¨äín有的一切权利给予接受者;您必™åȝ¡®ä¿ä»–们也能收到或得到原始½E‹å¼ç ï¼›å¦‚果您将此函数库与其他的½E‹å¼ç è¿ž¾l“,您必™åÀLä¾›å®Œæ•´çš„目的对象文äšg和程åº?object file)¾l™æŽ¥å—者,则当他们修改此函数库òq‰™‡æ–°ç¼–译过后,可以重新与目的档˜qžç»“。您òq¶ä¸”要将˜q™äº›æ¡æ¬¾¾l™ä»–们看åQŒä‹É他们知道他们有这æ ïLš„æƒåˆ©ã€?br />
我们采取两项措施来保护您的权åˆ? åQ?åQ‰ç”¨ç‰ˆæƒæ¥ä¿æŠ¤å‡½æ•°åº“ã€‚åÆˆä¸”ï¼ŒåQ?åQ‰æˆ‘们提供您˜q™ä†¾è®¸å¯è¯ï¼Œèµ‹äºˆæ‚¨å¤åˆÓž¼Œå‘布和(或)修改˜q™äº›å‡½æ•°åº“的法律许可ã€?br /> ä¸ÞZº†ä¿æŠ¤æ¯ä¸ªå‘布者,我们需要非常清楚地让每个äh明白åQŒè‡ªç”±å‡½æ•°åº“是没有担保责ä»Èš„。如果由于某äºÞZ¿®æ”¹äº†å‡½æ•°åº“,òq¶ç‘ô¾l­åŠ ä»¥ä¼ æ’­ï¼Œæˆ‘ä»¬éœ€è¦å®ƒçš„æŽ¥å—è€…æ˜Žç™½ï¼šä»–ä»¬æ‰€å¾—åˆ°çš„åÆˆä¸æ˜¯åŽŸå§‹çš„ç‰ˆæœ¬ã€‚æ•…ç”±å…¶ä»–äh引入的ä“Q何问题,对原作者的声誉ž®†ä¸ä¼šæœ‰ä»ÖM½•的媄响ã€?br />
最后,ç”׃ºŽè½¯ä½“专利不断地威胁自ç”ÞpÊY体的存在åQŒæˆ‘们希望商业公司无法藉ç”Þp‡ªä¸“利持有者取得一个受限的许可证,而有效地限制自由软体的ä‹É用者。因此,我们坚持一个函数库所能取得的ä»ÖM½•专利åQŒå¿…™åÖM¸Žæœ¬è®¸å¯è¯æ‰€å£°æ˜Žçš?#8220;完全自由使用”一致ã€?br />
大部分的 GNU 软体åQŒåŒ…括一些函数库åQŒæ˜¯å—到原来çš?GNU 通用公共许可证的保护。本许可证, GNU 较宽æùN€šç”¨å…¬å…±è®¸å¯è¯ï¼Œé€‚用于特ŒDŠè®¾è®¡çš„函数库,且与原来的通用公共许可证有很大的不同。我们在特定的函数库中ä‹É用它åQŒä»¥å‡†è®¸éžè‡ªç”Þqš„½E‹å¼å¯ä»¥ä¸Žè¿™äº›å‡½æ•°åº“˜qžç»“。当一个程式与一个函数库˜qžç»“åQŒä¸è®ºæ˜¯é™æ€è¿ž¾l“或使用å…׃ín函数库,二者的¾l“合可以合理地说是结合的作品åQŒä¸€ä¸ªåŽŸæ¥çš„å‡½æ•°åº“çš„è¡ç”Ÿå“ã€‚å› æ­¤ï¼ŒåŽŸæ¥çš„é€šç”¨å…¬å…±è®¸å¯è¯åªæœ‰åœ¨æ•´ä¸ª¾l“合品满­‘›_…¶è‡ªç”±çš„æ ‡å‡†æ—¶åQŒæ‰äºˆè®¸˜qžç»“。较宽松通用公共许可证则以更宽松的标准允许其他程式码与本函数库连¾l“ã€?br />
我们¿U°æ­¤è®¸å¯è¯?"较宽æ? 通用公共许可证,是因为它比è“v原来的通用公共许可证对使用者的自由做到较少的保护。在与非自由软体竞争æ—Óž¼Œå®ƒä¹Ÿæä¾›å…¶ä»–自由软体的写作者较ž®‘的优势。这些不利之处正是我们ä‹É用原来的通用公共许可证于许多函数库的理由。然而,较宽杄¡š„许可证可在某些特ŒDŠåœºåˆä¸‹å¸¦æ¥å¥½å¤„。例如,在少数情况下åQŒå¯èƒ½ä¼šæœ‰ç‰¹ŒDŠçš„需要而鼓励大家尽可能òq¿æ³›åœîC‹É用特定的函数库,因而ä‹Éå®ƒæˆä¸ºå®žé™…ä¸Šçš„æ ‡å‡†ã€‚äØ“äº†è¾¾åˆ°æ­¤ç›®æ ‡åQŒå¿…™åÕd…è®”Ržè‡ªç”±çš„程式ä‹É用此函数库。一个较常发生的情况是一个自ç”Þqš„函数库与一个被òq¿æ³›ä½¿ç”¨çš„非自由函数库做相同的工作,在此情况下,限制只有自由软体可以使用此自由函数库不会有多ž®‘好处,故我们如用了较宽æùN€šç”¨å…¬å…±è®¸å¯è¯ã€?br />
在其他情况下åQŒå…è®”Ržè‡ªç”±½E‹å¼ä½¿ç”¨ç‰¹å®šçš„函数库åQŒå¯ä»¥è®©æ›´å¤šçš„äh们ä‹É用自ç”ÞpÊY体的大部分。例如,允许非自ç”Þq¨‹å¼ä‹Éç”?GNU C 函数库可以让更多的äh们ä‹É用整ä¸?GNU 作业¾pȝ»ŸåQŒä»¥åŠå®ƒçš„变形,GNU/Linux 作业¾pȝ»Ÿã€?br />
ž®½ç®¡è¾ƒå®½æùN€šç”¨å…±å…¬è®¸å¯è¯å¯¹ä½¿ç”¨è€…的自由是较ž®‘的保护的,它却能确保与此函数库˜qžç»“的程式的使用者拥有自由,而且å…ähœ‰ä½¿ç”¨ä¿®æ”¹˜q‡çš„函数库版本来执行该程式的必要æ–ÒŽ³•ã€?br />
以下是复制、发布、以及修改的¾_„¡¡®æ¡æ¬¾ä¸Žæ¡ä»¶ã€‚请注意 "åŸÞZºŽå‡½æ•°åº“的作品" 以及 "使用函数库的作品" 之间的差异:前者包含来自函数库修改˜q‡çš„原始码;而后者则必须与函数库¾l“合才能执行ã€?br />

有关复制åQŒå‘布和修改的条‹Æ‘Ö’Œæ¡äšg

0. 本许可证适用于ä“Q何èÊY体函数库åQŒæˆ–其他包含了由版权所有者加入的注意事项的程式,或其他有公信力的团体宣称其程式可以在较宽æùN€šç”¨å…¬å…±è®¸å¯è¯?(ä¹Ÿç§°ä¹‹äØ“ "本许可证") 的条‹Æ¾ä¸‹å‘布。每一位许可证接受者以 "æ‚? 来称呹{€?br />
一ä¸?"函数åº? 意指一些èÊY体函数的集合åQŒä»¥åŠæˆ–准备好的资料以方便与应用½E‹å¼ (å…¶ä‹É用了其中某些函数与资æ–? ˜qžç»“形成可执行的½E‹å¼ã€?br />
以下åQ?函数åº? 一词指的是ä»ÖM½•在本条款下发布的˜q™ä¸€¾c»èÊY体函数库或作品,一ä¸?"åŸÞZºŽæœ¬å‡½æ•°åº“的作å“? 意指函数库或ä»ÖM½•在版权法下的衍生作品åQšä¹Ÿž®±æ˜¯è¯ß_¼Œä¸€ä¸ªåŒ…含了本函数库或其一部分的作品,可以是原ž®ä¸åŠ¨çš„åQŒæˆ–¾lè¿‡ä¿®æ”¹çš„,å’?或直接翻译成其他语言的ã€?(在下文中åQŒç¿»è¯‘是不受限地包含åœ?"修改" 的条‹Æ¾ä¸­ã€?

作品çš?"原始ç ? 意指对作品进行修æ”ÒŽœ€ä¼˜å…ˆæ‹©å–çš„åŞ式。对函数库而言åQŒå®Œæ•´çš„原始码意指所有模¾l„的所有原始程式,加上有关的介面的定义åQŒåŠ ä¸ŠæŽ§åˆ¶å‡½æ•°åº“çš„å®‰è£…å’Œ¾~–译çš?scriptã€?br />
本许可证条款不适用于复åˆÓž¼Œå‘布和修改以外的‹zÕdŠ¨ã€‚è¿™äº›æ´»åŠ¨è¶…å‡ø™¿™äº›æ¡‹Æ„¡š„范围。ä‹É用本函数库来执行本程式的动作不受条款的限åˆÓž¼Œè€Œç¨‹å¼çš„输出只有在其内容所构成的作品是åŸÞZºŽæœ¬å‡½æ•°åº“æ—?(与在什么样的工具中使用本函数库来输出无å…? åQŒè¿™ä¸€æ¡æ¬¾æ‰é€‚ç”¨ã€‚ä»¥ä¸Šæ˜¯å¦äØ“çœŸåˆ™å–å†³äºŽæœ¬å‡½æ•°åº“å…·ä½“ç”¨æ¥åšä»€ä¹ˆã€?br />
1. 只要您在每一½E‹å¼å‰¯æœ¬ä¸Šæ˜Žæ˜‘Ö’Œæ°å½“地宣告版权声明和不承担担保的声明åQŒåƈ保持此许可证的声明和没有担保的声明完整无损,òq¶å’Œ½E‹å¼ä¸€èµïL»™å…¶ä»–每位½E‹å¼æŽ¥å—者一份许可证的副本,您就可以用ä“Q何媒体复制和发布您收到的函数库的完整原始码ã€?br />
æ‚¨å¯ä»¥äØ“è½¬è®©å‰¯æœ¬çš„å®žé™…è¡ŒåŠ¨æ”¶å–ä¸€å®šè´¹ç”¨ã€‚æ‚¨ä¹Ÿå¯ä»¥é€‰æ‹©æä¾›æ‹…ä¿ä»¥æ¢å–ä¸€å®šçš„è´¹ç”¨ã€?br />
2. 只要您同时满­‘³ä¸‹é¢çš„æ‰€æœ‰æ¡ä»Óž¼Œæ‚¨å°±å¯ä»¥æŒ‰å‰é¢ç¬¬ä¸€‹Æ„¡š„要求修改函数库的一个或几个副本或它的ä“Q何部分,以此形成åŸÞZºŽæ­¤å‡½æ•°åº“的作品,òq¶ä¸”复制和发布这一¾lè¿‡ä¿®æ”¹çš„程式或作品:


被修改的作品本èín必须是一个èÊY体函数库ã€?br />
您必™åÕdœ¨ä¿®æ”¹˜q‡çš„æ¡£æ¡ˆä¸­é™„有明¼‹®çš„说明åQšæ‚¨ä¿®æ”¹äº†æ­¤ä¸€æ¡£æ¡ˆåŠä“Q何修改的日期ã€?br />
您必™å»è®©æ•´ä¸ªä½œå“å…è®¸½W¬ä¸‰æ–¹åœ¨æ­¤è®¸å¯è¯æ¡æ¬¾ä¸‹å¯ä»¥å…è´¹ä‹É用ã€?br />
如果修改˜q‡çš„函数库其某个讑֤‡ä½¿ç”¨åˆîCº†ã€Œä‹É用本函数库的应用½E‹å¼ã€æ‰€æä¾›çš„函数或资料表格åQŒå´ä¸æ˜¯å½“此讑֤‡è¢«å‘¼å«æ—¶ä»¥å‚数列传入æ—Óž¼Œåˆ™æ‚¨å¿…é¡»¼‹®å®žåšåˆ°åQŒå½“应用½E‹å¼ä¸æä¾›è¿™æ ïLš„函数或表格时åQŒåˆ™æ­¤è®¾å¤‡ä¾æ—§èƒ½å·¥ä½œåQŒä¸”其执行的ä»ÖM½•目的仍然有意义ã€?br /> (例如åQŒä¸€ä¸ªå‡½æ•°åº“的函数用来计½Ž—åã^æ–ÒŽ ¹åQŒå…¶ç›®çš„æ˜¯æœ‰å®Œæ•´çš„定义且与应用程式是无关的。因此, 2d ž®èŠ‚è¦æ±‚ä»ÖM½•本函æ•îC¼šä½¿ç”¨çš„,由应用程式所提供的函数或表格必须是选择性的åQšå¦‚果应用程式不提供的话åQŒåˆ™è®¡ç®—òqÏx–¹æ ¹çš„函数必须依旧能计½Ž—åã^æ–ÒŽ ¹)

˜q™äº›è¦æ±‚适用于整个修改过的作品。如果能够确定作品的一部分òq‰™žæœ¬å‡½æ•°åº“的衍生äñ”品,且可以合理地单独考虑òq¶å°†å®ƒä¸ŽåŽŸä½œå“åˆ†å¼€çš„è¯åQŒåˆ™å½“您ž®†å®ƒä½œäؓ独立的作品发布时åQŒå®ƒä¸å—此许可证和其条款的约束。但是当您将˜q™éƒ¨åˆ†ä¸ŽåŸÞZºŽæœ¬å‡½æ•°åº“的作品一同发布时åQŒåˆ™æ•´ä¸ªå¥—äšgž®†å—到本许可证条‹Æ„¡º¦æŸï¼Œå…¶å¯¹äºŽå…¶ä»–许可证持有人的使用范围扩大到整个äñ”品,也就是套件的每个部分åQŒä¸½Ž¡å®ƒæ˜¯è°å†™çš„ã€?br />
å› æ­¤åQŒæœ¬æ¡æ¬¾çš„æ„å›¾ä¸åœ¨äºŽç´¢å–权利åQŒæˆ–剥夺完全由您完成的作品的权利åQŒè€Œæ˜¯å±¥è¡Œæƒåˆ©æ¥æŽ§åˆ¶åŸºäºŽæœ¬å‡½æ•°åº“的集体作品或衍生作品的发布ã€?此外åQŒå°†ä¸Žæœ¬å‡½æ•°åº“无关的作品和本函数åº?(或基于本函数库的作品) 一èµäh”¾åœ¨è´®å­˜åª’体或发布媒体的同一卷上åQŒåƈ不导致将其他作品¾|®äºŽæ­¤è®¸å¯è¯çš„约束范围之内ã€?br />
3. 对于一个函数库的副本,您可以选择性地使用原来çš?GNU 通用公共许可证上的条‹Æ¾æ¥å–代本许可证上的条款。如果您要这么做åQŒæ‚¨å¿…须修改所有的参考到本许可证的注意事™å¹ï¼Œä½¿å®ƒä»¬æŒ‡å‘原来的 GNU 通用公共许可证,½W¬äºŒç‰ˆï¼Œä»¥å–代本许可è¯?如果有比½W¬äºŒç‰ˆçš„原来çš?GNU 通用公共许可证更新的版本出现的话åQŒåˆ™å¦‚果您愿意的话可以特别指明ä‹É用新ç‰?。请不要对这些注意事™å¹åšå‡ºå…¶ä»–的改变ã€?br />
一旦在一个副本上做了˜q™æ ·çš„æ”¹å˜ï¼Œåˆ™è¯¥å‰¯æœ¬ž®±æ— æ³•撤回这æ ïLš„æ”¹å˜åQŒæ•…原来çš?GNU 通用公共许可证将适用于所有后¾l­çš„副本以及由此副本衍生出来的作品ã€?br />
此一选择性适用于当您想要将一部分的函数库原始码复制到一个非函数库的½E‹å¼ä½¿ç”¨æ—¶ã€?br />
4. 您可以以目标码或可执行åŞ式复制或发布本函数库 (或符合第 2 ‹Æ¾ï¼ŒåŸÞZºŽæœ¬å‡½æ•°åº“的作å“?åQŒåªè¦æ‚¨éµå®ˆå‰é¢çš„第 1ã€? ‹Æ¾ï¼Œòq¶åŒæ—¶æä¾›å®Œæ•´çš„相关机器可读的原始码åQŒè€Œè¿™äº›åŽŸå§‹ç å¿…é¡»åœ¨å‰é¢çš„½W?1 与第 2 ‹Æ¾æ¡ä»¶ä¸‹åQŒåœ¨ä¸€èˆ¬ä¹ æƒ¯ä¸Šç”¨æ¥åšèÊY体交换的媒体上发布ã€?br />
如果所发布的目标码是由指定的地ç‚ÒŽä¾›æ‹·è´çƒ¦å–,那么由同一地点所提供½{‰ä­h的原始码拯‚´ç´¢å–可以½Ž—作原始码的发布åQŒå³ä½¿ç¬¬ä¸‰æ–¹ä¸å¼ºæ±‚与目标码一起复制原始码ã€?br />
5. 一个程式若包含不经ä»ÖM½•部分修改的函数库åQŒä½†å´æ˜¯è®¾è®¡¾lç”±¾~–译或连¾l“的方式与本函数库一同工作者,¿UîC¹‹ä¸?"使用函数库的作品"。这æ ïLš„一个作品,严格地说åQŒåƈ非本函数库的衍生作品åQŒå› è€Œä¸åœ¨æœ¬è®¸å¯è¯çš„范围之内ã€?br />
然而,ž®?"使用函数库的作品" 与本函数库连¾l“而äñ”生可执行½E‹å¼åQŒåˆ™æ˜¯æœ¬å‡½æ•°åº“的衍生å“?(å› äØ“å®ƒåŒ…å‡½äº†æœ¬å‡½æ•°åº“çš„ä¸€éƒ¨åˆ†)åQŒè€Œä¸æ˜?"使用函数库的作品"åQŒå› æ­¤å…¶å¯æ‰§è¡Œç¨‹å¼åŒ…含在本许可证的范围内。第 6 ‹Æ¾è¯´æ˜Žäº†å‘布此可执行½E‹å¼çš„æ¡‹Æ¾ã€?br />
å½?"使用函数库的作品" 使用了函数库部分的标头档内容æ—Óž¼Œåˆ™æ­¤ä½œå“å³ä‹É其原始码不属于本函数库的衍生品,但其目标码仍然是。这一ç‚ÒŽ˜¯å¦äؓ真特别在是否本作品可以在不需要本函数库即可连¾l“,或者是否该作品本èín也是一个函数库时特别明显ã€?br />
如果˜q™æ ·çš„目标档只ä‹É用数字参数、资料结构层¾U§ä¸Žé™„属品、以及小巨集和小内□å¼?(ž®äºŽæˆ–等于十è¡? åQŒåˆ™æ­¤ç›®æ ‡æ¡£çš„ä‹É用是不受限的åQŒä¸è®ºæ˜¯å¦å®ƒæ˜¯åˆæ³•的衍生作品ã€?(但可执行½E‹å¼è‹¥åŒ…函此目标档以及一部分的函数库åQŒä»ç„¶å°†åœ¨ç¬¬ 6 ‹Æ„¡š„规定ä¸?

否则的话åQŒå¦‚果本作品是本函数库的衍生品,您必™åÕdœ¨½W?6 ‹Æ„¡š„规定下发布该作品的目标码。ä“Q何包含该作品的可执行½E‹å¼ä¹Ÿåœ¨½W?6 ‹Æ„¡š„范围内,不论它们是否直接与本函数库连¾l“ã€?br />
6. åšäØ“ä¸Šè¿°æ¡æ¬¾çš„ä¾‹å¤–æƒ…å†µï¼Œæ‚¨ä¹Ÿå¯ä»¥ž®?"使用函数库的作品" 与本函数库结合或˜qžç»“åQŒä»¥äº§ç”ŸåŒ…含部分本函数库的作品,òq¶åœ¨å…è®¸ä½¿ç”¨è€…自íw«ä‹É用时可以修改该作品,以及在对修改˜q›è¡Œåç»„译除错的情况下,您可以依照您的选择发布该作品ã€?br />
您必™åÕdœ¨æ¯ä¸ªä½œå“çš„副本突昑ևºå¦‚下的注意事™å¹ï¼šæœ¬å‡½æ•°åº“在作品中被ä‹É用,以及本函数库以及它的使用是在本许可证的规定下。您必须提供本许可证的副本。如果该作品在执行时昄¡¤ºç‰ˆæƒå£°æ˜ŽåQŒæ‚¨å¿…须在其中包含本函数库的版权声明åQŒä»¥åŠæŒ‡å¼•ä‹É用者取得本许可证的副本。同æ—Óž¼Œæ‚¨å¿…™åÕdšåˆîC»¥ä¸‹å…¶ä¸­ä¸€ä»¶äº‹åQ?


å¿…é¡»ž®†å®Œæ•´çš„æœºå™¨å¯è¯»çš„函数库原始码包含在该作品中åQŒåŒ…括ä“Q何该作品使用到的改变 (˜q™äº›æ”¹å˜å¿…须在前˜q°ç¬¬ 1 与第 2 ‹Æ„¡š„要求下发å¸?åQ›è€Œä¸”åQŒå¦‚果该作品是一个与函数库连¾l“的「完整的、机器可□的 "使用函数库的作品"」,则要有目标码å’?或原始码åQŒå¦‚æ­¤ä‹É用者可以修æ”ÒŽœ¬å‡½æ•°åº“且可以重新˜qžç»“åQŒä»¥äº§ç”ŸåŒ…函修改˜q‡çš„函数库的修改˜q‡çš„可执行程式ã€?(理所当然的若使用者修改了函数库的档案定义内容æ—Óž¼Œåˆ™è¯¥ä½œå“ä¸å¿…然可以重新编译以使用修改˜q‡çš„定义ã€?

在与函数库连¾l“时使用适当的分享函数库˜qžç»“机制。一个适当的机制是åQ?(1) 在执行时使用已存在于使用者的电脑中的函数库副本,而不是将函数库的函数复制到可执行½E‹å¼é‡Œï¼Œä»¥åŠ (2) 如果使用者安装了一份修改过的函数库åQŒåªè¦ä¿®æ”¹è¿‡çš„版本在介面上与该作品在¾~–译˜qžç»“时所用的版本是相容的åQŒåˆ™è¯¥æ‰§è¡Œç¨‹å¼å¯ä»¥ä¸Žä¿®æ”¹˜q‡çš„函数库运作良好ã€?br />
åœ¨è¯¥ä½œå“å†…æä¾›ä¹¦é¢æŠ¥ä»øP¼Œæœ‰æ•ˆæœŸä¸ž®‘于三年åQŒä»¥æä¾›åŒæ ·çš„ä‹É用者上˜q°ç¬¬ 6a ‹Æ¾ä¸­çš„内容,费用不得­‘…过该程式发布的实际成本ã€?如果所发布的作品是由指定的地点提供拯‚´ç´¢å–åQŒåˆ™ç”±åŒä¸€åœ°ç‚¹æä¾›ä¸Šè¿°å†…容的等ä»äh‹·è´çƒ¦å–ã€?br />
¼‹®å®šä½¿ç”¨è€…å·²¾læ”¶åˆ°è¯¥ä½œå“çš„一份复åˆÓž¼Œæˆ–是您已¾lå¯„¾l™è¯¥ä½¿ç”¨è€…一份复制品ã€?br /> 对于一个可执行½E‹å¼åQŒå…¶æ‰€éœ€çš?"使用函数库的作品" çš„åŞ式必™åÕdŒ…括ä“Q何要从中再äñ”生可执行½E‹å¼æ—¶æ‰€éœ€çš„资料与工具½E‹å¼ã€‚然而,有一个特ŒDŠä¾‹å¤–,其所发布的内容不需要包括ä“Q何一般与「可执行本程式的作业¾pȝ»Ÿã€çš„主要部分 (如编译器、核心等) 一起发布的部分 (不论是原始码或可执行ç ?åQŒé™¤éžè¿™äº›ç»„成部分和可执行作品结合在一赗÷€?br />
有一个可能情冉|˜¯åQŒè¿™äº›è¦æ±‚与其他通常不与作业¾pȝ»Ÿåœ¨ä¸€èµïLš„¿Uæœ‰å‡½æ•°åº“的版权限制相抵触,˜q™æ ·çš„æŠµè§¦è¡¨½Cºæ‚¨ä¸èƒ½ž®†å®ƒä»¬ä¸Žæœ¬å‡½æ•°åº“一èµïL”¨äºŽæ‚¨å‘布的可执行½E‹å¼ä¸­ã€?br />
7. 您可以将使用本函数库的函数库讑֤‡åQŒä»¥åŠå…¶ä»–不在本许可证范围内的函数库åQŒå¯¹½{‰åœ°æ”‘Ö…¥ä¸€ä¸ªå•独的函数库中åQŒåƈ在基于本函数库的作品以及其他函数库在其他状态下同意可以个别发布åQŒä»¥åŠæ‚¨åšåˆ°ä»¥ä¸‹ä¸¤ç‚¹çš„æƒ…况下åQŒæ‚¨å¯ä»¥å‘布此结合的函数库:


ž®†åŸºäºŽæœ¬å‡½æ•°åº“的作品单独不与其他函数库设备结合地åQŒä¸Žæ­¤ç»“合的函数库一同发布。该作品必须在上˜q°æ¡‹Æ„¡š„规定下发布ã€?br />
在此¾l“合的函数库中明昑֜°æŒ‡å‡ºå…¶ä¸­ä¸€éƒ¨åˆ†çš„作品是åŸÞZºŽæœ¬å‡½æ•°åº“åQŒåƈ且说明那里可以找到同样不å…ïL»“合åŞ式的作品ã€?
8. 除非您明¼‹®æŒ‰è®¸å¯è¯æå‡ºçš„要求åŽÕdšåQŒå¦åˆ™æ‚¨ä¸èƒ½å¤åˆ¶ã€ä¿®æ”V€è{发许可证、与本函数库˜qžç»“、和发布本函数库。ä“Q何试囄¡”¨å…¶ä»–方式复制、修攏V€è{发许可证、与本函数库˜qžç»“、和发布本函数库是无效的åQŒè€Œä¸”ž®†è‡ªåŠ¨ç»“æŸè®¸å¯è¯èµ‹äºˆæ‚¨çš„æƒåˆ©ã€‚ç„¶è€Œï¼Œå¯šw‚£äº›ä»Žæ‚¨é‚£é‡ŒæŒ‰è®¸å¯è¯æ¡‹Æ‘Ö¾—到副本和权利的äh们,只要他们¾l§ç®‹å…¨é¢å±¥è¡Œæ¡æ¬¾åQŒè®¸å¯è¯èµ‹äºˆä»–们的权利仍然有效ã€?br />
9. 您没有在许可证上½{‘Ö­—åQŒå› è€Œæ‚¨æ²¡æœ‰å¿…要一定接受此一许可证。然而,没有ä»ÖM½•其他东西赋予您修改和发布本函数库及其衍生作品的权利。如果您不接受许可证åQŒè¿™äº›è¡Œä¸ºæ˜¯æ³•律¼›æ­¢çš„。因此,如果您修æ”ÒŽˆ–发布函数åº?(或ä“Q何基于函数库的作å“? åQŒæ‚¨ž®Þp¡¨æ˜Žæ‚¨æŽ¥å—˜q™ä¸€è®¸å¯è¯ä»¥åŠå®ƒçš„æ‰€æœ‰æœ‰å…›_¤åˆ¶ã€å‘布和修改本函数库或基于它的作品的条款和条件ã€?br />
10. 每当您重新发布函数库 (或ä“Q何基于函数库的作å“? æ—Óž¼ŒæŽ¥å—者自动从原始许可证颁发者那里接到受˜q™äº›æ¡æ¬¾å’Œæ¡ä»¶æ”¯é…çš„复制、发布、连¾l“或修改本函数库的许可。您不可以强˜q«æŽ¥å—者åï–行除了这里赋予他们的权利之外的其他限制。您也没有强求第三方履行许可证条‹Æ„¡š„义务ã€?br />
11. 如果ç”׃ºŽæ³•院判决或违反专利的指控或ä“Q何其他原å›?(不限于专利问é¢? 的结果,使得强加于您的条ä»?(不管是法院判冻I¼Œåè®®ä¹¦æˆ–å…¶ä»–) 和许可证的条件有冲突æ—Óž¼Œä»–们也不能ä×o您背¼›»è®¸å¯è¯çš„æ¡‹Æ¾ã€‚在您不能同时满­‘Ïxœ¬è®¸å¯è¯è§„定的义务及其他相关的义务来发布函数库æ—Óž¼Œåˆ™ç»“果您只能够根本不发布函数库。例如,如果某一专利许可证不允许所有直接或间接从您那里接受副本的äh们,在不付专利费的情况下重新发布函数库,唯一能同时满­‘³ä¸¤æ–šw¢è¦æ±‚的办法是停止发布函数库ã€?br />
如果本条‹Æ„¡š„ä»ÖM½•部分在特定的环境下无效或无法实施åQŒå°±ä½¿ç”¨æ¡æ¬¾çš„其余部分,òq¶å°†˜q™éƒ¨åˆ†æ¡‹Æ¾ä½œä¸ºæ•´ä½“用于其他环境。本条款的目的不在于引诱您äçR犯专利或其他财äñ”权的要求åQŒæˆ–争论˜q™ç§è¦æ±‚的有效性。本条款的主要目的在于保护自ç”ÞpÊY体发布系¾lŸçš„完整性。它是通过公共许可证的应用来实现的。许多äh已依赖同是出自此¾pȝ»Ÿçš„应用程式,¾lç”±æ­¤ç³»¾lŸå‘布大量自ç”ÞpÊY体而做出慷慨的供献。作è€?捐献者有权决定他/å¥ÒŽ˜¯å¦é€šè¿‡ä»ÖM½•å…¶ä»–¾pȝ»Ÿå‘布软体åQŒè®¸å¯è¯æŒæœ‰äºÞZ¸èƒ½å¼ºåŠ è¿™¿Ué€‰æ‹©ã€?br />
本节的目的在于明¼‹®è¯´æ˜Žè®¸å¯è¯å…¶ä½™éƒ¨åˆ†å¯èƒ½äº§ç”Ÿçš„结果ã€?br />
12. 如果ç”׃ºŽä¸“利或者由于有版权的介面问题ä‹É函数库在某些国家的发布和使用受到限制åQŒåˆ™åœ¨è®¸å¯è¯¾U¦æŸä¸‹çš„原始版权拥有者可以增加发布地区的限制条款åQŒå°†˜q™äº›å›½å®¶æ˜Žç¡®æŽ’除在外åQŒåƈ在这些国家以外的地区发布函数库。在˜q™ç§æƒ…况下,许可证套件含的限制条‹Æ‘Ö’Œè®¸å¯è¯æ­£æ–‡ä¸€æ ähœ‰æ•ˆã€?13. 自由软体基金会可能随时出版较宽松通用公共许可证的修改版或新版。新版和当前的版本在原则上保持一è‡ß_¼Œä½†åœ¨æåˆ°æ–°é—®é¢˜æ—¶æˆ–有关事™åÒŽ—¶åQŒåœ¨¾l†èŠ‚ä¸Šå¯èƒ½å‡ºçŽ°å·®åˆ«ã€?br />
每一版本都有不同的版本号。如果函数库指定可适用的许可证版本号以å?"ä»ÖM½•更新的版æœ? åQŒæ‚¨æœ‰æƒé€‰æ‹©éµåó@指定的版本或自由软体基金会以后出版的新版本。如果函数库未指定许可证版本åQŒæ‚¨å¯é€‰æ‹©è‡ªç”±è½¯ä½“基金会已¾lå‡ºç‰ˆçš„ä»ÖM½•版本ã€?14. 如果您愿意将函数库的一部分¾l“合到其他自ç”Þq¨‹å¼ä¸­åQŒè€Œå®ƒä»¬çš„发布条äšg不同åQŒè¯·å†™ä¿¡¾l™ä½œè€…,要求准予使用。如果是自由软体基金会加以版权保护的软体åQŒå†™ä¿¡ç»™è‡ªç”±è½¯ä½“基金会,我们有时会作ä¸ÞZ¾‹å¤–的情况处理。我们的军_®šå—两个主要目标的指导åQŒè¿™ä¸¤ä¸ªä¸»è¦ç›®æ ‡æ˜¯ï¼šæˆ‘们的自ç”ÞpÊY体的衍生作品¾l§ç®‹ä¿æŒè‡ªç”±çŠ¶æ€ï¼Œä»¥åŠä»Žæ•´ä½“ä¸Šä¿ƒè¿›è½¯ä½“çš„å…±äº«å’Œé‡å¤åˆ©ç”¨ã€?br />
没有担保
15. ç”׃ºŽå‡½æ•°åº“准予免费ä‹É用,在适用法准许的范围内,对函数库没有担保。除非另有书面说明,版权所有者和/或其他提供函数库的ähä»?"一æ ? 不提供ä“Q何类型的担保åQŒä¸è®ºæ˜¯æ˜Žç¡®çš„,˜q˜æ˜¯éšå«çš„,包括但不限于可销售和适合特定用途的隐含保证。全部的风险åQŒå¦‚函数库的质量和性能问题都由您来承担。如果函数库出现¾~ºé™·åQŒæ‚¨åº”当承担所有必要的服务、修复和æ”ÒŽ­£çš„费用ã€?br />
16. 除非适用法或书面协议的要求,在ä“Q何情况下åQŒä“Q何版权所有者或ä»ÖM½•按许可证条款修改和发布函数库的äh们都不对您的损失负有ä»ÖM½•è´£ä“Q。包括由于ä‹É用或不能使用函数库引èµïLš„ä»ÖM½•一般的、特ŒDŠçš„、偶然发生的或重大的损失 (包括但不限于数据的损失,或者数据变得不¾_„¡¡®åQŒæˆ–者您或第三方的持¾l­çš„æŸå¤±åQŒæˆ–者函数库不能和其他èÊY体协调运行等) 。即使版权所有者和其他人提到这¿UæŸå¤Þqš„可能性也不例外ã€?br />
-条文¾l“束-


如何ž®†è¿™äº›æ¡‹Æ„¡”¨åˆ°æ‚¨æ–°çš„函数åº?/strong>

如果您开发了新函数库åQŒè€Œä¸”您需要它得到公众最大限度的利用åQŒè¦åšåˆ°˜q™ä¸€ç‚¹çš„æœ€å¥½åŠžæ³•æ˜¯ž®†å®ƒå˜äؓ自由软体åQŒä‹É得每个äh都能在遵守本条款 (或者是在原来的通用公共许可证的条款) 的基¼‹€ä¸Šå¯¹å®ƒè¿›è¡Œä¿®æ”¹å’Œé‡æ–°å‘布ã€?br />
ä¸ÞZº†åšåˆ°˜q™ä¸€ç‚¹ï¼Œè¯·å°†å‡½æ•°åº“附上下列声明。最安全的方式是ž®†å®ƒæ”‘Öœ¨æ¯ä¸ªåŽŸå§‹ç æ¡£æ¡ˆçš„å¼€å¤ß_¼Œä»¥ä¾¿æœ€æœ‰æ•ˆåœîC¼ é€’æ‹’¾læ‹…保的信息。每个文件至ž®‘应æœ?"版权所æœ? 行以及在什么地方能看到声明全文的说明ã€?br />
用一行空间描˜q°å‡½æ•°åº“的名¿U°å’Œå®ƒçš„用途简单说æ˜?br /> 版权所æœ?(C) 19XX 作者姓å?br /> ˜q™ä¸€å‡½æ•°åº“是自由软体åQŒæ‚¨å¯ä»¥éëŠ…§è‡ªç”±è½¯ä½“基金会出版的 GNU 较宽æùN€šç”¨å…¬å…±è®¸å¯è¯æ¡‹Æ¾æ¥ä¿®æ”¹å’Œé‡æ–°å‘布这一½E‹å¼åQŒæˆ–者用许可证的½W¬äºŒç‰ˆï¼Œæˆ–è€?(æ ÒŽ®æ‚¨çš„选择) 用ä“Q何更新的版本ã€?br />
发布˜q™ä¸€å‡½æ•°åº“的目的是希望它有用åQŒä½†æ²¡æœ‰ä»ÖM½•担保。甚è‡Ïx²¡æœ‰é€‚合特定目的而隐含的担保。更详细的情况请参阅 GNU 较宽æùN€šç”¨å…¬å…±è®¸å¯è¯ã€?br />
您应该已¾lå’Œå‡½æ•°åº“一èµäh”¶åˆîC¸€ä»?GNU 较宽æùN€šç”¨å…¬å…±è®¸å¯è¯çš„副本。如果还没有åQŒå†™ä¿¡ç»™åQ?br />
Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.

此外˜q˜åº”加上如何藉由电子邮äšg或一般信件与您保持联¾pȝš„信息ã€?
如果需要,您应该取得您的上å?(如果您是½E‹å¼å‘? 或您的学校签¾|²æ”¾å¼ƒå‡½æ•°åº“版权的声明。下面只是一个例子,您应该改变相应的名称åQ?br />
Yoyodyne 公司以此方式攑ּƒ James Random Hacker 所写的 `Frob' 函数åº?(用以扭è{ knobs 的函数库) 的全部版权利益ã€?br /> Ty coon ½{‘֐åQ?990.4.1
Ty coon 副总裁

全部ž®±åªæœ‰è¿™æ ·äº†!



]]>
【原】JBOSS开源工作流引擎JBPM初探介绍http://www.aygfsteel.com/loyalgl/archive/2009/02/21/255948.html龙樱龙樱Sat, 21 Feb 2009 06:58:00 GMThttp://www.aygfsteel.com/loyalgl/archive/2009/02/21/255948.htmlhttp://www.aygfsteel.com/loyalgl/comments/255948.htmlhttp://www.aygfsteel.com/loyalgl/archive/2009/02/21/255948.html#Feedback0http://www.aygfsteel.com/loyalgl/comments/commentRss/255948.htmlhttp://www.aygfsteel.com/loyalgl/services/trackbacks/255948.html前言åQ?/strong>

1 工具资料åQ?/em>

a.JBoss IDE插äšg的捆¾l‘式Eclipse版本.   http://www.jboss.com/products/jbosside/downloads
 åQˆwindowsòq›_°ç”¨æˆ·é€‰æ‹©JBossIDE-1.6.0.GA-Bundle-win32.zip, linux用户选择JBossIDE-1.6.0.GA-Bundle-linux-gtk.tar.gzåQ?br />
b.JBOSS服务器下载地址 http://www.jboss.org/products/jbossas/downloads

c.JBPM 下蝲地址åQ?http://labs.jboss.com/jbossjbpm/jpdl_downloads/

d.ant 下蝲地址åQ?http://apache.mirror.phpchina.com/ant/binaries/apache-ant-1.7.0-bin.zip

e tomcat 下蝲地址åQ?http://apache.mirror.phpchina.com/tomcat/

f.JBMP 在线演示DEMO åQ?http://docs.jboss.com/jbpm/v3/demos/movies/jbpm-overview.htm


2 必读的资料:

 a.[æ€È»“]揭秘jbpm‹¹ç¨‹å¼•擎内核设计思想及构架收è—?http://blog.csdn.net/james999/archive/2007/09/02/1769592.aspx#1
 b.[论坛]关于工作‹¹å¼•擎的问题åQ?http://www.javaeye.com/topic/2784
 c.[论坛]工作‹¹ç³»¾lŸï¼šåœ¨è¯¯åŒÞZ¸­æ¼«æ­¥ http://www.javaeye.com/topic/199074?page=1
 d.[æ€È»“]最新JBoss jBPM 3.1 开始指南之ä¸?--创徏‹¹ç¨‹å’Œéƒ¨¾|²æµ½E?http://www.99inf.net/SoftwareDev/Java/43324.htm
 e.[æ€È»“]jBPM入门学习Hello World  http://www.zxbc.cn/html/javajc/0511064135264.html
 f.[æ€È»“]jBPM-JPDL v3.2环境部çÖv——发布到Tomcat + MySQL  http://www.uml.org.cn/workclass/200809085.asp
 g.[æ€È»“] 三大ä¸ÀLµå·¥ä½œ‹¹å¼•擎技术分析与市场预测 http://dev.csdn.net/develop/article/64/64170.shtm
 h.[æ€È»“]jBPM开发入门指南(1-5åQ?http://www.aygfsteel.com/chengang/category/12967.html
 i.[工具]JBPM详细说明 åQ?http://www.open68.com/doc/jbpm-3.0/index.html
 j.[工具]jbpm表结构说明:http://www.aygfsteel.com/libin2722/articles/143249.html



正文åQ?br />
1 关于jBPM

jBPMåQŒå…¨¿U°æ˜¯Java Business Process ManagementåQŒæ˜¯ä¸€¿UåŸºäºŽJ2EE的轻量çñ”工作‹¹ç®¡ç†ç³»¾lŸã€‚jBPM是公开源代码项目,它ä‹É用要遵åó@ Apache License。jBPMåœ?004òq?0æœ?8日,发布äº?.0版本åQŒåƈ在同一天加入了JBossåQŒæˆä¸ÞZº†JBoss企业中间件åã^台的一个组成部分,它的名称也改成JBoss jBPM。随着jBPM加入JBoss¾l„织åQŒjBPM也将˜q›å…¥ä¸€ä¸ªå…¨æ–°çš„发展时代åQŒå®ƒçš„前景是十分光明的ã€?br />
jBPM最大的特色ž®±æ˜¯å®ƒçš„商务逻辑定义没有采用目前的一些规范,如WfMC&acute;s XPDL, BPML, ebXML, BPEL4WS½{‰ï¼Œè€Œæ˜¯é‡‡ç”¨äº†å®ƒè‡ªå·±å®šä¹‰çš„JBoss jBPM Process Definition Language (jPDL)。jPDLè®¤äØ“ä¸€ä¸ªå•†åŠ¡æµ½E‹å¯ä»¥è¢«çœ‹ä½œæ˜¯ä¸€ä¸ªUML状态图。jPDLž®±æ˜¯è¯¦ç»†å®šä¹‰äº†è¿™ä¸ªçŠ¶æ€å›¾çš„æ¯ä¸ªéƒ¨åˆ†ï¼Œå¦‚è“v始、结束状态,状态之间的转换½{‰ã€?br />
jBPM的另一个特色是它ä‹É用Hibernate来管理它的数据库。Hibernate是目前Java领域最好的一¿Uæ•°æ®æŒä¹…层解决æ–ÒŽ¡ˆã€‚通过HibernateåQŒjBPMž®†æ•°æ®çš„½Ž¡ç†èŒèƒ½åˆ†ç¦»å‡ºåŽ»åQŒè‡ªå·×ƒ¸“注于商务逻辑的处理ã€?/span>

2 关于jPDL

jPDLåQˆJBoss jBPM Process Definition LanguageåQ‰æ˜¯æž„徏于jBPM框架上的‹¹ç¨‹è¯­è¨€ä¹‹ä¸€ã€‚在jPDL中提供了ä»ÕdŠ¡åQˆtasksåQ‰ã€å¾…处理状æ€?åQˆwait statesåQ‰ã€è®¡æ—¶å™¨åQˆtimersåQ‰ã€è‡ªåŠ¨å¤„ç†ï¼ˆautomated actionsåQ?#8230;½{‰æœ¯è¯­ï¼Œòq‰™€šè¿‡å›‘Öž‹åŒ–çš„‹¹ç¨‹å®šä¹‰åQŒå¾ˆç›´è§‚地描˜qîC¸šåŠ¡æµ½E‹ã€?br />
jPDL可以部çÖv于Java语言的ä“Q何应用环境下åQŒJavaSE Application(Swing/SWT)、JavaEE Application(Application Server) ã€?br />



3 jPDL分发包的¾l„成

目前jPDL的最新版本是3.2.3åQŒé€šè¿‡http://labs.jboss.com/jbossjbpm/jpdl_downloads/ 可以获得官方下蝲包ã€?br /> 一¿Uæ˜¯æ ‡å‡†åŒ?jbpm-jpdl-3.2.3.zip)åQŒä¸€¿Uæ˜¯å¥—äšgåŒ?jbpm-jpdl-suite-3.2.3.zip),˜q˜æœ‰JBoss jBPM Starters Kit是一个综合包åQŒå‰ä¸¤è€…最大的区别是套装包自带一个已¾lé…¾|®å¥½çš„jboss服务åQŒä¸‹è½½è§£åŽ‹ç¾ƒåŽï¼Œå¯ç›´æŽ¥è¿è¡Œã€?br />
åQ?åQ‰jPDL的核心程序包(jbpm-jpdl.jar)

它是一个典型的jaræ–‡äšgåQŒå®ƒæ¶ëŠ›–å¯Ò޵½E‹å®šä¹‰å’Œ˜qè¡Œæ—¶æµ½E‹å®žä¾‹ä¸Šä¸‹æ–‡çŽ¯å¢ƒçš„æ“ä½œAPI。在最½Ž€åŒ–的业务‹¹ç¨‹æ ·ä¾‹ä¸­ï¼ŒjPDLž®†æµ½E‹å®šä¹‰å­˜å‚¨ä¸ŽXML 格式的定义文件中åQŒåœ¨˜qè¡Œæ—¶è²å…¥å†…存,在内存里记录完整的业务实例和执行˜q‡ç¨‹çš„环境变量,òq¶å®Œæˆå…¨éƒ¨æ“ä½œã€‚显ç„Óž¼Œåœ¨å®žé™…应用中åQŒæµ½E‹ä¿¡æ¯å¿…™å»è¢«æŒä¹…化的存储于数据库中。jPDL使用了Hibernateä½œäØ“å…¶å¯¹è±¡æŒä¹…åŒ–çš„APIã€?br />
åQ?åQ‰Graphical Process Designer插äšg(jbpm-jpdl-designer-3.1.2.zip)

它是一个基于Eclipse的图型编辑插件。ä‹É用它可以对业务流½E‹è¿›è¡Œå¯è§†åŒ–的定åˆÓž¼Œè€Œæ— ™åÀL‰‹åŠ¨ç¼–è¾‘XMLæ–‡äšg。该插äšg˜q˜æä¾›äº†‹¹ç¨‹å®šä¹‰ä¸Šä¼ åŠŸèƒ½åQŒå¯ä»¥å°†æ–°å®šä¹‰çš„‹¹ç¨‹å‘布到在¾U¿è¿è¡Œçš„jPDL¾pȝ»Ÿä¸Šã€?br />
åQ?åQ‰jPDLíw«ä†¾åŒ?jbpm-identity.jar)

它是jPDL的一个轻量çñ”扩展包,½Ž€å•实çŽîCº†¾l„Group、用户User、许可权Permission½{‰ç”¨æˆ¯‚ín份认证和鉴权机制。如果您的应用环境只需要简单的用户认证鉴权½Ž¡ç†åQŒé‚£ä¹ˆå®ƒååˆ†é€‚合您ã€?br />
åQ?åQ‰jPDL Web控制å?jbpm-console.war)

它是一个标准Web应用åQˆä‹É用了JSF技术)åQŒæä¾›äº†å¯¹jPDLòq›_°æ‰§è¡Œæƒ…况的监控程序(对jPDL数据库的监控åQ‰ã€‚管理员可以通过该程序方便的¾l´æŠ¤jPDL的数据库åQŒç®¡ç†æµ½E‹å®šä¹‰å’Œ‹¹ç¨‹å®žä¾‹çš„æ‰§è¡Œæƒ…å†üc€‚同æ—Óž¼Œå®ƒè¿˜æä¾›äº†ä¸€ä¸ªç®€å•çš„Getting started DEMOåQŒæ–¹ä¾¿åˆå­¦è€…了解jPDLã€?br />
åQ?åQ‰JBoss jBPM Starters Kit 是一个综合包åQŒå®ƒåŒ…括äº?jBPM 软äšg包、开发插件、一个配¾|®å¥½äº†çš„åŸÞZºŽ JBoss çš?jBPM ½CÞZ¾‹ã€ä¸€äº›æ•°æ®åº“配置文äšg½CÞZ¾‹ã€?br />
åQ?åQ‰JBoss jBPM BPEL Extension jBPM 关于 BPEL 的扩展包


4 包详¾l†ä»‹¾l?/span>


    4.1JBoss jBPM Starters Kit

    是一个综合包åQŒå®ƒåŒ…括了jBPM软äšg包、开发插件、一个配¾|®å¥½äº†çš„åŸÞZºŽJBossçš„jBPM½CÞZ¾‹ã€ä¸€äº›æ•°æ®åº“配置文äšg½CÞZ¾‹ã€?br />
    JBoss jBPM Process Designer Plugin是辅助开发jBPMçš„Eclipse 插äšgã€?br />
    JBoss jBPM BPEL Extension jBPM关于BPEL的扩展包

    下蝲JBoss jBPM Starters Kit 3.1.2。解压到¾pȝ»ŸæŸä¸ªç›®å½•åQˆE:\java\jbpm-starters-kit-3.1.2åQ‰ã€‚目录下含有五个子目录:

        jbpm jBPMçš„èÊY件包åQŒåŒ…含源码,例子½{‰æ–‡ä»¶å†…宏V€?br />         jbpm-bpel只含有一个网™å?br />         jbpm-db各种数据库hibernate配置文äšg½CÞZ¾‹åQŒæœ‰äº›è¿˜åŒ…含了相应的jdbc驱动½E‹åºã€?br />         jbpm-designer辅助开发jBPMçš„Eclipse插äšgåQŒå…·ä½“在jbpm-gpd-feature子目录中
        jbpm-server一个已¾lé…¾|®å¥½äº†çš„åŸÞZºŽJBossçš„jBPM½CÞZ¾‹ã€?br />     ç™Õd½•地址åQšhttp://localhost:8080/jbpm
    特点åQšæ˜¯ä¸€ä¸ªåœ¨å¼€å‘çŽ¯å¢ƒä¸Šé…ç½®‹¹ç¨‹æƒé™çš„DEMOåQŒåœ¨‹¹è§ˆå™¨ä¸Š˜q›è¡Œ‹¹ç¨‹æ“ä½œå’Œç®¡ç†å‘˜æŸ¥çœ‹ã€?br />

    4.2 jbpm-jpdl-suite-3.2.3.zip压羃包组æˆ?/span>
    在解压jbpm-jpdl-suite-3.2.3.zip后,会看到很多目录,如下所½Cºï¼š

    åQ?åQ‰config目录

    该目录存放了jPDL的默认配¾|®æ–‡ä»?åQŒåŒ…括hibernate.cfg.xml 、jbpm.cfg.xmlåQˆjPDL的主配置文äšgåQŒé»˜è®¤æ˜¯½Iºçš„åQ‰ã€?nbsp;                   jbpm.mail.templates.xmlåQˆé‚®ä»¶æ¨¡æ‰K…¾|®æ–‡ä»Óž¼‰ã€?log4j.propertiesåQˆæ—¥å¿—配¾|®æ–‡ä»Óž¼‰

    åQ?åQ‰db目录

    该目录存放了jPDL针对不同数据库的表初始化sqlæ–‡äšg。这里要说的是,jbpm.jpdl.mysql.sql在MySql下批量运行时åQŒä¼šå‡ºçŽ°é”™è¯¯æç¤ºåQŒåŽŸ    因是语句后缺ž®?#8221;;”åøP¼Œéœ€è¦ä¿®è®¢åŽæ‰èƒ½ä½¿ç”¨ã€?br />
    åQ?åQ‰designer目录

    该目录存放了GPDåQˆGraphical Process DesigneråQ‰æ’ä»¶ã€?br />
    åQ?åQ‰examples目录

    该目录存放了jPDL的简单范例ã€?br />
    åQ?åQ‰doc目录

    该目录存放jPDL 的相兌™¯´æ˜Žæ–‡æ¡£ï¼ŒåŒ…括用户指南、Java API文档½{‰ã€?br />
    åQ?åQ‰server目录

    该目录存放了配置好的jBoss和控制台½E‹åºåQŒWindows下双击start.bat可立åÏx‰§è¡Œã€‚数据库使用HSQLåQŒå­˜æ”¾äºŽ                            /server/server/jbpm/data    下ã€?br />
    åQ?åQ‰src目录

    该目录下存放的是源代码,可以通过查看代码来了解其具体实现åQŒæœ‰åŠ©äºŽå¢žå¼ºç†è§£ã€?br />
    åQ?åQ‰deploy目录

    该目录下面包å?个war包:jbpm-console.war、jbpm-enterprise.ear、jbpm-mail.warã€?br />
    åQ?åQ‰lib目录

    该目录中存放了支持的jar包ã€?br />
    ç™Õd½•地址åQšhttp://localhost:8080/jbpm-console
    特点åQšæ˜¯ä¸€ä¸ªåœ¨¾|‘页上配¾|®æµ½E‹æƒé™çš„DEMO

备注åQ?br />     本文介绍了我在学习JBPMçš„å¿ƒå¾—ä½“ä¼šä»¥åŠä¸€äº›æœ‰å»ø™®¾æ€§çš„¾|‘址åQŒå¸Œæœ›èƒ½å¯¹å¤§å®¶æœ‰æ‰€å¸®åŠ©åQŒç›®å‰ï¼Œæœ¬äh正在从事公司内部™å¹ç›®ä¸­æœ‰å…›_·¥ä½œæµçš„开发,有兴­‘£çš„æœ‹å‹å¯ä»¥è”系我一èµïL ”½IÓž¼Œæœ¬ähMSN:loyal_gl@hotmail.comåQˆè¯·å¤§å®¶æ²¡äº‹ä¸è¦æ¶æ„éªšæ‰°åQŒè°¢è°¢ã€‚)




]]>
Ö÷Õ¾Ö©Öë³ØÄ£°å£º Ïç³ÇÏØ| ÇßÔ´ÏØ| ¤Î÷ÏØ| Ó¢³¬| ¼ÃÑôÏØ| ±£¿µÏØ| ̨±±ÊÐ| ºâÑôÏØ| ³Î½­ÏØ| ¾ÞÒ°ÏØ| ÔªÀÊÇø| ÌÀÔ­ÏØ| ÌúÁëÊÐ| ÇåÔ¶ÊÐ| ´ëÃÀÏØ| ɳÑÅÏØ| ÇåÔ·ÏØ| ÕÐÔ¶ÊÐ| ºº´¨ÊÐ| ÓÈÏªÏØ| Üþ¾­ÏØ| »áÍ¬ÏØ| ÎÌÔ´ÏØ| ÃàÖñÊÐ| Ì«±£ÊÐ| Ö£ÖÝÊÐ| ð¢É½ÏØ| ãä½­ÊÐ| ÆÕÀ¼µêÊÐ| Î÷ºÍÏØ| ºâÄÏÏØ| ¸ÊËàÊ¡| ²©°®ÏØ| ¶«Ïç| ÇßÑôÊÐ| ÆÁÉ½ÏØ| ²ÊƱ| ±±ÄþÊÐ| ¹ãË®ÊÐ| ÒÁͨ| н®|