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 » vb UPES xml error

Post new topic  Reply to topic
 vb UPES xml error « View previous topic :: View next topic » 
Author Message
zemi
PostPosted: Fri Jul 08, 2005 9:39 am    Post subject: vb UPES xml error Reply with quote

Novice

Joined: 12 Feb 2003
Posts: 10

I am getting this error:
FMC01101E The XML document is not a valid MQSeries Workflow XML document.
When I start a workitem that is defined to use a UPES. The workitem stays in a running state.
The XML file is valid -- it's being generated by workflow. The length of the message is 3327. During my testing I find that when I send an xml message that is over 2800 in length, then mq returns this error.
My workflow is setup to handle unlimited message size. What else should I do????
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
jmac
PostPosted: Fri Jul 08, 2005 10:50 am    Post subject: Reply with quote

Jedi Knight

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

When are you getting this error?

IF you are sure that the XML Message you are sending back to MQWF is correct, then I would open a PMR. I am assuming here that you are sending a response back. If not, that would be why it is staying 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
zemi
PostPosted: Mon Jul 11, 2005 6:21 am    Post subject: xml valid? Reply with quote

Novice

Joined: 12 Feb 2003
Posts: 10

jmac wrote:
When are you getting this error?

IF you are sure that the XML Message you are sending back to MQWF is correct, then I would open a PMR. I am assuming here that you are sending a response back. If not, that would be why it is staying in a running state.


Is there any way it might NOT be valid when workflow creates it?
How do I send a message back? Workflow generates the xml when I start the workitem and then I get the error message in the replytoqueue. My program that should be executed is still the same one written to run against a PEA...it reads container values and then sets the transition condition.
If the UPES calls ActivityImplInvoke which calls the same exe as used by the pea, do I need to create a ActivityImplInvokeResponse message in that exe?


Here's the error message in the replytoqueue:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!-- This document is generated by a MQSeries Workflow Version 3.2.2 server -->

<WfMessage>
<WfMessageHeader>
<ResponseRequired>No</ResponseRequired></WfMessageHeader>
<GeneralError>
<Exception>
<RC>1101</RC>
<Parameters>
</Parameters>
<MessageText>FMC01101E The XML document is not a valid MQSeries Workflow XML document.\n</MessageText>
<Origin>e:\v322\src\fmcmflme.cxx(130)</Origin>
</Exception>
</GeneralError>
</WfMessage>
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
jmac
PostPosted: Mon Jul 11, 2005 6:32 am    Post subject: Re: xml valid? Reply with quote

Jedi Knight

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

zemi wrote:

<!-- This document is generated by a MQSeries Workflow Version 3.2.2 server -->


1. This is an ancient and most likely unsupported version of MQ Workflow.

2. I still am not certain when you are getting this message? If you are getting the message in the ReplyTo queue is this when you are Starting the process? Or is it when your UPES is responding back to MQWF? I think the latter, in which case your response message is not properly formatted. You must send back a properly formatted response. See the manual for the format.
_________________
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
zemi
PostPosted: Mon Jul 11, 2005 2:16 pm    Post subject: Re: xml valid? Reply with quote

Novice

Joined: 12 Feb 2003
Posts: 10

jmac wrote:

1. This is an ancient and most likely unsupported version of MQ Workflow.

2. I still am not certain when you are getting this message? If you are getting the message in the ReplyTo queue is this when you are Starting the process? Or is it when your UPES is responding back to MQWF? I think the latter, in which case your response message is not properly formatted. You must send back a properly formatted response. See the manual for the format.


1.) We are upgrading soon, but we wanted to implement the UPES prior to that.

2.) I get the error when I am starting the workflow process instance. I run my UPES and it picks up the message, processes it as a valid message, place it on the EXEXMLINPUTQ and then I immediately get the error message delivered to my reply queue. Here's the message sent to my queue:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!-- This document is generated by a MQSeries Workflow Version 3.2.2 server -->

