|
View:
New views
15 Messages
—
Rating Filter:
Alert me
|
|
|
Terminated instance and correlationsHi!!!
If I run a process two times with the same value assigned to a correlation property, the second time the process doesn't work. But if I delete the process with agila-web admin console, the process works. Doesn't a properly terminated process delete its correlation values itself? Bye -- Davide Ling Sito Personale - http://davideling.altervista.org Key fingerprint = 284A 0FB9 F9F6 763C D429 E02B AA5D 483A 7E45 D2A6 |
|
|
Wait acitivityHi, I the bpel file, how do I config wait 5 minutes and then invoke a webservice. I now that bpel has wait activity, but how do I config: <wait name="wait5min">5</wait> Will AgilaEngine understand? do I have to define this wait in second, in minute, or in hour? what is the format? Thanks Tu |
|
|
Re: Wait acitivityOn Saturday 11 February 2006 16:32, tnguyen@... wrote:
> Hi, > > I the bpel file, how do I config wait 5 minutes and then invoke a > webservice. I now that bpel has wait activity, but how do I config: > > <wait name="wait5min">5</wait> > > Will AgilaEngine understand? do I have to define this wait in second, in > minute, or in hour? what is the format? > > Thanks > Tu I've never used wait, but seeing BPEL4WS spec... <sequence> ... <wait for="'PT5M'"/> <invoke .../> ... </sequence> where 'PT5M' stay for 5 minutes duration time (from XML Schema spec... I've never used it too, so I don't know if I wrote it well) Bye -- Davide Ling Sito Personale - http://davideling.altervista.org Key fingerprint = 284A 0FB9 F9F6 763C D429 E02B AA5D 483A 7E45 D2A6 |
|
|
Re: Terminated instance and correlationsHi Davide,
No actually correlations are supposed to be global identifiers, you should be able to find a process instance from its correlation even after its termination. So the same correlation can't be used twice, whatever the status of the corresponding instance. Regards, Matthieu. On 2/11/06, Davide Ling <lingda@...> wrote: > Hi!!! > If I run a process two times with the same value assigned to a > correlation property, the second time the process doesn't work. > But if I delete the process with agila-web admin console, the process works. > > Doesn't a properly terminated process delete its correlation values itself? > > Bye > -- > Davide Ling > Sito Personale - http://davideling.altervista.org > Key fingerprint = 284A 0FB9 F9F6 763C D429 E02B AA5D 483A 7E45 D2A6 > |
|
|
Re: Terminated instance and correlationsOn Saturday 11 February 2006 18:17, Matthieu Riou wrote:
> No actually correlations are supposed to be global identifiers, you > should be able to find a process instance from its correlation even > after its termination. So the same correlation can't be used twice, > whatever the status of the corresponding instance. So a correlation property cannot be something like a taxNumber or userID, but something like transactionUUID! It is right? -- Davide Ling Sito Personale - http://davideling.altervista.org Key fingerprint = 284A 0FB9 F9F6 763C D429 E02B AA5D 483A 7E45 D2A6 |
|
|
Re: Terminated instance and correlationsYep, that's right. However the correlation is built using several
properties so you could include this userID or taxNumber as a property in a correlation, provided that the correlation also has transactionUUID type properties. On 2/11/06, Davide Ling <lingda@...> wrote: > On Saturday 11 February 2006 18:17, Matthieu Riou wrote: > > No actually correlations are supposed to be global identifiers, you > > should be able to find a process instance from its correlation even > > after its termination. So the same correlation can't be used twice, > > whatever the status of the corresponding instance. > > So a correlation property cannot be something like a taxNumber or > userID, but something like transactionUUID! It is right? > > -- > Davide Ling > Sito Personale - http://davideling.altervista.org > Key fingerprint = 284A 0FB9 F9F6 763C D429 E02B AA5D 483A 7E45 D2A6 > |
|
|
Re: Terminated instance and correlationsOn Saturday 11 February 2006 18:42, Matthieu Riou wrote:
> Yep, that's right. However the correlation is built using several > properties so you could include this userID or taxNumber as a property > in a correlation, provided that the correlation also has > transactionUUID type properties. So if I want to create a good correlation set I have to put together xml elements to form an univoque information like a database complex primary key. Example (userID, transactionTimestamp)... if I suppose one user can do a transaction at time. -- Davide Ling Sito Personale - http://davideling.altervista.org Key fingerprint = 284A 0FB9 F9F6 763C D429 E02B AA5D 483A 7E45 D2A6 |
|
|
Re: Terminated instance and correlationsThat's right. However I would recommend using an correlation that is
meaningful for the parties (the other web services) you are communicating with. When communicating with a shippment web service, use the shipping id. When communicating with a payment web service, use the financial transaction id. On 2/11/06, Davide Ling <lingda@...> wrote: > On Saturday 11 February 2006 18:42, Matthieu Riou wrote: > > Yep, that's right. However the correlation is built using several > > properties so you could include this userID or taxNumber as a property > > in a correlation, provided that the correlation also has > > transactionUUID type properties. > > So if I want to create a good correlation set I have to put together > xml elements to form an univoque information like a > database complex primary key. > > Example (userID, transactionTimestamp)... if I suppose one user can do > a transaction at time. > -- > Davide Ling > Sito Personale - http://davideling.altervista.org > Key fingerprint = 284A 0FB9 F9F6 763C D429 E02B AA5D 483A 7E45 D2A6 > |
|
|
how to invoke a webservice without parameter input and outputHi, I would like to invoke a webservice with no input parameter and no output parameter. <invoke ... inputVariable="?" outputVariable="?" /> can I invoke a webservice without inputVariable or outVariable ? Thanks Tu |
|
|
Re: how to invoke a webservice without parameter input and outputOn Sunday 12 February 2006 16:04, tnguyen@... wrote:
> Hi, > > I would like to invoke a webservice with no input parameter and no output > parameter. > > <invoke ... inputVariable="?" outputVariable="?" /> can I invoke a > webservice without inputVariable or outVariable ? BPEL4WS spec states that You can do It only if Your process is an abstract process (not executable one). If your process is an executable it is not possible omit both variables. Example: in one-way invoke you need only input variable. -- Davide Ling Sito Personale - http://davideling.altervista.org Key fingerprint = 284A 0FB9 F9F6 763C D429 E02B AA5D 483A 7E45 D2A6 |
|
|
No service has been defineHi, I got no service has been define exception for initiator port. This port is local port for Agila, so that I don't have any service for it. How do I define a service in this situation? I also enclose the wsdef file and the bpel file. In this example: I want to invoke the exceptionService, reply back the output and then invoke the ftpService. (See attached file: tecpbpel.bpel)(See attached file: tecpbpel.wsdl) Exception in thread "Thread-41" org.apache.agila.bpel.engine.priv.messaging.Invo cationException: No service have been defined for portType initiator at org.apache.agila.bpel.engine.priv.messaging.impl.WSMessageBroker.getS ervice(WSMessageBroker.java:299) at org.apache.agila.bpel.engine.priv.messaging.impl.WSMessageBroker.sync Send(WSMessageBroker.java:114) at org.apache.agila.bpel.engine.priv.messaging.impl.WSMessageBroker$1.ru n(WSMessageBroker.java:94) at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExec utor.java:727) at java.lang.Thread.run(Thread.java:595) ....... [Agila] DEBUG [http-8080-Processor23] EngineWSA.sendToEngine(118) | Producing re ply: <?xml version="1.0" encoding="UTF-8"?> <message><return-code>1</return-code></message> Thanks Tu |
|
|
Re: No service has been defineOn Sunday 12 February 2006 17:58, tnguyen@... wrote:
> Hi, > > I got no service has been define exception for initiator port. This port > is local port for Agila, so that I don't have any service for it. How do I > define a service in this situation? Maybe You forgot to attach wsdef and process files -- Davide Ling Sito Personale - http://davideling.altervista.org Key fingerprint = 284A 0FB9 F9F6 763C D429 E02B AA5D 483A 7E45 D2A6 |
|
|
Re: how to invoke a webservice without parameter input and outputtnguyen@... wrote:
>I would like to invoke a webservice with no input parameter and no output >parameter. > ><invoke ... inputVariable="?" outputVariable="?" /> can I invoke a >webservice without inputVariable or outVariable ? > > hi, presence of inputVar/outputVar is deciding about type of invocation not just what is sent i.e. it can be one-way (no response only inputVar) or RPC (request-response) if you want to invoke a webservice that has no parameters you still need to send *empty* message as a variable (and receive empty message if it was RPC) and that should be described in your WSDL (exact details of WSDL will depend on what binding you use: doc-literal, rpc-literal, rpc-encoded ...) HTH, alek -- The best way to predict the future is to invent it - Alan Kay |
|
|
Re: Terminated instance and correlationshi,
AFAIK there is no requirement in the BPEL spec that engine must forever prevent the same correlation to be reused? i think it is a good implementation option for a BPEL engine to prevent reuse for some processes but there are good cases when correlation is used again and again to start new processes that after starting create new correlations that then are sent to and used by clients to talk to a particular workflow instance. this is a common case for a "factory" webservice: first message asks factory to create something (this is a correlation) - there can be multiple requests for the same thing to be created - and after creation the factory returns message with more data inside that is a new correlation that identifies a process instance that was created by the engine implicitly. anyway i would like to find a definitive answer to that ... thanks, alek here is from BPEL 1.1 (6.4. The Lifecycle of a Business Process) - i think initial order has no need to have a unique order id in it but acknowledgment has unique id (correlation) to use by the buyer : "For example, in a supply chain, a seller's business process might offer a service that begins an interaction by accepting a purchase order through an input message, and then returns an acknowledgement to the buyer if the order can be fulfilled. It might later send further messages to the buyer, such as shipping notices and invoices. The seller's business process remembers the state of each such purchase order interaction separately from other similar interactions. This is necessary because a buyer might be carrying on many simultaneous purchase processes with the same seller. In short, a BPEL4WS business process definition can be thought of as a template for creating business process instances." Matthieu Riou wrote: >That's right. However I would recommend using an correlation that is >meaningful for the parties (the other web services) you are >communicating with. When communicating with a shippment web service, >use the shipping id. When communicating with a payment web service, >use the financial transaction id. > >On 2/11/06, Davide Ling <lingda@...> wrote: > > >>On Saturday 11 February 2006 18:42, Matthieu Riou wrote: >> >> >>>Yep, that's right. However the correlation is built using several >>>properties so you could include this userID or taxNumber as a property >>>in a correlation, provided that the correlation also has >>>transactionUUID type properties. >>> >>> >>So if I want to create a good correlation set I have to put together >>xml elements to form an univoque information like a >>database complex primary key. >> >>Example (userID, transactionTimestamp)... if I suppose one user can do >>a transaction at time. >>-- >>Davide Ling >>Sito Personale - http://davideling.altervista.org >>Key fingerprint = 284A 0FB9 F9F6 763C D429 E02B AA5D 483A 7E45 D2A6 >> >> >> > > > -- The best way to predict the future is to invent it - Alan Kay |
|
|
Re: Terminated instance and correlationsHi Alek,
You're right, there's nothing in the BPEL specs stating that the correlation can't be reused after termination. This is implementation dependent. Ultimately the best mode would be to let the user decide and allow per-process configuration to say whether the creation of a new instance having the same correlation as a terminated one is allowed. However as a first implementation, I decided to be restrictive to start with. I basically made this choice to make reporting based on terminated instances easier by users wanting to do so. But in the future both modes should be supported. Regards, Matthieu. On 2/12/06, Aleksander Slominski <aslom@...> wrote: > hi, > > AFAIK there is no requirement in the BPEL spec that engine must forever > prevent the same correlation to be reused? > > i think it is a good implementation option for a BPEL engine to prevent > reuse for some processes but there are good cases when correlation is > used again and again to start new processes that after starting create > new correlations that then are sent to and used by clients to talk to a > particular workflow instance. > > this is a common case for a "factory" webservice: first message asks > factory to create something (this is a correlation) - there can be > multiple requests for the same thing to be created - and after creation > the factory returns message with more data inside that is a new > correlation that identifies a process instance that was created by the > engine implicitly. > > anyway i would like to find a definitive answer to that ... > > thanks, > > alek > > here is from BPEL 1.1 (6.4. The Lifecycle of a Business Process) - i > think initial order has no need to have a unique order id in it but > acknowledgment has unique id (correlation) to use by the buyer : "For > example, in a supply chain, a seller's business process might offer a > service that begins an interaction by accepting a purchase order through > an input message, and then returns an acknowledgement to the buyer if > the order can be fulfilled. It might later send further messages to the > buyer, such as shipping notices and invoices. The seller's business > process remembers the state of each such purchase order interaction > separately from other similar interactions. This is necessary because a > buyer might be carrying on many simultaneous purchase processes with the > same seller. In short, a BPEL4WS business process definition can be > thought of as a template for creating business process instances." > > > Matthieu Riou wrote: > > >That's right. However I would recommend using an correlation that is > >meaningful for the parties (the other web services) you are > >communicating with. When communicating with a shippment web service, > >use the shipping id. When communicating with a payment web service, > >use the financial transaction id. > > > >On 2/11/06, Davide Ling <lingda@...> wrote: > > > > > >>On Saturday 11 February 2006 18:42, Matthieu Riou wrote: > >> > >> > >>>Yep, that's right. However the correlation is built using several > >>>properties so you could include this userID or taxNumber as a property > >>>in a correlation, provided that the correlation also has > >>>transactionUUID type properties. > >>> > >>> > >>So if I want to create a good correlation set I have to put together > >>xml elements to form an univoque information like a > >>database complex primary key. > >> > >>Example (userID, transactionTimestamp)... if I suppose one user can do > >>a transaction at time. > >>-- > >>Davide Ling > >>Sito Personale - http://davideling.altervista.org > >>Key fingerprint = 284A 0FB9 F9F6 763C D429 E02B AA5D 483A 7E45 D2A6 > >> > >> > >> > > > > > > > > > -- > The best way to predict the future is to invent it - Alan Kay > > |
| Free embeddable forum powered by Nabble | Forum Help |