| Author | Message | 
		
		  | jdevassy | 
			  
				|  Posted: Mon Jan 22, 2007 12:58 am    Post subject: XML NameSpace in MRM Domain |   |  | 
		
		  | Apprentice
 
 
 Joined: 16 Oct 2005Posts: 37
 Location: Melbourne, Australia
 
 | 
			  
				| Hi, 
 I have created a message set, namespace enabled and imported schemas to create message defenitions. Same schemas are used to generate some sample messages, and all fields are in namespace. The message has namespace declarations. The message set has the namespaces added to the XML properties.
 
 I am not able to parse the message using the message set. If i remove namespaces from the input message, it gets parsed. I can read the message in as XMLNS domain, but I have to use the message set to parse the message.
 
 Can anyone please tell me whats wrong with the message set/message?
 
 Thanks in Advance
 
 Joe
 |  | 
		
		  | Back to top |  | 
		
		  |  | 
		
		  | kimbert | 
			  
				|  Posted: Mon Jan 22, 2007 1:18 am    Post subject: |   |  | 
		
		  |  Jedi Council
 
 
 Joined: 29 Jul 2003Posts: 5543
 Location: Southampton
 
 | 
			  
				| Good problem description - thanks for that. 
 
  Good - so it must be well-formed XML. 
	| Quote: |  
	| I can read the message in as XMLNS domain |  
 
  What is the problem? Are you getting a parsing exception? A validation error? ( I suspect a validation error - read on ) 
	| Quote: |  
	| I am not able to parse the message using the message set |  
 
  I suspect you are getting a validation error with the original message. When you remove the namespaces from the input message, the MRM parser cannot match its root tag against any of the deployed message definitions. The message is 'self-defining', and so does not get validated at all. So no validation error. 
	| Quote: |  
	| If i remove namespaces from the input message, it gets parsed |  
 If you quote the full text of the parsing exception I may be able to suggest a fix.
 |  | 
		
		  | Back to top |  | 
		
		  |  | 
		
		  | jdevassy | 
			  
				|  Posted: Mon Jan 22, 2007 1:40 am    Post subject: |   |  | 
		
		  | Apprentice
 
 
 Joined: 16 Oct 2005Posts: 37
 Location: Melbourne, Australia
 
 | 
			  
				| Hi Kimbert, 
 Thanks for coming for my rescue....
 
 I am able to parse the message when i remove the namespace. The problem is when i have namespace in the message.
 
 The message actually comes inside the flow, but all  i can see is 'ImbRecoverable Exception', just underneath MRM in the message tree as you get when you pass in an invalid message to the parser.
 
 
 Thanks
 Joe
 _________________
 Thanks & Regards,
 
 Joy Paliakkara Devassy
 |  | 
		
		  | Back to top |  | 
		
		  |  | 
		
		  | kimbert | 
			  
				|  Posted: Mon Jan 22, 2007 2:54 am    Post subject: |   |  | 
		
		  |  Jedi Council
 
 
 Joined: 29 Jul 2003Posts: 5543
 Location: Southampton
 
 | 
			  
				| 
  That's true, but the namespaces are not the problem. Re-read my post. When you remove namespaces you are avoiding validation. 
	| Quote: |  
	| The problem is when i have namespace in the message. |  
 
 
  You need to get the full text of the parsing exception. I promise you that there will be a fairly clear error message being emitted. 
	| Quote: |  
	| all i can see is 'ImbRecoverable Exception', just underneath MRM in the message tree |  - First check that the text of the exception is not being shown somewhere in the debugger
 - Check the event log ( on windows it is the Application Event Log in Event Viewer ).
 - If all else fails, enable user trace for the execution group, put your message through the flow, read the trace, format the trace. This will definitely give you all the information you require.
 |  | 
		
		  | Back to top |  | 
		
		  |  | 
		
		  | jdevassy | 
			  
				|  Posted: Mon Jan 22, 2007 4:51 pm    Post subject: |   |  | 
		
		  | Apprentice
 
 
 Joined: 16 Oct 2005Posts: 37
 Location: Melbourne, Australia
 
 | 
			  
				| Hi Kimbert, 
 I checked the Event log and there is nothing in it.
 
 The message actually comes out through the 'out' terminal of the input node, but no message tree under MRM(only '  ImbRecoverableException caught from worker->parseNext.'). Exception is thrown only when i try to set some values from the input, beacuse it is not able to find the fields.
 
 Thanks
 Joe
 |  | 
		
		  | Back to top |  | 
		
		  |  | 
		
		  | jefflowrey | 
			  
				|  Posted: Mon Jan 22, 2007 5:00 pm    Post subject: |   |  | 
		
		  | Grand Poobah
 
 
 Joined: 16 Oct 2002Posts: 19981
 
 
 | 
			  
				| Do you have the catch and failure terminals hooked up? 
 If so, disconnect them.
 _________________
 I am *not* the model of the modern major general.
 |  | 
		
		  | Back to top |  | 
		
		  |  | 
		
		  | jdevassy | 
			  
				|  Posted: Tue Jan 23, 2007 7:12 pm    Post subject: |   |  | 
		
		  | Apprentice
 
 
 Joined: 16 Oct 2005Posts: 37
 Location: Melbourne, Australia
 
 | 
			  
				| Hi Jeff, 
 The catch/failure is not wired.
 
 Thanks
 Joe
 |  | 
		
		  | Back to top |  | 
		
		  |  | 
		
		  | kimbert | 
			  
				|  Posted: Wed Jan 24, 2007 1:38 am    Post subject: |   |  | 
		
		  |  Jedi Council
 
 
 Joined: 29 Jul 2003Posts: 5543
 Location: Southampton
 
 | 
			  
				| 
  Ah. That sounds wrong. You should either get a parsing exception, or you should get a valid message tree. Can you put in a trace node and post the output here. 
	| Quote: |  
	| The message actually comes out through the 'out' terminal of the input node, but no message tree under MRM(only ' ImbRecoverableException caught from worker->parseNext.') |  |  | 
		
		  | Back to top |  | 
		
		  |  | 
		
		  |  |