ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » Workflow Engines - IBM MQ Workflow & Business Process Choreographer » [SOLVED] Flow doesnot proceeds after UPES activity.

Post new topic  Reply to topic
 [SOLVED] Flow doesnot proceeds after UPES activity. « View previous topic :: View next topic » 
Author Message
mca
PostPosted: Thu May 05, 2005 3:18 pm    Post subject: [SOLVED] Flow doesnot proceeds after UPES activity. Reply with quote

Disciple

Joined: 09 Mar 2005
Posts: 196

hi,

After succesful creation of UPES activity, i am picking up the XML message and processing it and putting back another XML message on reply default Q (FMC.FMCGRP.EXE.XML) capturing the activecorrelationID. After that Flow is not proceding to next step. I saw many pdf's and generated my XML. I am sure i generated correct XML.

Also i see WF picking up the message as current depth is "0" after i put it. To make sure the message is being put on Q, i shutdown WF for a moment and observed current depth = 1 and then restarted WF and it picked the message.

But what might be the reason for the Flow not to proceed with next step ?


Thanks
MCA


Last edited by mca on Wed May 11, 2005 6:47 am; edited 1 time in total
Back to top
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger
jmac
PostPosted: Thu May 05, 2005 5:23 pm    Post subject: Reply with quote

Jedi Knight

Joined: 27 Jun 2001
Posts: 3081
Location: EmeriCon, LLC

What state is the UPES activity in NOW? Is it still in a running state?
_________________
John McDonald
RETIRED
Back to top
View user's profile Send private message Send e-mail Visit poster's website AIM Address Yahoo Messenger MSN Messenger
mqmhr
PostPosted: Thu May 05, 2005 8:17 pm    Post subject: Reply with quote

Centurion

Joined: 28 Dec 2004
Posts: 105

Most likely, there is a mismatch between the response XML message fields and the output container of the UPES task. So this needs to be checked thorughly. Also ensure that the ActImplCorrelId is exactly the same as that of the input message.

For testing, assign "Yes" to ResponseRequired field, specify a valid ReplyToQ in the MQMD and put the message to the Workflow queue. The reply message thus obtained will give valuable information about any errors.

Also ensure that if you are using any Array fields in the message, you have at least two occurences of that field.
Back to top
View user's profile Send private message
vennela
PostPosted: Fri May 06, 2005 5:35 am    Post subject: Reply with quote

Jedi Knight

Joined: 11 Aug 2002
Posts: 4055
Location: Hyderabad, India

mqmhr wrote:

For testing, assign "Yes" to ResponseRequired field, specify a valid ReplyToQ in the MQMD and put the message to the Workflow queue. The reply message thus obtained will give valuable information about any errors.


Will this work for UPES messages? I thought this only worked for XML messages that we put to create and start processes etc. Haven't done much workflow these days....
Back to top
View user's profile Send private message Send e-mail Visit poster's website
jmac
PostPosted: Fri May 06, 2005 6:24 am    Post subject: Reply with quote

Jedi Knight

Joined: 27 Jun 2001
Posts: 3081
Location: EmeriCon, LLC

vennela wrote:
Will this work for UPES messages? I thought this only worked for XML messages that we put to create and start processes etc. Haven't done much workflow these days....


Vennela: You are correct in that YES does not guarantee a response, when replying to an ActivityInvoke, MQWF interprets YES and IFERROR the same. In this case, since there is an error it may help... but then again, I believe that the correlation id is hosed up, and therefore, MQWF is not even getting a proper response.
_________________
John McDonald
RETIRED
Back to top
View user's profile Send private message Send e-mail Visit poster's website AIM Address Yahoo Messenger MSN Messenger
mca
PostPosted: Fri May 06, 2005 6:22 pm    Post subject: Reply with quote

Disciple

Joined: 09 Mar 2005
Posts: 196

Hi all,

I guess the problem might be in the response XML i created. The activeCorrelationID in my response is same as the one i captured in actual XML. But might be some tag i need to give is missing. I made the UPES activity asysnchronous(Fire and Forget) and its going to next step. So, problem might be in the XML mesage after it picks up and its stopping. I will work over the weekend on this and let u guys know where the problem is. Thanks all for the replies.

MCA
Back to top
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger
mqmhr
PostPosted: Fri May 06, 2005 10:16 pm    Post subject: Reply with quote

Centurion

Joined: 28 Dec 2004
Posts: 105

In this case, I strongly believe that there is a mismatch between the data fields of the output container of the task and the XML message sent to Workflow. I have experienced a similar problem before and was able to capture very informative error messages, when ResponseRequired was set to Yes. Hence the suggestion.
Back to top
View user's profile Send private message
mca
PostPosted: Mon May 09, 2005 5:59 am    Post subject: Reply with quote

Disciple

Joined: 09 Mar 2005
Posts: 196

The data structure i used for UPES activity "ALPHA" is:

Alpha:
a: STRING
b: STRING
c: STRING
AlphaNum : DataStructure
Num1: STRING
Num2: STRING

and i will be getting XML message based on this data structure. Now while putting back Response onto the Q i need to Put the values of Num1 and Num2 as '0' and '1' respectively. And here is the Response XML that i am generating:

