Author |
Message
|
Shakthi |
Posted: Tue Oct 29, 2002 8:28 am Post subject: UPES Design Question. |
|
|
Newbie
Joined: 29 Oct 2002 Posts: 4 Location: US
|
Hi,
Is there any standards for designing how Errors should be handled while designing UPES activities.
Thanks in Advance.
Shakthi. |
|
Back to top |
|
 |
jmac |
Posted: Tue Oct 29, 2002 8:32 am Post subject: |
|
|
 Jedi Knight
Joined: 27 Jun 2001 Posts: 3081 Location: EmeriCon, LLC
|
Perhaps you could elaborate a little more... What type of errors are you talking about? _________________ John McDonald
RETIRED |
|
Back to top |
|
 |
Shakthi |
Posted: Tue Oct 29, 2002 10:21 am Post subject: |
|
|
Newbie
Joined: 29 Oct 2002 Posts: 4 Location: US
|
Here is our scenario,
We have an UPES activity that is calling webservice. If the webservice is temporarily down, we want to know how we handle the situation.
1. How do we handle, if it times out.
2. How do we handle it, when the UPES returns an error(Webservice not available) and we want to call the same webservice after 10 minutes.
Thanks in advance.
Shakthi. |
|
Back to top |
|
 |
amittalekar |
Posted: Tue Oct 29, 2002 12:00 pm Post subject: |
|
|
 Disciple
Joined: 03 Apr 2002 Posts: 166 Location: VA, USA
|
what u can do is, add a flag (Long) in the datastructure . And add the exit condition for UPES activity as that "flag == 0". When exception occurs increase ths flag...If the exit condition is not match then the WorkItem will be created in ready state for the User specified in buildtime.
To start this UPES step after specific interval, Add a daemon (u can use block activity for this purpose...set exit condition 1=0 so that it will act as daemon)...In the daemon code start this workItem |
|
Back to top |
|
 |
kriersd |
Posted: Thu Oct 31, 2002 9:26 am Post subject: |
|
|
 Master
Joined: 22 Jul 2002 Posts: 209 Location: IA, USA
|
Shakthi
Maybe this would work..
1.) put the upes activity in a block with and exit condition = 0
2.) when you get a timeout API back to WF and suspend the process for 10 min
3.) Return back to WF with a RC = -1
Good luck.. _________________ Dave Krier
IBM WebSphere MQ Workflow V3.4 Solution Designer |
|
Back to top |
|
 |
Shakthi |
Posted: Thu Oct 31, 2002 11:25 am Post subject: |
|
|
Newbie
Joined: 29 Oct 2002 Posts: 4 Location: US
|
Thanks for the ideas!!
Putting every UPES in a BLOCK seems to be working. But we have 25 different UPESs calling 25 different webservices. Creating 25 blocks for achieving the UPES seems complex and makes the process look complex. But it works!!
Thanks for your help!!
Shakthi. |
|
Back to top |
|
 |
jmac |
Posted: Thu Oct 31, 2002 12:06 pm Post subject: |
|
|
 Jedi Knight
Joined: 27 Jun 2001 Posts: 3081 Location: EmeriCon, LLC
|
I am not sure I understand exactly what your process looks like, but have you considerd using the "From container" option to invoke your upes?
Do you invoke all 25 UPESs for each instance? or only 1 per instance?
Tell me a little more about what the process model looks like and perhaps I can suggest something.
GOOD LUCK _________________ John McDonald
RETIRED |
|
Back to top |
|
 |
Vladimir |
Posted: Thu Nov 14, 2002 7:40 pm Post subject: |
|
|
 Acolyte
Joined: 14 Nov 2002 Posts: 73 Location: USA, CA, Bay Area
|
Actually I think there is no need for putting each activity in the block, it should be enough just to set activity expiration and just activity exit condition. It will simplify your model. But in some complex situations you do have to put it into a block.
And 25 UPESes seems to be too much for me. Are you shure that you need all of them and Java High Performance Bridge cannot replace all of them?
We were using UPES-based style and I had enough fun with it to start looking into other directions. UPES style application is pretty difficult to support, because you have to have monitoring tool for each UPES that will check that UPES is running and can process requests and so on... |
|
Back to top |
|
 |
jmac |
Posted: Fri Nov 15, 2002 5:23 am Post subject: |
|
|
 Jedi Knight
Joined: 27 Jun 2001 Posts: 3081 Location: EmeriCon, LLC
|
Vladimir:
1) The activity might need to be in a Block for staffing purposes and also if you want the UPES activity to start automatically again.
2) If you have an alternative to using a PEA or a UPES for automatic activities please share it with us.
Thanks _________________ John McDonald
RETIRED |
|
Back to top |
|
 |
