Author |
Message
|
balaji83it |
Posted: Tue Nov 17, 2009 11:20 pm Post subject: Schema Problem --- "RM Dictionary not found" |
|
|
Acolyte
Joined: 20 Jul 2007 Posts: 72
|
Hello Friends,
I created a message set from a xsd which creates a msg def file in a seperate schema(not the default).
When I deploy the bar file, it is unable to find the msgset and is throwing an exception
"RM Dictionary not found"
I have deployed msgset in the bar file but still I see the exception. When the msgset is in the default schema, there is no such exception and it works fine.
So the problem is "How to make the broker recognise the msgset which is not in default schema? Any options or preferences need to be changed?"
So I request you to help me out.
Thanks
K.Balaji Satya Rajendra |
|
Back to top |
|
 |
jonasb |
Posted: Wed Nov 18, 2009 12:35 am Post subject: |
|
|
Apprentice
Joined: 20 Dec 2006 Posts: 49 Location: Sweden
|
I'm not sure, but can the problem be with the test data?
Assume this is your original test data looks like this:
Code: |
<acmemsg>
<acmechild1>value1</acmechild1>
<acmechild1>value2</acmechild1>
</acmemsg>
|
(This works well when the schema is not in a namespace)
If you put the schema in a name space, you need to adjust data as well?
Code: |
<acmemsg xmlns="http://www.acmestuff.com">
<acmechild1>value1</acmechild1>
<acmechild1>value2</acmechild1>
</acmemsg>
|
_________________ contact admin |
|
Back to top |
|
 |
kimbert |
Posted: Wed Nov 18, 2009 1:01 am Post subject: |
|
|
 Jedi Council
Joined: 29 Jul 2003 Posts: 5542 Location: Southampton
|
First, let's get the words right:
- A message set cannot have a namespace. It is identified by its name or ( in the old days ) its 13-character identifier.
- A message definition file is an XML Schema with annotations. It *can* have a target namespace. You can have many message definition files in a single message set, and each one can have a different target namespace.
I can't think of a good reason why changing the namespace of a message definition file should break the message flow. How is the MRM parser being called ( input node / ASBITSTREAM / CREATE...PARSE)? Maybe a user trace would help you to see what's happening. Take one with the namespace and one without, and compare the two. |
|
Back to top |
|
 |