<WfMessage>
<WfMessageHeader>
<ResponseRequired>Yes</ResponseRequired></WfMessageHeader>
<ActivityImplInvoke>
<ActImplCorrelID>
RUEAGUATAAAAAAAAAAAAAAABAAAABAAZgAAAAAAAAAAAAAAAAAEAAAAEQQAZQBUAAAAAAAAAAAAAAAFF
</ActImplCorrelID>
<Starter>IMPORTER</Starter>
<ProgramID>
<ProcTemplID>ABmAAAAAAAAAAAAAAAAAAQ==</ProcTemplID>
<ProgramName>MQ to CM</ProgramName>
</ProgramID>
<ImplementationData>
<ImplementationPlatform>Windows95</ImplementationPlatform>
<ProgramParameters></ProgramParameters>
<ExeOptions>
<PathAndFileName>C:\Program Files\Workflow\mq2cm.exe</PathAndFileName>
<InheritEnvironment>true</InheritEnvironment>
<StartInForeGround>true</StartInForeGround>
<WindowStyle>Visible</WindowStyle>
</ExeOptions>
</ImplementationData>
<ImplementationData>
<ImplementationPlatform>WindowsNT</ImplementationPlatform>
<ProgramParameters></ProgramParameters>
<ExeOptions>
<PathAndFileName>C:\Program Files\Workflow\mq2cm.exe</PathAndFileName>
<InheritEnvironment>true</InheritEnvironment>
<StartInForeGround>true</StartInForeGround>
<WindowStyle>Invisible</WindowStyle>
</ExeOptions>
</ImplementationData>
<ProgramInputData>
<_ACTIVITY>MQ to CM</_ACTIVITY>
<_PROCESS>Import(1234567)</_PROCESS>
<_PROCESS_MODEL>Import</_PROCESS_MODEL>
<AgentDS>
<ImportDS>
<policy_symbol>CPP</policy_symbol>
<policy_number>1234567</policy_number>
<insured_name>Lora</insured_name>
<effective_date>04/19/2005</effective_date>
<change_date>04/18/2005</change_date>
<agency_id>9999999</agency_id>
<doc_type>NB</doc_type>
<doc_id>xyz1234AAA$$$$$$</doc_id>
<quote_number>Q</quote_number>
<sort>Lora</sort>
<user_id>Lora</user_id>
<mod_number>00</mod_number>
<received_date>04/21/2005</received_date>
<needbydate>04/18/2005</needbydate>
<folder_id>F</folder_id>
<uncode>U</uncode>
</ImportDS>
</AgentDS>
</ProgramInputData>
<ProgramOutputDataDefaults>
<_ACTIVITY>MQ to CM</_ACTIVITY>
<_PROCESS>Import(1234567)</_PROCESS>
<_PROCESS_MODEL>Import</_PROCESS_MODEL>
<AgentDS>
<ImportDS>
<policy_symbol>CPP</policy_symbol>
<policy_number>1234567</policy_number>
<insured_name>Lora</insured_name>
<effective_date>04/19/2005</effective_date>
<change_date>04/18/2005</change_date>
<agency_id>9999999</agency_id>
<doc_type>NB</doc_type>
<doc_id>xyz1234AAA$$$$$$</doc_id>
<quote_number>Q</quote_number>
<sort>Lora</sort>
<user_id>Lora</user_id>
<mod_number>00</mod_number>
<received_date>04/21/2005</received_date>
<needbydate>04/18/2005</needbydate>
<folder_id>F</folder_id>
<uncode>U</uncode>
</ImportDS>
</AgentDS>
</ProgramOutputDataDefaults>
</ActivityImplInvoke>
</WfMessage>
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
Ratan
PostPosted: Mon Jul 11, 2005 2:28 pm    Post subject: Reply with quote

Grand Master

Joined: 18 Jul 2002
Posts: 1245

This looks like the UPES message that is sent by WF. Post your ActivityImplInvokeResponse Message (your UPES response).
_________________
-Ratan
Back to top
View user's profile Send private message Send e-mail
zemi
PostPosted: Mon Jul 11, 2005 2:54 pm    Post subject: repsonse message Reply with quote

Novice

Joined: 12 Feb 2003
Posts: 10

OK...I think I'm understanding this now....

Workflow will generate this XML and then my program defined in my workflow activity should send a response back to EXEXMLINPUTQ before it launches?? So, I can't just call, say fmcshow.exe without first sending a response? And then if I need to update output container values in that exe...I would need to send another response???
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
jmac
PostPosted: Mon Jul 11, 2005 3:32 pm    Post subject: Re: repsonse message Reply with quote

Jedi Knight

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