Vladimir |
Posted: Fri Nov 15, 2002 3:35 pm Post subject: |
|
|
 Acolyte
Joined: 14 Nov 2002 Posts: 73 Location: USA, CA, Bay Area
|
Jmac:
1) What kind of staffing can be implemented in the Block that cannot be done with the activity itself. If you can gve some example, it wuould be really helpful.
2) You are right that we have only 2 alternatives PEA and UPES for programs other than Java. But for Java you have 3 members in this competition: UPES, Java High performance Bridge and PEA (launching JVM - I know it's a bad way, but I think we should mention it here anyway). And we are using Java, so I really want to switch from UPES to JHPB in our project. Unless we find some real problems with this migration.  |
|
Back to top |
|
 |
Vladimir |
Posted: Fri Nov 15, 2002 4:08 pm Post subject: |
|
|
 Acolyte
Joined: 14 Nov 2002 Posts: 73 Location: USA, CA, Bay Area
|
Jmac:
1) Sorry, I forgot to ask you in the previous post - how can block help us to restart activity automatically? Could you, please, give me some hints? I really want to use it if it is possible... |
|
Back to top |
|
 |
Ratan |
Posted: Fri Nov 15, 2002 4:15 pm Post subject: |
|
|
 Grand Master
Joined: 18 Jul 2002 Posts: 1245
|
Quote: |
Actually I think there is no need for putting each activity in the block, it should be enough just to set activity expiration and just activity exit condition. It will simplify your model. But in some complex situations you do have to put it into a block.
|
The activity has to be put in a block if it has to be restarted automatically untill the exit condition is met. With the exit condition in an activity and with out a block, your automatic activity becomes a manual activity and would require a user interaction, if you do not have a deamon process which logs in and restarts the activity. |
|
Back to top |
|
 |
Ratan |
Posted: Fri Nov 15, 2002 4:16 pm Post subject: |
|
|
 Grand Master
Joined: 18 Jul 2002 Posts: 1245
|
Quote: |
1) Sorry, I forgot to ask you in the previous post - how can block help us to restart activity automatically? Could you, please, give me some hints? I really want to use it if it is possible... |
Do not specify an exit condition for the automatic activity, put it in a block and only specify the exit condition for the block. This will restart the activity automatically. |
|
Back to top |
|
 |
Vladimir |
Posted: Fri Nov 15, 2002 4:34 pm Post subject: |
|
|
 Acolyte
Joined: 14 Nov 2002 Posts: 73 Location: USA, CA, Bay Area
|
lazeknight:
Yes, I was thinking about this design, but we obviously want to give our activities some time between between retries. I understand that we can do it with adding another "sleep" activity in the block, but it makes models too complex. At least on my sight.
The reason we want to go with the agent logging into the worklist and restarting the items is that in that case admins (or support team) will have a list where they will see all "problematic" activities that are waiting to be restarted at the current moment. They will be able to cancel or push the from this list - to speed-up restarting process if it's needed. Does it look more flexible? |
|
Back to top |
|
 |
jmac |
Posted: Fri Nov 15, 2002 4:37 pm Post subject: |
|
|
 Jedi Knight
Joined: 27 Jun 2001 Posts: 3081 Location: EmeriCon, LLC
|
Vladamir:
Quote: |
1) What kind of staffing can be implemented in the Block that cannot be done with the activity itself. If you can gve some example, it wuould be really helpful. |
Say activty "A" is on the worklist of 5 users. U1, U2, U3, U4, U5. Now U2 works the activity but it fails the Exit condition. If this activity "A" is not in a block by itself, it will only exist in a "READY" state on the worklist of U2. BUT if you put the activity in a Block, and have the Block Fail the exit condition, it will be back on all 5 worklists in a "READY" state.
Quote: |
2) You are right that we have only 2 alternatives PEA and UPES for programs other than Java. But for Java you have 3 members in this competition: UPES, Java High performance Bridge and PEA (launching JVM - I know it's a bad way, but I think we should mention it here anyway). And we are using Java, so I really want to switch from UPES to JHPB in our project. Unless we find some real problems with this migration. |
In this case I would choos eth JHPB
Quote: |
1) Sorry, I forgot to ask you in the previous post - how can block help us to restart activity automatically? Could you, please, give me some hints? I really want to use it if it is possible... |
This is similar to the Staffing above. MQWF will only start an activity "AUTOMATICALLY" the first time it runs (I.E. if it fails its EXIT condition it will sit in a "READY" state. Again, if you put this inside a Block and have the Block fail the exit condition it will start AUTOMATICALLY again, since the workitem is re-created when the block restarts. _________________ John McDonald
RETIRED |
|
Back to top |
|
 |
|