一种web服务合成方案转换方法及应用服务器的制作方法

文档序号:7687903阅读:203来源:国知局

专利名称::一种web服务合成方案转换方法及应用服务器的制作方法
技术领域
:本发明涉及WEB月良务,尤指一种WEB服务合成方案转换方法及应用服务器。
背景技术
:WEB服务(WebServices,WS)合成分为三种类型手动合成、半自动合成和自动合成。手动合成主要通过图形或文本编辑界面手工生成WebServices执行流程,并提交流程执行引擎。有的业务合成系统提供了图形化用户接口,用户使用UI(USERINTERFACE,用户界面)从UDDI(UniversalDescription,Discovery,andIntegration,统一4笛述、发王见禾口集成)合适的WebServices来构建执行流程。有的业务合成系统使用了服务容器来聚合UDDI中功能相同的WebServices,并在运行时使用打分机制来选l奪合适的服务。这些系统的缺点是当UDDI中的服务数达到一定值时,服务的发现和选择就会变得很困难,手动选择也增加了用户的负担。半自动合成在用户合成过程中4是供选择WebServices的语义上的建议,但是用户仍需要在筛选后的服务列表中选择需要合成的WebServices,并把他们连接起来。虽然这些系统解决了一些手动合成的问题,但是还是需要用户在很多服务中手动选择。自动合成很好的解决了上述问题,它们一般使用人工智能等技术进行自动服务选择和服务流程生成。BPEL(BusinessProcessExecutionLanguageForWebServices,Web月良务的业务流程执行语言)是WebServices业务流程执行语言,它并不执行商业流程中的任何细节,也不涉及商业数据的存储和处理,只是用来控制各子服务的调用以及流程控制。BPEL可以用以下的结构表示〈processname="UserProcess"〉<partners〉....</partners〉<variables〉....</variables><correlationSets〉....</correlationSets〉<faultHandlers〉....</faultHandlers〉<compensationHandler〉....</compensationHandler〉<eventHandlers〉....</eventHandlers〉<sequence>....</sequence></proccss〉每个流程以<口1"00688〉开始,其中定义了流程名和名字空间。<partners〉部分定义了流程调用的外部WebServices。<¥31^1^8〉定义了流程中使用的数据,这些数据基于WebServices的输入和输出。其中最主要的标签为<sequence>,定义了流程的执行结构,在该|殳中可以定义结构化活动(StructureActivities)和基本活动(PrimitiveActivities),结构化活动中可以嵌套基本活动。结构化活动有<sequence〉(顺序执行);<switch〉(分支);<pick>(根据条件选4奪执行);<flow>(并行执行);<while>(循环)。基本活动主要有<invoke〉(调用外部WebService);<receive〉(接收用户输入);<reply〉(把先前receive活动的输出返回给用户);〈assign〉(赋值操作,用于两个流程间的输入输出的赋值);<throw>(抛出异常);<terminate〉(强迫业务流程实例停止执行);<wait〉(执行延迟一个固定的时间周期);<empty〉(什么都不做);<compensate〉(指定作用域的补偿处理)。在合成方案转化为BPEL方面,现有技术把最后生成的流程表示转换为BPEL,但是最后生成的流程方案都顺序执行每个子服务,不存在并行和分支情况。还有一种WTOP(WebservicesTOBPEL,Web服务的合成方案自动向BPEL转换)算法,其基本思路是把合成方案按层次进行划分,一层一层往下遍历,直到执行所有的结点。方法是,找当前图中所有入度为零的结点,如果只有一个这样的结点,则直接输出并删除该结点及相关的边;如果多于一个入度为零的结点,把所有入度为零的结点用flow标签并行输出,并删除结点及相关的边。该算法可以实现从DAG(Directedacyclicgraph,有向无环图)向BPEL的自动转换,并且使用了并行流程。但是该算法最大的问题是不支持并行流程的嵌套。图1所示的是算法的流程。该算法查找入度为零的结点按照层次遍历,算法输出如图2所示。可以看到,开始时入度为零的结点只有^1,则直接输出,然后删除该结点与之相关边;再查找入度为零的结点发现有丽2和w、此时输出fiow标签,概2和船3作为flow的子结点输出;使用这种方法直至所有结点都执行完毕。WTOP算法结果如图2(a)所示,而实际上该DAG的输出应该按图2(b)所示,即结点鄉3ws5m6和结点丽2并行执行,而结点H^H^又是m6流程中的并行嵌套子流程。根据具体实例很容易看出不支持嵌套所产生的问题。设^2的执行时间为1000S,结点W^W^V^M^执行时间均为300s,结点W^^7的执行时间均为100s。并行流程的执行时间按照执行时间最大的那条子路径计算。则按照图2(a)WTOP算法计算合成服务的执行时间为tl+Max(t2,t3)+Max(t4,t5)+t6+t7=100+1000+300+300+100=1800s,如果按照图2(b)方式执行该服务应该为tl+Max(t2,(t3+Max(t4,t5)+t6))+t7=100+1000+100=1200s。看出WTOP算法因不支持嵌套并行流程对执行时间产生的影响。现有技术中,用BPEL方式描述的合成方案指定了之后就不会更改,由BPEL引擎来按照顺序调用WEB服务,这种情况下,无法按照实际的多个WEB服务调用可以并行或嵌套的情况来对调用进行主动优化。
发明内容为解决上述问题,本发明的实施例提供了一种将WEB业务合成方案进行转化的方法及应用服务器。本发明的一个实施例提供了一种WEB服务合成方案转换方法,该方法包括获取WEB服务的业务流程执行语言合成方案的第一WEB服务的业务流程#^于^吾言流禾呈4匡架;根据所述第一WEB服务的业务流程执行语言流程框架生成有向无环图方式的合成方案;根据所述有向无环图方式的合成方案得到独立路径组;将所述独立路径组进行分析处理生成第二WEB服务的业务流程执行语言流程纟匡架;将所述第二WEB服务的业务流程执行语言流程框架进行流程填充生成可执4于流程。本发明的一个实施例提供了一种WEB服务合成方案转换方法,该方法包括合成方案为WEB服务的业务流程执行语言合成方案,获取WEB服务的业务流程执行语言合成方案的WEB服务的业务流程执行语言流程框架;根据所述WEB服务的业务流程执行语言流程框架生成有向无环图方式的合成方案。本发明的一个实施例提供了一种WEBService合成方案转换方法,其特征在于,所述WEBService合成方案为有向无环图方式的合成方案,根据所述有向无环图方式的合成方案获得独立路径组;将所述独立路径组行分析处理生成WEB服务的业务流程执行语言流程框架;将所述第二WEB服务的业务流程执行语言流程框架进行流程填充生成可执行流程。本发明的一个实施例提供了一种应用服务器,该应用服务器包括中央处理器,流程提取单元,用于提取已有的BPEL合成方案的第一BPEL流程框架;流程处理单元,用于根据所述第一BPEL流程框架生成DAG方式的合成方案;路径组划分单元,用于将所述DAG方式的合成方案进行路径组划分;流程生成单元,用于根据所述DAG方式的合成方案进行分析处理生成第二BPEL流程框架;流程填充单元将所述第二BPEL流程框架进行流程填充生成可执行流程。本发明的一个实施例提供了一种应用服务器,该应用服务器包括中央处理器;流程提取单元,用于提取已有的BPEL合成方案的BPEL流程框架;流程处理单元,用于根据所述BPEL流程框架生成DAG方式的合成方案。本发明的一个实施例提供了一种应用服务器,该应用服务器包括中央处理器;路径组划分单元,用于将所述DAG方式的合成方案进行路径组划分;流程生成单元,用于根据DAG方式的合成方案生成BPEL流程框架;流程填充单元,将所述BPEL流程框架进行流程填充生成可执行流程。通过本发明实施例的方法和应用服务器将现有的BPEL方式描述的合成方案进行DAG方案生成和DAG方案映射后可以#4居WS月良务调用的并行或嵌套来对方案执行进行优化控制,以提高执行效率,同时解决了复杂合成方案转换为BPEL的问题。图1是WTOP算法的流程图;图2a是WTOP算法的不支持并行嵌套情况下的输出结果;图2b是WTOP算法的如果支持并行嵌套情况下的输出结果;图3是DAG合成方案的图形化表示方式;图4是本发明第一实施例的流程图;图5是本发明第二实施例的流程图;图6是本发明第三实施例的流程图;图7是本发明第三实施例BPLE合成方案转化为DAG描述的图形化的示意图;图8是本发明第三实施例中独立路径组的示意图;图9是本发明第四实施例的系统结构图;图IO是本发明第五实施例的系统结构图;图11是本发明第六实施例的系统结构图。具体实施方式为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举较佳实施例,对本发明进一步详细说明。实施例一本实施例将结合图4说明将BPEL合成方案转换为DAG合成方案。步骤41:可以从合成方案存储库中获取BPEL合成方案。步骤42:将BPEL合成方案进行流程提取获得BPEL流程框架。通过一定的方式(例如采用XML(eXensibleMarkupLanguage可扩展标识语言)解析器,Xpath查询方法等)提取出BPEL脚本中流程相关的信息(也可以采用本领域普通技术人员知道的其他方式获取流程相关的信息),包括顺序(Sequence)、并行(Flow)以及赋值4喿作(assign)中的来源(from)和目的(to),将这些信息组合成为BPEL流程框架。同时可以获得除流程框架所需相关信息之外的非流程信息(变量定义、角色定义等)。例如一个BPEL流程框架图示如下<image>imageseeoriginaldocumentpage16</image>步骤43:通过流程处理获得DAG形式的合成方案。DAG形式的合成方案就是按照一种通用的描述模式将多个WebServices及服务的关系描述出来,经过转换后的DAG合成方案可以通过多种方式表示,一般有图形化表示和数据表方式表示。合成方案的图形化表示如图3所示,将WebServices合成引擎得到的合成方案通过DAG图的形式来表示,结点表示某个WebServices的操作,边表示上一个WebServices的输出和下一个WebServices的输入,并描述各WebServices之间的执行依赖和数据依赖。DAG合成方案的lt据表表示方法一般如下将WebService的每一个操作(operation)都定义为一个DAG的一个结点。如果某个WebService包含多个operation,就将其定义为不同的结点。(即可以看作多个仅有一个才喿作的WebService)将WebService的上一个WebService的输出和下一个WebServices的输入定义为一个DAG的相关结点的一个边。分别表示出结点的前驱节点集(即执行依赖)和数据依赖图3的图形化表示的DAG合成方案的数据表方式表示如表1所示:<table>tableseeoriginaldocumentpage17</column></row><table>表l:合成方案的数据表方式表示概念1:一个WebServices合成方案是一个DAG图G=(V,E),向量V和E能唯一标识一个合成方案G,其中结点V={WebServices中的操作wsi<formula>formulaseeoriginaldocumentpage17</formula>边E为有序积「xr的一个子集,£=kvI^=船,.—酉;},其中的是结点碼指向w^的有向边,表示服务,和服务w^相关。如图l中,e"=ws3—m5,边、5表示^3的一个输出是^的输入。概念2:结点的前驱结点集<formula>formulaseeoriginaldocumentpage17</formula>图1中,^的前驱结点为{冊4,柳5}。概念3:执行依赖,必须在严W—s')执行完才能执行,即某结点必须等待其所有前驱结点都执行完毕才能执行。概念4:数据依赖如果,与,之间有边e",则,与^存在数据依赖。表明的一个输出流入W5)的一个输入。具体的流程处理可以采取以下方式判断BPEL流程框架中的每一个〈assign〉元素下的来源(from)属性和目的(to)属性。对于from属性,如果from是用户输入,将from标记为NULL;如果from不是用户输入且不在DAG描述中则将from加入DAG中,并记录from的parent为NULL;如果from在DAG描述中,则继续判断to属性;对于to属性,如果不在DAG描述中则加入,并将from属性加入到其parent属性中;如果to属性在DAG中,则将from属性加入到其父节点(parent)属性中。重复执行对其他from属性和to属性的判断,结束后DAG描述中包含所有的WebService对应的节点且通过parent关系构建了整个DAG描述。沖艮据整个DAG描述即可生成DAG形式的合成方案。实施例二本实施例将结合图5说明将BPEL合成方案转换为DAG合成方案。首先获取DAG合成方案,可以从合成方案存储单元获取;步骤50:将获取的DAG合成方案进行方案验证,如果验证通过,则进入步骤51,该验证步骤可选。具体-睑i正方法如下验证合成方案表述是否是联通图如果其中有多于一个独立的结点或者结点集则合成方案验证失败。验证是否含有环路如果合成方案含有环路则合成方案验证失败。验证是否含有入度为零结点如果所有的结点的入度均不为0,则说明该DAG不完整,合成方案验证失败。是否含有出度为零结点如果所有的结点的出度均不为0,则说明该DAG不完整,合成方案-险证失败。步骤51:将验证通过的DAG合成方案进行路径组划分。在此部分需要先明确几个概念概念5:路径相关如果路径A中的某一结点存在于路径B中,则称A与B路径相关。路径无关路径A中的所有结点都不在路径B中,则称A与B^^径无关。如图1中的{2}与{3-4-6}路径无关,{3-4-6}和{3-5-6}则路径相关。才既念6:独立i各径组^各径集中所有相关5^径构成一组。如图1中路径{3-4-6}和{3-5-6}是相关路径,就构成一组独立路径组{{3-4-6},{3-5隱6}}。概念7:如果存在某条路径Pe路径组G,且结点N是路径P上的点,那么称N为路径组G中的点。形式化表示为如果NeP且PeG,则NeV(G)。其中V(G)表示路径组G中所有路径上的结点集合。定理l:任何独立路径组之间都是不相关的。证明假设A与B属于两个不同的独立^各径组,且A与B相关。则必定3路径Se^和路径Ae丑,S与A相关。根据独立路径组的概念,相关路径构成一组,则S与P2属于同一独立路径组,则A与B属于同一独立路径组。与假设A与B属于不同独立路径组矛盾。具体的路径组划分方法为将DAG合成方案按照深度优先遍历方法得到所有从头结点到尾结点的路径组,本领域的普通技术人员都知道除了本实施例采用的深度优先遍历方法,还有其他方法可以得到所有从头结点到尾结点的^各径组。步骤52:将所有相关路径组进行合并,将所有相关路径划分为一个独立路径组。直到不能合并为止,将最终的得到的独立路径组输出。步骤53:通过分析处理生成BPEL流程框架,该分析处理具体包括以下步骤步骤531:将合并的独立路径组进行分组判断;如果划分结果只有一个独立路径组,即进行步骤532;如果多于一组,则进行步骤533和步骤534;步骤532:判断独立路径组为什么方式(共四种),并分别按照相应的方式进行处理,输出相应的顺序信息以及节点。<formula>formulaseeoriginaldocumentpage20</formula>四种方式处理法(a)表示所有路径都有相同的头结点和尾结点,就先输出相同的头尾结点,同时删除所有路径中相同的头结点和尾结点,然后对剩下的子路径递归并执行流程生成方法的531步骤;(b)表示所有路径的头结点相同而尾结点不同,此时先输出相同头结点,同时删除所有路径中相同的头结点,并对剩下的子路径递归并执行流程生成方法的531步骤;(c)表示所有路径的尾结点相同而头结点不同,方法与前面类似,先输出尾结点并删除,然后再对剩下的路径递归并执行流程生成方法的531步骤;(d)表示头尾结点都不相同,该情况下不能使用并行或者顺序流程进行转换,结合WTOP算法,在该情况下对结点按层次进行划分;然后取出所有入度为零的头结点并行输出到flow标签描述中,表示所有入度为零的节点所表示的服务并行执行;再对去掉头结点的子路径集合递归并执行流程生成方法的531步骤。算法在这4种情况下的执行结果如表2所示<table>tableseeoriginaldocumentpage20</column></row><table><table>tableseeoriginaldocumentpage21</column></row><table>表2:四种方式处理法的执行结果步骤533、步骤534:对于存在的多个独立路径组,针对每个独立路径组输出并行信息,并进行递归回调后针对每个独立路径组执行步骤531。步骤535:将最终的分类的输出信息(包括顺序信息等)进行结果整合,输出BPEL的流程才匡架。步骤54:流程填充在流程生成阶段生成了BPEL流程框架,包含并行、顺序等信息,需要补充其它信息生成可执行流程变量定义、参与者定义、操作。例如一个BPEL流程框架图示如下<formula>formulaseeoriginaldocumentpage21</formula></proc6ss>则需要将相应的变量填入之后,生成的脚本如下<processxmlns="http:〃schemas.xmlsoap.org/ws/2003/03/business-process/"><v3riables><variablen訓e二"userRequest言'messageType="tns:userRequest,7><variablename="userResponse"messageType="tns:userResponse'7></variables><partners><partnername="User"serviceLinkType="tns:UserSLT"myRole="UserProvider7><partnernarrte="wsrserviceUnkType="ws1LT"partnerRole="ws1PR'7></p3rtn6rs><S6qU6flC6><3ssign><copy><fromvariable="userRequest"part="ws1in"/><tovariable="ws1in'7></copy></3ssign><invokename=Tpart隱?wsTportType="ws1PT"operation="ws10P"inputVsiriabie="ws1in"outputVariable="ws1out'V></sequence></proc6SS>实施例三本实施例用以说明将一个可执行的BPEL的合成方案进行优化,使其可以针对多个WS的并行和嵌套进行优化(通过DAG方案的生成和DAG方案的映射)。本实施例以一个可执行BPEL合成方案为例说明本系统的执行。该BPEL合成方案的表述如下<xm!version="1.0"encoding="UTF-8"><processxmhs="http:〃schemas.xmlsoap.org/ws/2003/03/business-process/"><v3riables><variablename="userRequest"messageType="tns:userRequest"/><variablename="userResponse"messageType="tns:userResponse'V><variablename="ws1in"messageType="wsiintype'7><variablen3me="ws2in,'messageType="ws2intype7><variablename="ws3in"messageType="ws3intype,7><variablen3me="ws4in"mess8geType="ws4intype7><variablen3me="ws5h,,messageType="ws5int^pe"/><variablename="ws6in"messageType="ws6int^pe"/><variablen3me="ws7in1',messageType="ws7in1type7><variablen細ews7in2',rness8geType="ws7in2t^pe7>(variablename="ws8inrmesseigeType="ws8in1t^pe"/><variablename="ws8in2"messageType="ws8in2t^pe"/><variablename="ws1out"messageType="ws1outt^pe7><variablename="ws2out"messageType="ws2outtype"/><variablename="ws3out"messageType="ws3outtype"/><variablename="ws4out"messageType="ws4outtype7><variablename="ws5out"messageType="ws5outtype7><variablename="ws6out"messageType="ws6outtype"/><variablename="ws7out"messageType="ws7outt^pe'7><variablename二"ws8out"messageType="ws8outt^pe7></vairi3bles><partners><partnername="User"serviceLinkType="tns:UserSLT"myRoie="UserProvider,7><partnername="wsTserviceLinkType="ws1LT"partnerRoie="ws1PR"/><partnername="ws2"servicelJnkType="ws2LT"partnerRole="ws2PR7><partnername="ws3"sen/iceUnkType=',ws3LT"partnerRole="ws3PR"/><partnername="ws4"serviceLinkTypews4LT"partnerRole="ws4PR"/><partnername="ws5"serviceLinkTypews5LT"partnerRole="ws5PR7><partnername="ws6"serviceLinkType="ws6LT"partnerRole="ws6PR7><partnername="ws7"serviceLinkType="ws7LT"partnerRole="ws7PR"/><partnername="ws8"serviceiJnkType="ws8LT"partnerRole="ws8PR"/></partners><S6qU6DC6><3ssign><copy><fromvariable="userRequest"part="ws1in7><tovariable="ws1in'7></copy></3Ssign><invokename="1"partner="ws1,'portType="ws1PT"operation="ws1OP"inputVariable="ws1in'output/ariable="ws1out7></s6qu6nc6><S6qu6nc6><3ssign><copy><fromvariable="ws1out"part="ws1out'7><tovariable="ws2in'7></copy></3Ssign><invokename="2"partner="ws2"portType="ws2PT"operation="ws20P"i叩utVariablews2in'outputVariable="ws2out7></s6qu6nc6><S6qu6nc6><eissign><copy><fromvariable="ws2out"part="ws2out'7><tovsiriable="ws3in7></copy></3ssign><invokename="3"partner="ws3"portType="ws3PT"operation="ws30P"i叩utVariablews3in'outputVariable="ws3out"/></s6qu6nc6><S6qu6nc6><3ssign><copy><fromvariable="ws1out"part=,'ws1out'7><tovariable="ws4in,7></copy></3ssign><invokename="4"partner="ws4"portType="ws4PT"operatbn="ws40P"inputVariable="ws4in'outputVariable="ws4out7></ssqu6nc6><sequenc6><3ssign><copy><fromvariable="ws4out"part="ws4out"/><tovariable="ws5in"/></copy></3Ssign><invokename="5"partner="ws5"portType="ws5PT"operation="ws50P"inputVariable="ws5in,outputVariabte="ws5out7></s6qu6nc6><S6qu6nc6><3ssign><copy><fromvariable="ws4out"part="ws4out"/><tovariable="ws6in'7></copy></3Ssign><invokename="6"partner="ws6"portType=',ws6PT"operation="ws60P"inputVaiable="ws6in'outputVariable="ws6out'7></s6qu6nc6><S6qu6nc6><3ssign><copy><fromvariable="ws5out"part="ws5out'7><tovariable="ws7in17></copy></3Ssign><3ssign><copy><fromvariable="ws6out"part="ws6out'7><tovariable="ws7in27></copy></eissign><invokename="7"partner="ws7"portType="ws7PT"operation="ws70P"inputVarjable="ws7in1ws7in2"outputVariable="ws7out',/></S6qU6I1C6><S6qu6ncs><3ssign><copy><fromvariable="ws3out"part="ws3out7><tovariable="ws8in1'7></copy></sissign><3ssign><copy><fromvariable="ws7out"part="ws7out'7><tovariable="ws8in27></copy></assign><invokename="8"partner="ws8"portType="ws8PT"operation="ws80P"inputVariable-"ws8in1ws8in2"outputVariable="ws8out7></s6qti6nc6><S6quence><3ssign><copy><framvariable="ws8out"part="ws8out'7><tovariable="userResponse"part="ws8out"/></copy></assign><replyname="reply"partner="User',portType="tns:machine-xxPT"operation="mxx"variable="userResponse7></s6qu6ncs></proc6SS>步骤60:流程提取获取该BPEL文件,本实施例中可以从合成方案存储单元中获取该文件,通过XML解析器获得所有〈assign〉元素。并保留流程相关的元素(Sequence、Flow),此处也可以提取其他非流程信息。提取后的BPEL流程框架为▲procsss▲sequence(9)assign1▲assign(1)<>from<>to1,fromvariable=userRequestpart=ws:Un,tovariable-wslin2▲assign(1)<>fromto1,fromvariable=wsloutpart=wslout,tovariable-ws2in3▲assign(1)24<table>tableseeoriginaldocumentpage25</column></row><table>表3:提取后的BPEL流程框架整个输出为<process><s6qu6nc6><3ssign><fromvariable="userRequest"part="ws1in"/><tovariable="ws1in'7></assign></s6qu6nc6><S6qu6nc6><3ssign><fromvariable="ws1out"part="ws1out7><tovariable="ws2in7></3Ssign></s6qu6nc6><sequenc6><3ssign><fromvariable='Vs2out"part="ws2out7><toV3h3ble="ws3in7></3ssign></s6qu6nc6><S6qu6nc6><3ssign><fromvariable="ws1out"part="ws1out7><toV3riable="ws4in7></3Ssign></s6qusrC6><ssqu6ncs><3ssign><fromvariable="ws4out"part="ws4out'7><tovariable="ws5in'7></3Ssign></s6qu6nc6><ssqu6nc6><3ssign><fromvatiable="ws4out"part="ws4out'7><tovari3ble="ws6in7></sssign></s6qu6nc6><S6qu6nc6><3ssign><fromvariable="ws5out"part="ws5out'7><toV3fi3ble="ws7in17></3Ssign><3ssign><fromvariable="ws6out"part="ws6out"/><tovariable="ws7in27></3ssign></s6qu6nc6><s6qu6nc6><3ssign><fromvariable="ws3out"part="ws3out'7><toV3ri3bte="ws8in17></3ssign><3ssign><fromvariable="ws7out"part="ws7out7><tovariable="ws8in2"/></3Ssign></s6qu6nc6><S6qU6flC6><3ssign><fromvariabSe="ws8out"part="ws8out"/><to丽她leuserResponse',p3rt="ws8out7></3ssign></ssqu6nc6></proccss>步骤61:流程处理流程处理的一般方法是判断BPEL流程框架中的每一个〈assign〉元素下的from属性和to属性。对于from属性,如果from是用户输入,将from标记为NULL;如果from不是用户输入且不在DAG描述中则将from加入DAG中,并记录from的parent为NULL;如果from在DAG描述中,则继续判断to属性;对于to属性,如果不在DAG描述中则加入,并将from属性加入到其parent属性中;如果to属性在DAG中,则将from属性加入到其parent属性中。重复执行对其他from属性和to属性的判断,结束后DAG描述中包含所有的WebService对应的节点且通过parent关系构建了整个DAG描述。根据所生成的DAG描述即可成为一个DAG合成方案。根据以上方法,本实施例的进行流程处理后获得的DAG合成方案以图形的方式如图7所示。以数据库表为例表示生成的结果为表4所示<table>tableseeoriginaldocumentpage27</column></row><table>表4:实施例合成方案的数据表表示方式步骤62:合成方案验证从合成方案存储环境取出该新生成的DAG合成方案按照下面的原则进行判断验证合成方案表述是否是联通图如果其中有多于一个独立的结点或者结点集则合成方案验证失败。验证是否含有环路如果合成方案含有环路则合成方案验证失败。验证是否含有入度为零结点如果所有的结点的入度均不为0,则说明该DAG不完整,合成方案验证失败。是否含有出度为零结点如果所有的结点的出度均不为0,则说明该DAG不完整,合成方案验证失败。判断结果为该方案符合要求。继续下面的步骤步骤63:路径组划分对该DAG合成方案进行路径组划分。得到路径组Group={{l-2-3-8},{1-4-5-7-8},{1-4画6陽7-8}}步骤64:合并相关路径组,将所有相关路径划分为一个独立路径组,直到不能合并为止,将最终的得到的独立路径组输出。合并路径组#Group={{l-2-3-8},{1-4-5-7-8},{1-4-6-7-8}}进行合并相关路径组得到独立路径组Group={{l-2-3-8},{1-4-5-7-8},{1-4-6-7-8}}。独立路径组的个数为1。步骤65:流程生成流禾呈生成方法为步骤651:进行分组判断。如果划分结果只有一个独立路径组,即根据独立路径组的方式进行相应处理;如果有多个独立路径组,对于存在的多个独立路径组,针对每个独立路径组输出并行信息,标记后进行分析处理。本实施例中合并后的独立^各径组Group={{l-2-3-8},{1-4-5-7-8},{1_4-6-7-8}},独立路径组的个数为1。则进入步骤652;步骤652:判断独立路径组为什么方式(共四种),并分别按照相应的方式进行处理,输出相应的顺序信息以及节点。四种方式处理方法(a)表示所有路径都有相同的头结点和尾结点,就先输出相同的头尾结点,同时删除所有路径中相同的头结点和尾结点,然后对剩下的子路径进行分析处理;(b)表示所有路径的头结点相同而尾结点不同,此时先输出相同头结点,同时删除所有路径中相同的头结点,并对剩下的子路径进行分析处理;(C)表示所有路径的尾结点相同而头结点不同,方法与前面类似,先输出尾结点并删除,然后再对剩下的路径进行分析处理;(d)表示头尾结点都不相同,该情况下不能使用并行或者顺序流程进行转换,结合WTOP算法,在该情况下对结点按层次进行划分;然后取出所有入度为零的头结点并行输出到flow标签描述中,表示所有入度为零的节点所表示的服务并行执行;再对去掉头结点的子路径集合进行分析处理。算法在这4种情况下的执行结果如表5所示<table>tableseeoriginaldocumentpage29</column></row><table>表5:四种方式处理法的执行结果本实施例中判断出其为方式a(仅有一个头尾节点),按照方式a进行处理。输出的信息为<sequence〉<1><递归><8></sequence>因为处理后判断还有剩余节点,则执行步骤651,判断剩余节点存在多个独立路径组,则执行步骤653、步骤654步骤653:首先将剩余子路径的路径组进行标记,输出并行信息,将该多个独立路径组进行递归处理得到相关路径组Group={{2-3},{{4-5-7},{4-6-7}}}回调到步骤651进行分组判断判断出独立路径组的个数为2。使用并行流程flow进行描述,如图8所示。图8中的两个虚线框中的独立路径组中的路径数分别为Size-l和Size=2,就分为两种不同的情况独立路径组l中只有一条路径,则直接按序输出;独立路径组2中有多于l条子路径,则对其中所有的子路径递归。结果如表6所示<table>tableseeoriginaldocumentpage30</column></row><table>>表6:图8的执行结果<table>tableseeoriginaldocumentpage30</column></row><table>整个输出为<table>tableseeoriginaldocumentpage31</column></row><table>表7:图8独立路径组并行流程输出<formula>formulaseeoriginaldocumentpage31</formula>步骤655,进行结果整合,整合后生成BPEL流程框架为<image>imageseeoriginaldocumentpage31</image>步骤66:流程填充。将步骤60流程提取中获得其他非流程信息填充到步骤65的BPEL流程框架中,生成可执行的BPEL脚本。实施例4:本实施例提供了一种应用服务器,下面结合附图9进行详细说明。本实施例中的应用服务器,包括中央处理器90、流程提取单元91、流程处理单元92、流程验证单元93、路径组划分单元94、流程生成单元95、流程填充单元96、合成方案存储单元97。中央处理器90用于发出控制信令控制其他各个单元。流程提取单元91:从合成方案存储器97中获取合成方案,本实施例中所获取的合成方案是BPEL合成方案,本实施例中的流程提取单元91具体可以是XML解析器,通过XML解析器提取出BPEL合成方案中的流程信息,具体的流程信息为顺序、并行以及赋值操作中的来源和目的,通过这些具体信息就可以获得BPEL合成方案的流程框架,同时流程提取单元也可以获取出流程信息之外的其他非流程信息,如变量定义、角色定义等,流程提取单元可以将BPEL合成方案的流程框架存储到合成方案存储单元97中,也可以不存储直接发给流程处理单元92、流程填充单元97进行后续处理;流程处理单元92:主要用于获得DAG形式的合成方案。流程处理单元92从流程提取单元91或合成方案存储单元97中中获取BPEL的流程框架和非流程信息,具体处理流程为流程处理单元92判断BPEL流程框架中的每一个〈assign〉元素下的from属性和to属性。对于from属性,如果from是用户输入,将from标记为NULL;如果from不是用户输入且不在DAG描述中则将from加入DAG中,并记录from的parent为NULL;如果from在DAG描述中,则继续判断to属性;对于to属性,如果不在DAG描述中则加入,并将from属性加入到其parent属性中;如果to属性在DAG中,则将from属性加入到其parent属性中。重复执行对其他from属性和to属性的判断,结束后DAG描述中包含所有的WebService对应的节点且通过parent关系构建了整个DAG描述。根据所生成的DAG描述可以生成一个DAG合成方案,存储于合成方案存储单元97或直接发送给流程验证单元93,或直接发给路径组划分单元94。流程验证单元93:用于将流程处理单元92产生的DAG方式的合成方案进行验证,如果验证通过则将所述DAG方式的合成方案传送给路径组划分单元,流程验证单元可以从流程处理单元92获得需验证的DAG方式的合成方案,也可以从合成方案存储单元97获得DAG方式的合成方案,流程-验证单元93可选,DAG合成方案也可以不经流程验证单元93的验证而直接在流程组划分单元进行后续处理。具体的—睑i正方法为,流程验证单元93验证合成方案表述是否是联通图如果其中有多于一个独立的结点或者结点集则合成方案验证失败。流程验证单元93验证是否含有环路如果合成方案含有环路则合成方案验证失败。流程验证单元93验证是否含有入度为零结点如果所有的结点的入度均不为0,则说明该DAG不完整,合成方案驺T证失败。流程验证单元93是否含有出度为零结点如果所有的结点的出度均不为0,则说明该DAG不完整,合成方案验证失败。如果验证成功,则将验证通过的DAG合成方案发给路径组划分单元94;路径组划分单元94:将DAG合成方案进行路径组划分。将DAG合成方案按照深度优先遍历方法得到所有从头结点到尾结点的路径组,本领域的普通技术人员都知道除了本实施例采用的深度优先遍历方法,还有其他方法可以得到所有从头结点到尾结点的路径组。流程生成单元95:接收路径组划分单元94的划分结果,通过分析处理生成BPLE的流程框架。流程生成单元95包括路径组合并模块951和框架生成模块952:其中路径组合并模块951根据路径组划分结果进行路径组合并,将所有的相关路径合并成一个路径组,直到不能合并为止,将最终的得到的独立路径组输出给框架生成模块952;框架生成模块952收到路径组合并模块951的合并结果,首先进行分组判断。如果划分结果只有一个独立路径组,即根据独立路径组的的方式进行相应处理,输出相应的顺序信息和节点;如果有2个以上独立路径组,对于存在的多个独立路径组,针对每个独立路径组输出并行信息,标记并进行递归回调后再次进行分组判断,根据分组判断的不同结果重复框架生成模块中的分析处理。将每个独立路径组的顺序信息、节点信息、并行信息进行结果整合,输出BPLE的流程框架。通过框架生成模块的处理,将原有的BPLE的合成方案转化为支持并行流程嵌套BPLE流程框架流程填充单元96:接收流程生成单元95或合成方案存储器的BPLE的流程框架,接收流程提取单元91或合成方案存储单元97的其他非流程信息,并将该非流程信息填充到BPLE的流程框架,生成可执行的BPLE脚本,该可执行的BPLE脚本在保持原有合成方案数据依赖和执行依赖的基础上支持嵌套的并行流程的生成。合成方案存储单元97:用于存储BPLE合成方案、DAG合成方案,存储流程提取单元91产生的BPLE的流程框架和其他非流程信息。该存储器在应用服务器上可选,可以独立于应用服务器的形式独立存在。实施例5:本实施例为一种应用服务器,其可以将BPLE合成方案转化为DAG形式的合成方案。下面结合附图IO进行详细说明。本实施例中的应用服务器,包括中央处理器100、流程提取单元101、流程处理单元102、合成方案存储单元103。中央处理器100用于发出控制信令控制其他各个单元。流程^是取单元101:从合成方案存储器103中获耳又合成方案,本实施例中所获取的合成方案是BPEL合成方案,本实施例中的流程提取单元101具体可以是XML解析器,通过XML解析器提取出BPEL合成方案中的流程信息,具体的流程信息为顺序、并行以及赋值操作中的来源和目的,通过这些具体信息就可以获得BPEL合成方案的流程框架,同时流程提取单元也可以获取出流程信息之外的其他非流程信息,如变量定义、角色定义等,流程提取单元可以将BPEL合成方案的流程框架存储到合成方案存储单元103中,也可以不存储直接发给流程处理单元102进行后续处理;流程处理单元102:主要用于获得DAG形式的合成方案。流程处理单元102从流程提取单元IOI或合成方案存储单元103中中获取BPEL的流程框架和非流程信息,具体处理流程为判断BPEL流程框架中的每一个〈assign〉元素下的from属性和to属性。对于from属性,如果from是用户输入,将from标记为NULL;如果from不是用户输入且不在DAG描述中则将from加入DAG中,并记录from的parent为NULL;如果from在DAG描述中,则继续判断to属性;对于to属性,如果不在DAG描述中则加入,并将from属性加入到其parent属性中;如果to属性在DAG中,则将from属性加入到其parent属性中。重复执行对其他from属性和to属性的判断,结束后DAG描述中包含所有的WebService对应的节点且通过parent关系构建了整个DAG描述。根据所生成的DAG描述可以得到一个DAG合成方案,存储于合成方案存储单元103。合成方案存储单元103:用于存储BPLE可执行脚本,存储流程提取单元91产生的BPLE的流程框架、其他非流程信息和DAG合成方案。实施例6:本实施例提供了一种应用服务器,可以将DAG合成方案转化为可执行的BPLE脚本,下面结合附图11具体说明。本实施例中的应用服务器包括中央处理器110、流程验证单元111、路径组划分单元112、流程生成单元113、流程填充单元114、合成方案存储单元115。中央处理器IIO用于发出控制信令控制其他各个单元。流程验证单元111:用于从合成方案存储单元115获取DAG方式的合成方案并进行验证,如果验证通过则将所述DAG方式的合成方案传送给路径组划分单元112,流程验证单元111可选,DAG合成方案也可以不经流程验证单元111的-险证而直接在流程组划分单元112进行后续处理。具体的—险i正方法为验证合成方案表述是否是联通图如果其中有多于一个独立的结点或者结点集则合成方案验证失败。验证是否含有环路如果合成方案含有环路则合成方案验证失败。验证是否含有入度为零结点如果所有的结点的入度均不为0,则说明该DAG不完整,合成方案-睑证失败。是否含有出度为零结点如果所有的结点的出度均不为0,则说明该DAG不完整,合成方案验证失败。如果验证成功,则将验证通过的DAG合成方案发给路径组划分单元112路径组划分单元112:将DAG合成方案进4亍路径组划分。将DAG合成方案按照深度优先遍历方法得到所有从头结点到尾结点的路径组,本领域的普通技术人员都知道除了本实施例采用的深度优先遍历方法,还有其他方法可以得到所有从头结点到尾结点的路径组。流程生成单元113:接收路径组划分单元112的划分结果,通过分析处理生成BPLE的流程框架。流程生成单元113包括路径组合并模块1131和框架生成一莫块1132:其中路径组合并模块1131根据路径组划分结果进行路径组合并,将所有的相关路径合并成一个路径组,直到不能合并为止,将最终的得到的独立路径组输出给框架生成模块1132;框架生成模块1132收到路径组合并模块1131的合并结果,首先进行分组判断。如果划分结果只有一个独立路径组,即根据独立路径组的的方式进行相应处理,输出相应的顺序信息和节点;如果有2个以上独立^^径组,对于存在的多个独立路径组,针对每个独立路径组输出并行信息,标记并进行递归回调后再次进行分组判断,根据分组判断的不同结果重复框架生成模块中的分析处理。将每个独立路径组的顺序信息、节点信息、并行信息进行结果整合,输出BPLE的流程框架。通过框架生成模块的处理,将原有的BPLE的合成方案转化位支持并行流程嵌套BPLE流程框架流程填充单元114:接收流程生成单元113或合成方案存储器的BPLE的流程框架,接收流程提取单元的其他非流程信息,并将该非流程信息填充到BPLE的流程框架,生成可执行的BPLE脚本,该可执行的BPLE脚本在保持原有合成方案数据依赖和执行依赖的基础上支持嵌套的并行流程的生成。合成方案存储单元115:用于DAG合成方案,存储流程提取单元91产生的BPLE的流程框架和其他非流程信息,流程填充单元114生成的可执行《勺BPLE的扭卩*。以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。权利要求1.一种WEB服务合成方案转换方法,其特征在于,获取WEB服务的业务流程执行语言合成方案的第一WEB服务的业务流程执行语言流程框架;根据所述第一WEB服务的业务流程执行语言流程框架生成有向无环图方式的合成方案;根据所述有向无环图方式的合成方案得到独立路径组;将所述独立路径组进行分析处理生成第二WEB服务的业务流程执行语言流程框架;将所述第二WEB服务的业务流程执行语言流程框架进行流程填充生成可执行流程。2.根据权利要求1所述的方法,其特征在于根据所述有向无环图方式的合成方案得到独立路径组包括将所述有向无环图方式的合成方案进行路径组划分;将所述路径组划分的结果进行路径组合并得到独立路径组。3.根据权利要求1所述的方法,其特征在于所述获取WEB服务的业务流程执行语言合成方案的第一WEB服务的业务流程执行语言流程框架包括提取出WEB服务的业务流程执行语言合成方案中的流程信息,将所述流程信息组合成为第一WEB服务的业务流程执行语言流程框架,所述流程信息为顺序、并行以及赋值操作中的来源和目的。4.如权利要求3所述的方法,其特征在于所述提取出WEB服务的业务流程执行语言合成方案中的流程信息具体是通过XML解析器提取出WEB服务的业务流程执行语言合成方案中的流程信息。5.根据权利要求1所述的方法,其特征在于,所述根据所述第一WEB服务的业务流程执行语言流程框架生成有向无环图方式的合成方案包括根据所述第一WEB服务的业务流程执行语言流程框架构建有向无环图描述,将所述有向无环图描述生成所述有向无环图方案。6.根据权利要求5所述的方法,其特征在于,所述根据所述第一WEB服务的业务流程执行语言流程框架构建有向无环图描述包括判断第一WEB服务的业务流程执行语言流程框架中的每一个元素下的来源属性和目的属性;如果所述赋值操作中的来源是用户输入,将该来源标记为空;如果所述赋值操作中的来源不是用户输入且不在有向无环图描述中则将该来源加入有向无环图中,并记录该来源的父节点为空;如果所述赋值操作中的目的不在有向无环图描述中则加入,并将来源属性加入到其父节点属性中;如果目的属性在有向无环图中,则将来源属性加入到其父节点属性中。7.根据权利要求1所述的方法,其特征在于,所述分析处理包括将所述独立路径组进行分组判断;根据所述独立路径组获得相应的顺序信息及节点;根据所述顺序信息及节点生成第二WEB服务的业务流程执行语言流程框架。8.根据权利要求7所述方法,其特征在于,将所述独立路径组进行分组判断具体包括如果独立路径组个数为1,则根据所述独立路径组获得相应的顺序信息及节点;如果合并后的独立路径组个数为2个或2个以上,则输出并行信息,将剩余子路径进行所述分析处理。9.根据权利要求2所述的方法,其特征在于,所述将所述有向无环图方式的合成方案进行路径组划分为采用深度优先遍历方法得到所有从头节点到尾节点的路径组。10.根据权利要求7所述的方法,其特征在于,所述根据所述独立路径组获得相应的顺序信息及节点包括如果所述独立路径组中只有1条鴻4圣,则直接顺序输出相应的顺序信息及节点信息;如果所述独立路径组中有2条或2条以上路径,则对其中所有的子路径进行递归后进行所述分析处理,输出顺序信息及节点信息。11.根据权利要求7所述的方法,其特征在于,所述根据所述独立路径组获得相应的顺序信息及节点包括如果所有路径中头节点或尾节点相同,则先输出路径中相同的节点,删除所有路径中相同的节点,对剩余的子路径进行判断,如果剩余子路径只有一个独立路径组,则输出顺序信息和节点;否则,针对每个独立路径组输出并行信息并进行分析处理;如果头结点、尾结点都不相同,则对结点按层次进行划分;然后取出所有入度为零的头结点并行输出到并行标签描述中,表示所有入度为零的节点所表示的服务并行执行;再对去掉头结点的子路径集合判断,如果剩余子路径只有一个独立路径组,则输出顺序信息和节点;否则,针对每个独立路径组输出并行信息并进行分析处理。12.根据权利要求1所述的方法,其特征在于,该方法还包括获取已有的WEB服务的业务流程执行语言合成方案的非流程信息,所述流程填充包括,将所述非流程信息填充到第二WEB服务的业务流程执行语言流程框架中生成可执行流程。13.根据权利要求l-12所述的方法,其特征在于,所述方法还包括,将所述有向无环图方式的合成方案进行验证,如果验证通过则根据所述有向无环图方式的合成方案得到独立路径组。14.根据权利要求13所述的方法,其特征在于,所述验证方法为如果所述有向无环图方式的合成方案中只有一个独立的结点或者结点集则合成方案验证通过;或如果有向无环图方式的合成方案不含有环路则合成方案验证通过;或如果所述有向无环图方式的合成方案的所有的结点的入度均不为0,则有向无环图方案验证通过;或如果所述有向无环图方式的合成方案有结点的出度为0,则说明该有向无环图方案验证通过。15.—种WEB服务合成方案转换方法,其特征在于,所述WEB服务合成方案为WEB月l务的业务流程执行语言合成方案,获取WEB服务的业务流程执行语言合成方案的WEB服务的业务流程执行语言流程框架;根据所述WEB服务的业务流程执行语言流程框架生成有向无环图方式的合成方案。16.如权利要求15所述的方法,其特征在于,所述根据所述WEB服务的业务流程执行语言流程框架生成有向无环图方式的合成方案包括根据所述第一WEB服务的业务流程执行语言流程框架构建有向无环图描述,将所述有向无环图描述结合生成所述有向无环图方案。17.根据权利要求16所述的方法,其特征在于,所述根据所述WEB服务的业务流程执行语言流程框架构建有向无环图描述包括判断WEB服务的业务流程执行语言流程框架中的每一个元素下的来源属性和目的属性;如果所述赋值操作中的来源属性是用户输入,将该来源标记为空;如果所述赋值操作中的来源不是用户输入且不在有向无环图描述中则将该来源加入有向无环图中,并记录该来源的父节点为空;如果所述赋值操作中的目的属性不在有向无环图描述中则加入,并将来源属性加入到其父节点属性中;如果目的属性在有向无环图中,则将来源属性加入到其父节点属性中。18.—种WEB"良务合成方案转换方法,其特征在于,所述WEBService合成方案为有向无环图方式的合成方案,根据所述有向无环图方式的合成方案获得独立路径组;将所述独立路径组进行分析处理生成WEB服务的业务流程执行语言流程框架;将所述第二WEB服务的业务流程执行语言流程框架进行流程填充生成可扭j于流禾呈。19.根据权利要求18所述的方法,其特征在于,根据所述有向无环图方式的合成方案获得独立路径组包括将所述有向无环图方式的合成方案进行路径组划分;将所述路径组划分结果进行路径组合并得到独立路径组。20.根据权利要求18所述的方法,其特征在于,所述分析处理包括将所述独立路径组进行分组判断;根据所述独立路径组获得相应的顺序信息及节点;根据所述顺序信息及节点生成第二WEB服务的业务流程执行语言流程框架。21.根据权利要求18所述方法,其特征在于,将所述独立路径组进行分组判断具体包括如果独立路径组个数为1,则根据所述独立路径组获得相应的顺序信息及节点;如果合并后的独立路径组个数为2个或2个以上,则输出并行信息,将剩余子路径进行所述分析处理。22.根据权利要求18所述的方法,其特征在于,所述将所述有向无环图方式的合成方案进行路径组划分为采用深度优先遍历方法得到所有从头节点到尾节点的路径组。23.根据权利要求20所述的方法,其特征在于,所述根据所述独立路径组获得相应的顺序信息及节点包括如果所述独立路径组中只有1条路径,则直接顺序输出相应的顺序信息及节点信息;如果所述独立路径组中有2条或2条以上路径,则对其中所有的子路径进行递归,并进行所述分析处理,输出顺序信息及节点信息。24.根据权利要求20所述的方法,其特征在于,所述根据所述独立路径组获得相应的顺序信息及节点包括如果所有路径中头节点或尾节点相同,则先输出路径中相同的节点,删除所有路径中相同的节点,对剩余的子路径进行判断,如果剩余子路径只有一个独立路径组,则输出顺序信息和节点;否则,针对每个独立路径组输出并行信息并进行分析处理;如果头结点、尾结点都不相同,则对结点按层次进行划分;取出所有入度为零的头结点并行输出到并行标签描述中,表示所有入度为零的节点所表示的服务并行执行;对去掉头结点的子路径集合判断,如果剩余子路径只有一个独立路径组,则输出顺序信息和节点;否则,针对每个独立路径组输出并行信息并进行分析处理。25.—种应用服务器,包括中央处理器,其特征在于,包括流程提取单元,用于提取已有的WEB服务的业务流程执行语言合成方案的第一WEB服务的业务流程执行语言流程框架;流程处理单元,用于根据所述第一WEB服务的业务流程执行语言流程框架生成有向无环图方式的合成方案;路径组划分单元,用于将所述有向无环图方式的合成方案进行路径组划分;流程生成单元,用于根据所述有向无环图方式的合成方案进行分析处理生成第二WEB服务的业务流程执行语言流程框架;流程填充单元将所述第二WEB服务的业务流程执行语言流程框架进行流程填充生成可执行流程。26.根据权利要求25所述的应用服务器,其特征在于,还包括合成方案存储单元,用于存储合成方案,根据流程提取单元或流程生成单元的请求将合成方案发送给流程提取单元或流程生成单元。27.根据权利要求26所述的应用服务器,其特征在于,所述合成方案存储单元还用于存储流程处理单元或流程填充单元的处理结果。28.根据权利要求25所述的应用服务器,其特征在于,还包括方案验证单元,用于将所述有向无环图方式的合成方案进行验证,如果验证通过则将所述有向无环图方式的合成方案生成第二WEB服务的业务流程执行语言流程框架。29.根据权利要求25所述的应用服务器,其特征在于,所述流程生成单元包括路径组合并模块、流程框架生成模块,所述路径组合并纟莫块用于将所述路径组进行合并得到独立路径组;流程框架生成模块用于根据所述独立路径组获得相应的顺序信息及节点,并根据所述顺序信息及节点生成第二WEB服务的业务流程执行语言流程框架。30.根据权利要求25所述的应用服务器,其特征在于,所述流程提取单元还用于提取除第一WEB服务的业务流程执行语言流程框架所需流程信息之外的其他非流程信息,并将所述非流程信息发送流程生成单元进行流程填充。31.根据权利要求26所述的应用服务器,其特征在于,所述流程提取单元还用于提取除第一WEB服务的业务流程执行语言流程框架所需流程信息之外的其他非流程信息,并将所述非流程信息发送合成方案存储单元保存。32.—种应用服务器,包括中央处理器,其特征在于,还包括流程提取单元,用于提取已有的WEB服务的业务流程执行语言合成方案的WEB服务的业务流程执行语言流程框架;流程处理单元,用于根据所述WEB服务的业务流程执行语言流程框架生成有向无环图方式的合成方案。33.根据权利要求32所述的应用服务器,其特征在于,还包括合成方案存储单元,用于存储合成方案,根据流程提取单元或流程生成单元的请求将合成方案发送给流程提取单元或流程生成单元。34.根据权利要求33所述的应用服务器,其特征在于,所述合成方案存储单元还用于存储流程处理单元或流程填充单元的处理结果。35.根据权利要求33所述的应用服务器,其特征在于,所述流程提取单元还用于提取WEB服务的业务流程执行语言合成方案的非流程信息,并发送给合成方案存储单元保存。36.—种应用服务器,包括中央处理器,其特征在于,包括路径组划分单元,用于将所述有向无环图方式的合成方案进行路径组划分;流程生成单元,用于根据有向无环图方式的合成方案生成WEB服务的业务流程执行语言流程框架;流程填充单元,将所述WEB服务的业务流程执行语言流程框架进行流程填充生成可执行流程。37.根据权利要求36所述的应用服务器,其特征在于,所述流程生成单元包括路径组合并模块、流程框架生成模块,所述路径组合并模块用于将所述路径组进行合并得到独立路径组;流程框架生成模块用于根据所述独立路径组获得相应的顺序信息及节点,并根据所述顺序信息及节点生成第二WEB服务的业务流程执行语言流程框架o全文摘要本发明公开了一种WEB服务的合成方案的转化方法,通过获取已有的BPEL合成方案的第一BPEL流程框架;根据所述第一BPEL流程框架生成DAG方式的合成方案;根据所述DAG方式的合成方案得到独立路径组;将所述独立路径组划分结果进行分析处理生成第二BPEL流程框架;将所述第二BPEL流程框架进行流程填充生成可执行流程,同时提供了一种应用服务器可以实现WEB合成方案的转化,通过本方法和应用服务器可以实现根据WS服务调用的并行或嵌套来对方案执行进行优化控制,以提高执行效率。文档编号H04L29/08GK101267452SQ20081006572公开日2008年9月17日申请日期2008年2月27日优先权日2008年2月27日发明者刘铁江,周树蕙,朱一闻,彦李,石晓旻,宁顾,庆顾申请人:华为技术有限公司;复旦大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1