zemi wrote:
OK...I think I'm understanding this now....

Workflow will generate this XML and then my program defined in my workflow activity should send a response back to EXEXMLINPUTQ before it launches?? So, I can't just call, say fmcshow.exe without first sending a response? And then if I need to update output container values in that exe...I would need to send another response???


Unfortunately I think you are not quite getting it yet. The message you showed was the Activity Invocation message. That message was sent to the Queue you defined for the UPES. The activity is in a RUNNING state because MQWF is waiting for you to send the Activity Invocation Response message.

So you don't have to do anything to get the activity to launch, it is already launched. We can tell that because of the Activity Invocation message you are showing us. The response is what tells MQWF how your UPES completed. You give it the output container contents and the Return code, in a very similar way to how you would when using the ActiveX api and a PEA.
_________________
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
zemi
PostPosted: Mon Jul 11, 2005 3:42 pm    Post subject: resposne message Reply with quote

Novice

Joined: 12 Feb 2003
Posts: 10

OK. Thanks for all the info. I think I might need to open a PMR then because my activity is supposed to be launching the exe and I don't see it run in my list of running processes and the interface doesn't launch. And it sounds like that program should open and workflow should be waiting for that program to send back the response instead of generating this error saying that the xml for the invoke message is invalid.

By the way, I have another server with version 3.3.0 of workflow and I'm getting the same results there.

Thanks again. I'll post the resolution when I get this working.
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
jmac
PostPosted: Mon Jul 11, 2005 3:53 pm    Post subject: Re: resposne message Reply with quote

Jedi Knight

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

zemi wrote:
OK. Thanks for all the info. I think I might need to open a PMR then because my activity is supposed to be launching the exe and I don't see it run in my list of running processes and the interface doesn't launch.


It is my opinion that workflow is processing as it should. The activity is in a running state and MQWF is waiting on your UPES to supply the response message. NO program is ever launched for an activity that is serviced by a UPES, the only think MQWF does is put the invoke message on your queue, and if you defined a Synchronous upes it waits for the results.
_________________
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
Ratan
PostPosted: Mon Jul 11, 2005 3:56 pm    Post subject: Reply with quote

Grand Master

Joined: 18 Jul 2002
Posts: 1245

I dont think this is PMR material.

no offense, but please first understand how a UPES works. You should be able to solve this once you understand how a UPES works.
_________________
-Ratan
Back to top
View user's profile Send private message Send e-mail
hos
PostPosted: Mon Jul 11, 2005 10:04 pm    Post subject: Reply with quote

Chevalier

Joined: 03 Feb 2002
Posts: 470

Quote:
I dont think this is PMR material.


I fully agree. Note that MQWF 3.2 and 3.3 are out of maintenance long time.
And there have been many enhancements / fixes in the UPES area in the meantime.
Back to top
View user's profile Send private message
zemi
PostPosted: Wed Jul 13, 2005 12:54 pm    Post subject: Re: resposne message Reply with quote

Novice

Joined: 12 Feb 2003
Posts: 10

jmac wrote:

NO program is ever launched for an activity that is serviced by a UPES, the only think MQWF does is put the invoke message on your queue, and if you defined a Synchronous upes it waits for the results.


I have my UPES working now. I have a program called UPES.exe that gets the activityimpl message from wf, validates it and puts it to the exexmlinputq. Workflow is automatically generating a message saything that the xml created by workflow is invalid, but I generate a response message with my output container values and my workitem transitions OK.

My question now is, do I have to pass EVERY container value? I seem to recall reading another post about setting the default mapping values in buildtime or I will have to pass all values in the XML. Is that correct?

And I'm getting what looks like an enter or a tab in my container when it gets to a PEA activity. When I view the container values, my item won't route because of that character. The xml does not have any additional space or tab. Could this be just because the apps that write to the container via the PEA are not doing a trim first?

Thanx
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
Ratan
PostPosted: Wed Jul 13, 2005 1:01 pm    Post subject: Reply with quote

Grand Master

Joined: 18 Jul 2002
Posts: 1245

Quote:
My question now is, do I have to pass EVERY container value?


Not necessary. If you any container members in transition condition, then you have to make sure those attributes are not null unless you have a default connector.
_________________
-Ratan
Back to top
View user's profile Send private message Send e-mail
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 » vb UPES xml error
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.