|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
REFERENCE to CHARACTER |
« View previous topic :: View next topic » |
Author |
Message
|
jefflowrey |
Posted: Tue Oct 09, 2007 6:34 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
Why does that say "CopyEntireMessage"?
Surely you didn't put your own code in there? _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
pdrabik |
Posted: Tue Oct 09, 2007 7:04 am Post subject: |
|
|
Apprentice
Joined: 29 Sep 2006 Posts: 31 Location: poland
|
It does say CopyEntireMessage cus currently Im programming it in this, named from default, procedure... I'll update you with exceptionlist i get.
Code: |
(
(0x01000000):ExceptionList = (
(0x01000000):RecoverableException = (
(0x01000000):File = (
(0x02000000): = 'F:\build\S000_P\src\DataFlowEngine\ImbDataFlowNode.cpp'
)
(0x01000000):Line = (
(0x02000000): = 616
)
(0x01000000):Function = (
(0x02000000): = 'ImbDataFlowNode::createExceptionList'
)
(0x01000000):Type = (
(0x02000000): = 'ComIbmComputeNode'
)
(0x01000000):Name = (
(0x02000000): = 'converter#FCMComposite_1_2'
)
(0x01000000):Label = (
(0x02000000): = 'converter.Compute'
)
(0x01000000):Catalog = (
(0x02000000): = 'BIPv600'
)
(0x01000000):Severity = (
(0x02000000): = 3
)
(0x01000000):Number = (
(0x02000000): = 2230
)
(0x01000000):Text = (
(0x02000000): = 'Node throwing exception'
)
(0x01000000):RecoverableException = (
(0x01000000):File = (
(0x02000000): = 'F:\build\S000_P\src\DataFlowEngine\ImbRdl\ImbRdlStatementGroup.cpp'
)
(0x01000000):Line = (
(0x02000000): = 589
)
(0x01000000):Function = (
(0x02000000): = 'SqlStatementGroup::execute'
)
(0x01000000):Type = (
(0x02000000): = 'ComIbmComputeNode'
)
(0x01000000):Name = (
(0x02000000): = 'converter#FCMComposite_1_2'
)
(0x01000000):Label = (
(0x02000000): = 'converter.Compute'
)
(0x01000000):Catalog = (
(0x02000000): = 'BIPv600'
)
(0x01000000):Severity = (
(0x02000000): = 3
)
(0x01000000):Number = (
(0x02000000): = 2488
)
(0x01000000):Text = (
(0x02000000): = 'Error detected, rethrowing'
)
(0x01000000):Insert = (
(0x01000000):Type = (
(0x02000000): = 5
)
(0x01000000):Text = (
(0x02000000): = '.converter_Compute.Main'
)
)
(0x01000000):Insert = (
(0x01000000):Type = (
(0x02000000): = 5
)
(0x01000000):Text = (
(0x02000000): = '5.4'
)
)
(0x01000000):Insert = (
(0x01000000):Type = (
(0x02000000): = 5
)
(0x01000000):Text = (
(0x02000000): = 'CopyEntireMessage(InputRoot, tmp);'
)
)
(0x01000000):RecoverableException = (
(0x01000000):File = (
(0x02000000): = 'F:\build\S000_P\src\DataFlowEngine\ImbRdl\ImbRdlRoutine.cpp'
)
(0x01000000):Line = (
(0x02000000): = 548
)
(0x01000000):Function = (
(0x02000000): = 'SqlRoutine::invoke'
)
(0x01000000):Type = (
(0x02000000): = 'ComIbmComputeNode'
)
(0x01000000):Name = (
(0x02000000): = 'converter#FCMComposite_1_2'
)
(0x01000000):Label = (
(0x02000000): = 'converter.Compute'
)
(0x01000000):Catalog = (
(0x02000000): = 'BIPv600'
)
(0x01000000):Severity = (
(0x02000000): = 3
)
(0x01000000):Number = (
(0x02000000): = 2934
)
(0x01000000):Text = (
(0x02000000): = 'Error occured in procedure'
)
(0x01000000):Insert = (
(0x01000000):Type = (
(0x02000000): = 5
)
(0x01000000):Text = (
(0x02000000): = 'CopyEntireMessage'
)
)
(0x01000000):RecoverableException = (
(0x01000000):File = (
(0x02000000): = 'F:\build\S000_P\src\DataFlowEngine\ImbRdl\ImbRdlStatementGroup.cpp'
)
(0x01000000):Line = (
(0x02000000): = 589
)
(0x01000000):Function = (
(0x02000000): = 'SqlStatementGroup::execute'
)
(0x01000000):Type = (
(0x02000000): = 'ComIbmComputeNode'
)
(0x01000000):Name = (
(0x02000000): = 'converter#FCMComposite_1_2'
)
(0x01000000):Label = (
(0x02000000): = 'converter.Compute'
)
(0x01000000):Catalog = (
(0x02000000): = 'BIPv600'
)
(0x01000000):Severity = (
(0x02000000): = 3
)
(0x01000000):Number = (
(0x02000000): = 2488
)
(0x01000000):Text = (
(0x02000000): = 'Error detected, rethrowing'
)
(0x01000000):Insert = (
(0x01000000):Type = (
(0x02000000): = 5
)
(0x01000000):Text = (
(0x02000000): = '.converter_Compute.CopyEntireMessage'
)
)
(0x01000000):Insert = (
(0x01000000):Type = (
(0x02000000): = 5
)
(0x01000000):Text = (
(0x02000000): = '45.3'
)
)
(0x01000000):Insert = (
(0x01000000):Type = (
(0x02000000): = 5
)
(0x01000000):Text = (
(0x02000000): = 'DECLARE messageChar CHARACTER CAST(messageBlob AS CHARACTER CCSID InputRoot.Properties.CodedCharSetId);'
)
)
(0x01000000):RecoverableException = (
(0x01000000):File = (
(0x02000000): = 'F:\build\S000_P\src\DataFlowEngine\ImbRdl\ImbRdlTypeCast.cpp'
)
(0x01000000):Line = (
(0x02000000): = 257
)
(0x01000000):Function = (
(0x02000000): = 'SqlTypeCast::evaluate'
)
(0x01000000):Type = (
(0x02000000): = ''
)
(0x01000000):Name = (
(0x02000000): = ''
)
(0x01000000):Label = (
(0x02000000): = ''
)
(0x01000000):Catalog = (
(0x02000000): = 'BIPv600'
)
(0x01000000):Severity = (
(0x02000000): = 3
)
(0x01000000):Number = (
(0x02000000): = 2521
)
(0x01000000):Text = (
(0x02000000): = 'Error while casting'
)
(0x01000000):Insert = (
(0x01000000):Type = (
(0x02000000): = 5
)
(0x01000000):Text = (
(0x02000000): = '.converter_Compute.CopyEntireMessage'
)
)
(0x01000000):Insert = (
(0x01000000):Type = (
(0x02000000): = 5
)
(0x01000000):Text = (
(0x02000000): = '45.28'
)
)
(0x01000000):Insert = (
(0x01000000):Type = (
(0x02000000): = 5
)
(0x01000000):Text = (
(0x02000000): = 'X'4d442020020000000000000008000000ffffffff0000000022020000b80400004d515354522020200000000000000000414d51205742524b365f44454641554c650c0b472000d902000000000000000000000000000000000000000000000000000000002020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020205742524b365f44454641554c545f51554555455f4d414e414745522020202020202020202020202020202020202020207064726162696b20202020201601051500000038698b7b07645533280db124fe1a000000000000000000000b20202020202020202020202020202020202020202020202020202020202020200b00000033305c65636c697073655c6a72655c62696e5c6a617661772e6578653230303731303039303631373437393420202020000000000000000000000000000000000000000000000000010000000000000000000000ffffffff617364''
)
)
(0x01000000):Insert = (
(0x01000000):Type = (
(0x02000000): = 5
)
(0x01000000):Text = (
(0x02000000): = 'CHARACTER'
)
)
(0x01000000):RecoverableException = (
(0x01000000):File = (
(0x02000000): = 'F:\build\S000_P\src\CommonServices\ImbConverter.cpp'
)
(0x01000000):Line = (
(0x02000000): = 512
)
(0x01000000):Function = (
(0x02000000): = 'ImbConverterCPP::internalToUnicode'
)
(0x01000000):Type = (
(0x02000000): = ''
)
(0x01000000):Name = (
(0x02000000): = ''
)
(0x01000000):Label = (
(0x02000000): = ''
)
(0x01000000):Catalog = (
(0x02000000): = 'BIPv600'
)
(0x01000000):Severity = (
(0x02000000): = 3
)
(0x01000000):Number = (
(0x02000000): = 2135
)
(0x01000000):Text = (
(0x02000000): = 'Unconvertable character'
)
(0x01000000):Insert = (
(0x01000000):Type = (
(0x02000000): = 5
)
(0x01000000):Text = (
(0x02000000): = 'ff'
)
)
(0x01000000):Insert = (
(0x01000000):Type = (
(0x02000000): = 5
)
(0x01000000):Text = (
(0x02000000): = '4d442020020000000000000008000000ffffffff0000000022020000b80400004d515354522020200000000000000000414d51205742524b365f44454641554c650c0b472000d902000000000000000000000000000000000000000000000000000000002020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020205742524b365f44454641554c545f51554555455f4d414e414745522020202020202020202020202020202020202020207064726162696b20202020201601051500000038698b7b07645533280db124fe1a000000000000000000000b20202020202020202020202020202020202020202020202020202020202020200b00000033305c65636c697073655c6a72655c62696e5c6a617661772e6578653230303731303039303631373437393420202020000000000000000000000000000000000000000000000000010000000000000000000000ffffffff617364'
)
)
(0x01000000):Insert = (
(0x01000000):Type = (
(0x02000000): = 2
)
(0x01000000):Text = (
(0x02000000): = '1208'
)
)
)
)
)
)
)
)
) |
_________________ ---
cc: poltreak@o2.pl |
|
Back to top |
|
 |
Vitor |
Posted: Tue Oct 09, 2007 7:42 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
Don't put your own code in either of the default procedures. If something regenerates them it'll be lost. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
jefflowrey |
Posted: Tue Oct 09, 2007 7:49 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
That exception list is telling you that the character 'ff' can't be converted to a valid Unicode character from codepage 1208.
Please show your code, including the ASBITSTREAM call. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
pdrabik |
Posted: Tue Oct 09, 2007 11:06 am Post subject: |
|
|
Apprentice
Joined: 29 Sep 2006 Posts: 31 Location: poland
|
Vitor wrote: |
Don't put your own code in either of the default procedures. If something regenerates them it'll be lost. |
I know, it isnt the best art of programming
Yet, it is simple flow, where no other things can occure, however, i know that websphere has its own "magic" tricks.
So, the code I use is:
Code: |
CREATE PROCEDURE CopyEntireMessage(IN rootname REFERENCE, OUT logroot CHARACTER) BEGIN
CREATE LASTCHILD of OutputRoot DOMAIN('XMLNS') Name 'Log2';
--SET OutputRoot.Log2.XML = rootname;
DECLARE messageBlob BLOB ASBITSTREAM(rootname);
DECLARE messageChar CHAR CAST(messageBlob AS CHARACTER CCSID InputRoot.Properties.CodedCharSetId);
Set OutputRoot.XML.Body.Log2 = 'message:' || messageChar;
|
_________________ ---
cc: poltreak@o2.pl |
|
Back to top |
|
 |
jefflowrey |
Posted: Tue Oct 09, 2007 11:19 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
Try specifying encoding and ccsid on ASBITSTREAM.
Try specifying encoding on CAST.
See if your exact same code works fine if you don't pass a REFERENCE to ASBITSTREAM, but instead pass the real InputRoot.
It's not just "not best practices" to stick code in CopyMessageHeaders() or CopyEntireMessage(). You can easily lose that code, and nobody will know the difference. AND you will confuse someone else who has to maintain your code. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
|
|
|
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
|
|
|
|