+1 on making this generic - The example below seems to imply that a customer 
can call any service ?? I thought we were to provide an interface to implement 
(in the Java sense) and a proper WSDL / WADL for that service.  i.e define the 
parameters that will be passed to the service and the format of the response 
coming back .

You also need some kind of timeout mechanism - i.e. how long will you wait 
before deciding that the transition process is stuck and has failed.
Also, what is the logic for actually executing the transition or not ? Is this 
something I need to put in the response ? Are you checking an HTTP return code 
? 

Last this is very SOAP focused. Why can't I call a REST service ? 

Isabelle.
__________________________________________________

Isabelle Mauny
Director, Product Management; WSO2, Inc.;  http://wso2.com/
email: [email protected] - mobile (Spain) : +34 616050684 - mobile (Sri Lanka) 
+94 (0)774777663



On Jun 4, 2013, at 3:52 PM, Pulasthi Supun <[email protected]> wrote:

> Hi All,
> 
> Did a few changes based on the feedback provided. 
> 
> 1. Changed BpelExecutor to WSExecutor
> 
> 2. each {@somename} will be replaced by checking if there is an attribute or 
> and property by this name priority will be given to attributes 
> 
> 2. The new configuration looks as follows 
> 
> <execution forEvent="Promote"
>       
> class="org.wso2.carbon.governance.registry.extensions.executors.WSExecutor">
>       <parameter name="async" value="false" />
>       <parameter name="response.destination"
>               
> value="/_system/governance/apimgt/applicationdata/provider/aaaaaaaaa/aaa/1.0.0/api"
>  />
>       <parameter name="save.type" value="attribute" />
>       <parameter name="save.name" value="wsresponse" />
>       <parameter name="response.xpath" value="//as:result" />
>       <parameter name="response.namespace" value="http://wso2.org/bps/sample"; 
> />
>       <parameter name="response.namespace.prefix" value="as" />
>       <parameter name="epr"
>               
> value="http://{@hsost}:{@port}/services/AdderProcess.AdderProcesshttpAdderProcessBindingEndpoint/";
>  />
>       <parameter name="payload">
>               <p:AdderProcessRequest xmlns:p="http://wso2.org/bps/sample";>
>                       <!--Exactly 1 occurrence -->
>                       <x xmlns="http://wso2.org/bps/sample";>{@xvalue}</x>
>                       <!--Exactly 1 occurrence -->
>                       <y xmlns="http://wso2.org/bps/sample";>{@yvalue}</y>
>               </p:AdderProcessRequest>
>       </parameter>
> </execution>
> 
> Required parameters
> 
> epr - End Point Reference of the
> payload - The Payload that needed to invoke the
> Optional parameters 
> 
> async - Define whether the BPEL process to be called in an synchronous or 
> asynchronous manner by default synchronous approach is used
>                In the asynchronous mode no response will be saved ( Default - 
> synchronous )
> response.destination - defines the path of the resource to which the response 
> will be saved ( Default - The current resource path )
> save.type - defines whether the response is to be saved as an property or 
> attribute ( Default - attribute)
> save.name - defines the name of the property of attribute that response is 
> saved to ( Default - respnose)
> response.xpath - defines the xpath that is to be used to extract an value 
> from the response xml ( Default - if not provided the whole response xml will 
> be saved as an string )
> response.namespace - namespace of the response
> response.namespace.prefix - namespace prefix used in the xpath
> Regards,
> Pulasthi
> 
> 
> On Sat, Jun 1, 2013 at 9:41 PM, Pulasthi Supun <[email protected]> wrote:
> Hi All
> 
> I also agree with Janaka , this was started off with the aim to allow BPEL 
> processes to be called during an lifecycle transition hence it was initially 
> treated as an BPEL Integration.So it would be appropriate to rename this as 
> web service executor since the design is already capable of invoking any web 
> service.
> 
> Regarding Eranda's question.
> What you mean by a response of a business process? Can you please give an 
> example use case for a process sending a response.
> 
> BPEL is exposed  as a web services so as in normal web service BPEL processes 
> may reply back with an response.
> 
> Thanks,
> Pulasthi
> 
> On Sat, Jun 1, 2013 at 2:37 AM, Senaka Fernando <[email protected]> wrote:
> Hi Eranda,
> 
> I agree with Janaka. A process that we invoke from an executor need not 
> always be a BPEL, it can actually be any endpoint. If it happens to be a BPEL 
> process, we can provide some specific interfaces (if required later on), but 
> right now - I mean at this level - everything Pulasthi mentioned is generic 
> for both BPEL and any regular WS. Therefore, we should not be having the word 
> BPEL in these sample configurations.
> 
> Thanks,
> Senaka.
> 
> 
> On Sat, Jun 1, 2013 at 2:23 AM, Eranda Sooriyabandara <[email protected]> wrote:
> Hi Janaka,
> 
> 
> On Sat, Jun 1, 2013 at 2:04 AM, Janaka Ranabahu <[email protected]> wrote:
> Hi Pulasthi, Senaka,
> 
> Why are we saying "BPEL Integration"? BPEL process is also exposed as a 
> service. So shouldn't this be generic to any service call? From what I see, 
> what you should have is a executor that can do a web service call. The 
> parameters of the service call can be taken from either a G-Reg resource or 
> from the LC configuration or can be passed from the UI it self. I don't see a 
> point in limiting that to only BPEL. 
> 
> AFAIU, If we think in that level, actually we don't need to write such this, 
> because it's not a hard task to write a executor which invoke a web service 
> where we can limit it to a sample. Instead here we are trying to address a 
> solution and this will be the initial stage where we can extend this further 
> where we can invoke a BPEL process in the executor and the details of the 
> process instance will be shown, may be in a transition UI. 
> 
> thanks
> Eranda
> 
>  
> 
> Please correct me if I'm wrong.
> 
> Thanks,
> Janaka
> 
> 
> On Fri, May 31, 2013 at 4:16 PM, Eranda Sooriyabandara <[email protected]> 
> wrote:
> Hi Pulasthi,
> 
> Please find the comments inline.
> 
> On Fri, May 31, 2013 at 10:00 AM, Pulasthi Supun <[email protected]> wrote:
> Hi All 
> 
> I am working on the $subject. The aim of this feature is make it possible to 
> invoke BPEL processes during Lifecycle state transition in G-Reg for example 
> with this feature it will be possible to call an BPEL process when a 
> "Promote" is done.
> 
> This is achieved via a transitions executor and the BPEL process will be 
> invoked through an web web-service call. following is an sample Lifecycle 
> configuration
> 
> <data name="transitionExecution">
>       <execution forEvent="Promote"
>               
> class="org.wso2.carbon.governance.registry.extensions.executors.BpelExecutor">
>               <parameter name="bpel.epr"
>                       
> value="http://10.200.3.107:9763/services/AdderProcess.AdderProcesshttpAdderProcessBindingEndpoint/";
>  />
>               <parameter name="bpel.payload">
>                       <p:AdderProcessRequest 
> xmlns:p="http://wso2.org/bps/sample";>
>                               <x 
> xmlns="http://wso2.org/bps/sample";>/_system/governance/{@resourcePath}/{@xvalue}</x>
>                               <y 
> xmlns="http://wso2.org/bps/sample";>/_system/governance/{@resourcePath}/{@yvalue}</y>
>                       </p:AdderProcessRequest>
>               </parameter>
>       </execution>
> </data>
> 
> 
> +1 for this approach.
> 
>  
> 
> The transition execution needs to be provided with the following details
> 
> End Point Reference of the BPEL
>                 The End point can either be given directly or trough an 
> property or artifact attribute
>                Ex. <parameter name="bpel.epr" 
> value="/_system/governance/{@resourcePath}/{@epr}"/>
> The Payload that needed to invoke the BPEL process.
>               The values of the payload can be-- 
> Nuwan Dias
> 
> Member, Management Committee - Solutions Technology Group
> Senior Software Engineer - WSO2, Inc. http://wso2.com
> email : [email protected]
> Phone : +94 777 775 729 defined either directly or trough an property or 
> artifact attribute 
> Ex. 
> <data name="transitionExecution">
>       <execution forEvent="Promote"
>               
> class="org.wso2.carbon.governance.registry.extensions.executors.BpelExecutor">
>               <parameter name="bpel.epr" 
> value="/_system/governance/{@resourcePath}/{@epr}"/>
>               <parameter name="bpel.payload">
>                       <p:AdderProcessRequest 
> xmlns:p="http://wso2.org/bps/sample";>
>                               <x 
> xmlns="http://wso2.org/bps/sample";>/_system/governance/{@resourcePath}/{@xvalue}</x>
>                               <y xmlns="http://wso2.org/bps/sample";>6</y>
>                       </p:AdderProcessRequest>
>               </parameter>
>       </execution>
> </data>
> Optional - Define whether the BPEL process to be called in an synchronous or 
> asynchronous manner by default synchronous approach is used
>                In the asynchronous mode no response will be saved
> Optional - Define the location to store the response 
> Optional - Define whether the response should be saved as an property or 
> artifact attribute
> Optional - Define the name of the property or attribute to store the response
> 
> What you mean by a response of a business process? Can you please give an 
> example use case for a process sending a response.
> 
> Also if we can go further, we may able to show the current Activity name 
> executing in the process. When we fully support business process 
> visualization in G-Reg we may able to use that information for visualizing 
> the current state of the process instance in G-Reg.
>  
> 
> Any feedback and comments are welcome 
> 
> 
> thanks
> Eranda
> 
> -- 
> Eranda Sooriyabandara
> Software Engineer;
> Integration Technologies Team;
> WSO2 Inc.; http://wso2.com
> Lean . Enterprise . Middleware
> 
> E-mail: eranda AT wso2.com
> Mobile: +94 716 472 816
> Linked-In: http://www.linkedin.com/in/erandasooriyabandara
> Blog: http://emsooriyabandara.blogspot.com/
> 
> 
> 
> 
> 
> _______________________________________________
> Architecture mailing list
> [email protected]
> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
> 
> 
> 
> 
> -- 
> Janaka Ranabahu
> Member - Solutions Management Committee; 
> Senior Software Engineer; WSO2 Inc.; http://wso2.com
> 
> E-mail: [email protected]
> M: +94 718370861
> 
> 
> Lean . Enterprise . Middleware
> 
> 
> _______________________________________________
> Architecture mailing list
> [email protected]
> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
> 
> 
> 
> 
> -- 
> Eranda Sooriyabandara
> Software Engineer;
> Integration Technologies Team;
> WSO2 Inc.; http://wso2.com
> Lean . Enterprise . Middleware
> 
> E-mail: eranda AT wso2.com
> Mobile: +94 716 472 816
> Linked-In: http://www.linkedin.com/in/erandasooriyabandara
> Blog: http://emsooriyabandara.blogspot.com/
> 
> 
> 
> 
> 
> _______________________________________________
> Architecture mailing list
> [email protected]
> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
> 
> 
> 
> 
> -- 
> Senaka Fernando
> Member - Integration Technologies Management Committee; 
> Technical Lead; WSO2 Inc.; http://wso2.com
> Member; Apache Software Foundation; http://apache.org
> 
> E-mail: senaka AT wso2.com
> P: +1 408 754 7388; ext: 51736; M: +94 77 322 1818
> Linked-In: http://linkedin.com/in/senakafernando
> 
> Lean . Enterprise . Middleware
> 
> _______________________________________________
> Architecture mailing list
> [email protected]
> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
> 
> 
> 
> 
> -- 
> --
> Pulasthi Supun
> Software Engineer; WSO2 Inc.; http://wso2.com,
> Email: [email protected] 
> Mobile: +94 (71) 9258281
> Blog : http://pulasthisupun.blogspot.com/
> Git hub profile: https://github.com/pulasthi
> 
> 
> 
> -- 
> --
> Pulasthi Supun
> Software Engineer; WSO2 Inc.; http://wso2.com,
> Email: [email protected] 
> Mobile: +94 (71) 9258281
> Blog : http://pulasthisupun.blogspot.com/
> Git hub profile: https://github.com/pulasthi
> _______________________________________________
> Architecture mailing list
> [email protected]
> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

_______________________________________________
Architecture mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to