balaji83it |
Posted: Wed Nov 18, 2009 2:35 am Post subject: |
|
|
Acolyte
Joined: 20 Jul 2007 Posts: 72
|
Hello contact admin,
Iam using the following xml message as my input in MQInput node
--------------------------------------------------------------------
Input Message
-------------------------------------------------------------------------------------
<?xml version="1.0" encoding="utf-8"?>
<!-- Created with Liquid XML Studio - 30 Day Trial Edition 7.1.6.1440 (http://www.liquid-technologies.com) -->
<tnsi:ProcessOrder xmlns:tns="http://www.openapplications.org/oagis/9/currencycode/54217:2001" xmlns:tnsa="http://www.openapplications.org/oagis/9/languagecode/5639:1988" xmlns:tnsb="http://www.openapplications.org/oagis/9/IANAMIMEMediaTypes:2003" xmlns:tnsc="http://www.openapplications.org/oagis/9/unitcode/66411:2001" xmlns:tnsd="http://www.openapplications.org/oagis/9/codelists" xmlns:tnse="http://www.openapplications.org/oagis/9/unqualifieddatatypes/1.1" xmlns:tnsf="http://www.openapplications.org/oagis/9/qualifieddatatypes/1.1" xmlns:tnsg="http://www.openapplications.org/oagis/9" xmlns:tnsh="http://www.ibm.com/xmlns/prod/commerce/9/foundation" xmlns:tnsi="http://www.ibm.com/xmlns/prod/commerce/9/order" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.ibm.com/xmlns/prod/commerce/9/order D:\BALAJI\TARGET\Work\XSD\xsd\xsd\OAGIS\9.0\Overlays\IBM\Commerce\BODs\ProcessOrder.xsd" releaseID="string" versionID="string" systemEnvironmentCode="Test" languageCode="string">
<tnsh:ApplicationArea>
<tnsg:CreationDateTime>1988-11-12T09:31:09.13</tnsg:CreationDateTime>
<tnsh:BusinessContext />
</tnsh:ApplicationArea>
<tnsi:DataArea>
<tnsg:Process />
</tnsi:DataArea>
</tnsi:ProcessOrder>
-----------------------------------------------------------------------------
And my .mxsd file is automatically generated in the schema with the following name.
------------------------------------------------------------------------
com.ibm.xmlns.prod.commerce._9.order
-------------------------------------------------------------------------
The msg def is being created from an xsd file with complex message types.
@Kimbert
Iam using a MQInput node with MRM parser and specifying the msgset, msgtype and format.
Thanks
K.Balaji. |
|
Back to top |
|
 |
Herbert |
Posted: Wed Nov 18, 2009 2:39 am Post subject: Re: Schema Problem --- "RM Dictionary not found" |
|
|
 Centurion
Joined: 05 Dec 2006 Posts: 146 Location: Leersum, The Netherlands
|
balaji83it wrote: |
"RM Dictionary not found"
I have deployed msgset in the bar file but still I see the exception. When the msgset is in the default schema, there is no such exception and it works fine.
|
Long shot. What is the type in the bar file for the message set? "Dictionary file" or "XSDZIP File" ? If it is "XSDZIP file" then you must add "MRM" to "Supported message domains" for the messageSet. |
|
Back to top |
|
 |
kimbert |
Posted: Wed Nov 18, 2009 2:58 am Post subject: |
|
|
 Jedi Council
Joined: 29 Jul 2003 Posts: 5542 Location: Southampton
|
Quote: |
Iam using a MQInput node with MRM parser and specifying the msgset, msgtype and format. |
MRM XML is second-best, by a long way - you should be using XMLNSC. Or are you on v6.0?
Quote: |
If it is "XSDZIP file" then you must add "MRM" to "Supported message domains" for the messageSet. |
Good point, Herbert. I should have thought of that possibility. Normally, it would be better to change the default domain from 'XMLNSC' to 'MRM'. Otherwise, the Mapping node and ESQL content assist won't work correctly. |
|
Back to top |
|
 |
balaji83it |
Posted: Wed Nov 18, 2009 3:38 am Post subject: |
|
|
Acolyte
Joined: 20 Jul 2007 Posts: 72
|
Hello Herbert,
You are correct. It is XSDZIP File and I haven't set that property. Now I corrected it.
Now that exception no more comes but Iam facing a new type of exception. Will post as a new thread if not able to resolve.
Anyways Thanks a lot Herbert.
@Kimbert
Iam using MBV7 beta.
Thanks
K.Balaji. |
|
Back to top |
|
 |
kimbert |
Posted: Wed Nov 18, 2009 3:45 am Post subject: |
|
|
 Jedi Council
Joined: 29 Jul 2003 Posts: 5542 Location: Southampton
|
Quote: |
Iam using MBV7 beta. |
...and you are using MRM XML. Any reason why? |
|
Back to top |
|
 |
balaji83it |
Posted: Wed Nov 18, 2009 3:59 am Post subject: |
|
|
Acolyte
Joined: 20 Jul 2007 Posts: 72
|
Hello Kimbert,
Iam using MRM-->XML because I have a number of msg definitions from a given xsd. I want to validate my input message against only a certain definition.
If I use XMLNSC, any of the msg defs present in msg set will be validated which I do not want to happen.
As we do not have the option of giving msg type and format in XMLNSC (but only specify msg set), Iam using MRM.
Any suggestions are most welcome.
Thanks
K.Balaji. |
|
Back to top |
|
 |
|