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 » WebSphere Message Broker (ACE) Support » Accessing MRM elements, parser exception

Post new topic  Reply to topic
 Accessing MRM elements, parser exception « View previous topic :: View next topic » 
Author Message
mqs_guy
PostPosted: Tue Apr 13, 2004 12:04 pm    Post subject: Accessing MRM elements, parser exception Reply with quote

Acolyte

Joined: 09 May 2002
Posts: 71

Hi all,

I have imported a XSD to my WBIMB 5.0 (no errors/warnings) and 'am passing an valid XML which confronts to the XSD.
We have a simple message flow: MQInput ->Compute ->MQOutput and the fail terminal of Compute wired to MQFailure

The below esql is written in the compute node.

Set OutputRoot.MRM.Test.Child1 = 'abcd';

Using mqsichangetrace command the trace output is as below:

*************************************************************
2004-04-13 15:15:55.473445 5398 UserTrace BIP2231E: Error detected whilst processing a message 'shipmessageflow.Compute'.
The message broker detected an error whilst processing a message in node 'shipmessageflow.Compute'. The message has been augmented with an exception list and has been propagated to the node's failure terminal for further processing.
See the following messages for details of the error.
2004-04-13 15:15:55.473468 5398 RecoverableException BIP2488E: (.shipmessageflow_Compute.Main, 8.3) Error detected whilst executing the SQL statement 'SET OutputRoot.MRM.Test.Child1 = 'abcd';'.
The message broker detected an error whilst executing the given statement. An exception has been thrown to cut short the SQL program.
See the following messages for details of the error.
2004-04-13 15:15:55.473480 5398 ParserException BIP5285E: Message Translation Interface Parsing Errors have occurred:
Message Set Name : 'Testmessageset'
Message Set Level : '1'
Message Format : 'XML1'
Message Type Path : ''
Review further error messages for an indication to the cause of the errors.
2004-04-13 15:15:55.473487 5398 ParserException BIP5371E: Message Validation failure. Invalid member for content validation 'Closed'
Element, Child1, is either not defined as a member of its parent complex type or group, or has been created out of order in the logical tree, for a composition of 'Ordered Set' or 'Sequence'. The parent complex type or group has content validation of 'Closed'. The parent element is Test.
Modify the message set or messageflow and redeploy to the broker or modify the input message and resubmit to the broker.
*************************************************************

Below is the XSD and the XML message:

XSD:
====
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="Test">
<xs:annotation>
<xs:documentation>Comment describing your root element</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Child1" type="xs:string"/>
<xs:element name="Child2" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>


XML:
===

<Test xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="Test.xsd">
<Child1>String</Child1>
<Child2>String</Child2>
</Test>


The message always goes to the MQFailure node. How do we get around this? How do we access and set values for MRM elements?

As always, any inputs are appreciated.

Cheers,
Vishal Agrawal
Back to top
View user's profile Send private message
fschofer
PostPosted: Tue Apr 13, 2004 1:42 pm    Post subject: Reply with quote

Knight

Joined: 02 Jul 2001
Posts: 524
Location: Mainz, Germany

Please try the following ESQL

SET OutputRoot.Properties.MessageType = 'Test';

SET OutputRoot.MRM.Child1 = 'abcd';

Greetings
Frank
Back to top
View user's profile Send private message Send e-mail
kirani
PostPosted: Fri Apr 16, 2004 3:36 pm    Post subject: Reply with quote

Jedi Knight

Joined: 05 Sep 2001
Posts: 3779
Location: Torrance, CA, USA

Also, verify your Root.Properties.MessageFormat property.
I believe it should be set to 'XML'.
_________________
Kiran


IBM Cert. Solution Designer & System Administrator - WBIMB V5
IBM Cert. Solutions Expert - WMQI
IBM Cert. Specialist - WMQI, MQSeries
IBM Cert. Developer - MQSeries

Back to top
View user's profile Send private message Visit poster's website
kimbert
PostPosted: Mon Apr 19, 2004 12:25 am    Post subject: Reply with quote

Jedi Council

Joined: 29 Jul 2003
Posts: 5542
Location: Southampton

No - it looks as if it is correctly set to 'XML1' already. WBIMB 5.0 uses 'XML1' as the default name for the first XML physical format.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » Accessing MRM elements, parser exception
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.