Code:
<?xml version=\"1.0\" standalone=\"yes\"?>
        <!-- This document is generated by UPES Response class -->
        <WfMessage>   
        <WfMessageHeader>
        <ResponseRequired>No</ResponseRequired>
        </WfMessageHeader>

        <ActivityImplInvokeResponse>
        <ActImplCorrelID> + actImplCorrelID.trim() </ActImplCorrelID>
        <ProgramRC> 0 </ProgramRC>

        <ProgramOutputData>
        <Alpha>       
        <AlphaNum>       
        <Num1>0</Num1>
        <Num2>1</Num2>         
        </AlphaNum>
        </Alpha>
        </ProgramOutputData>
 
        </ActivityImplInvokeResponse>     
        </WfMessage>


I guess the XML i am putting back is right. Can some one correct me with the XML to change the values of o/p container. As i said the WF stops after taking this message. So, problem might be in putting back the values. Also i printed the above XML message that is taken into "XMLMessage" String in program to make sure it is what i wanna put onto Q. I gives correct ActImplCorrelID that its supposed to generate.


Last edited by mca on Mon May 09, 2005 6:32 am; edited 1 time in total
Back to top
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger
vennela
PostPosted: Mon May 09, 2005 6:12 am    Post subject: Reply with quote

Jedi Knight

Joined: 11 Aug 2002
Posts: 4055
Location: Hyderabad, India

Quote:
I guess the XML i am putting back is right.

You are wrong.
Based on your DS, your XML should inside ProgramOutputData should look like

Code:

<Alpha>
   <a>mca</a>
   <b>mca</b>
   <c>mca</c>
   <AlphaNum>
      <Num1>1</Num1>
      <Num2>2</Num2>
   </AlphaNum>
</Alpha>


Again:
Try to understand the very basics of XML.
Back to top
View user's profile Send private message Send e-mail Visit poster's website
mca
PostPosted: Mon May 09, 2005 6:29 am    Post subject: Reply with quote

Disciple

Joined: 09 Mar 2005
Posts: 196

Thanks vennela for that suggestion. But in one of my earlier posts i asked if i need to put back all values to o/p container even if i am not changing them, then "ratan" suggested to send what ever values i update and if i need any more data from i/p container, he asked me to use data default connector. So, that is what i did in this case.

I used data default connector to those variables a, b and c from i/p to o/p container. and only populated num1 and num2 in my response UPES.

Here is my earlier link of populating values into o/p container.

http://www.mqseries.net/phpBB2/viewtopic.php?t=21912

Plzz Correct me if i am wrong.


Last edited by mca on Mon May 09, 2005 6:31 am; edited 1 time in total
Back to top
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger
vennela
PostPosted: Mon May 09, 2005 6:31 am    Post subject: Reply with quote

Jedi Knight

Joined: 11 Aug 2002
Posts: 4055
Location: Hyderabad, India

In that case it should look like

Code:

<Alpha>
   <AlphaNum>
      <Num1>1</Num1>
      <Num2>2</Num2>
   </AlphaNum>
</Alpha>
Back to top
View user's profile Send private message Send e-mail Visit poster's website
mca
PostPosted: Mon May 09, 2005 6:37 am    Post subject: Reply with quote

Disciple

Joined: 09 Mar 2005
Posts: 196

i am sorry,

That was what i meant. It was a spell mistake in my earlier post typing Num1 as AlphaNum1 and Num2 as AlphaNum2. I corrected it now in my XML message in this post i typed earlier. Now my XML looks like the one i am using. And this is the one which doesnot work. So, may be i will check again with the conditions of the activity again.

thanks vennela for the correction in this post.
Back to top
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger
vennela
PostPosted: Mon May 09, 2005 6:42 am    Post subject: Reply with quote

Jedi Knight

Joined: 11 Aug 2002
Posts: 4055
Location: Hyderabad, India

Another trick that you could use is:
Logon to the workflow server using fmcautil and keep it running - don't logoff.
Now when you PUT the XML message, if there is some kind of error, it will be shown in the console where you run the admin utility.
Back to top
View user's profile Send private message Send e-mail Visit poster's website
mca
PostPosted: Wed May 11, 2005 6:47 am    Post subject: Reply with quote

Disciple

Joined: 09 Mar 2005
Posts: 196

Hi all,

Now my work flow is proceeding to next step, after i put the response message onto the Response Q(EXEXMLINPUTQ). The mistake i have done earlier while testing is may be this:

Code:


My nested data structure which is putting message on UPES Q is:

Alpha DataStructure
    a STRING
    b STRING
    c STRING
    AlphaNum DataStructure
        Num1 LONG
        Num2 LONG

and the response XML message i generated earlier is:
<AlphaNum>
      <Num1>1</Num1>
      <Num2>2</Num2>
   </AlphaNum>

and the response XML message i generated now is:
<Alpha>
<AlphaNum>
      <Num1>1</Num1>
      <Num2>2</Num2>
  </AlphaNum>
</Alpha>



So, i missed the main data structure "Alpha" in my message earlier. Now its soved. Thanks all for the replies and guidance.

MCA
Back to top
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » Workflow Engines - IBM MQ Workflow & Business Process Choreographer » [SOLVED] Flow doesnot proceeds after UPES activity.
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.