Author |
Message
|
syed_basha |
Posted: Tue May 05, 2009 5:46 pm Post subject: BIP2558E Undefined function - WMB Mapping |
|
|
Newbie
Joined: 05 May 2009 Posts: 7
|
I have a flow which consist of MQInput node, Mapping node, MQoutput Node.
In the mapping node I have used single mapping from XMLNSC to MRM, it checks occurrence of a field using msgmap:occurrence() function and adds to MRM.
When I build the bar file it is building without any issues. But while deploying, it gives the below error
Error 1
BIP2558E: (TestMAt.IBM_WBIMB_TestMap123_Mapping.MAIN, 3.6) : Undefined function 'TestMAt.TestMap123_Mapping'.
The program is attempting to call a function which is not defined or is not in the schema path.
Correct the syntax of your ESQL expression in node 'TestMAt.IBM_WBIMB_TestMap123_Mapping.MAIN', around line and column '3.6', then redeploy the message flow.
Error 2
BIP4001E: Syntax error in SQL statements in node 'TestMAt.TestMap123.Mapping.ComIbmCompute'.
The configuration failed due to errors in the SQL statement text. See the following messages for details of the error
The following error messages will give specific details of the location and nature of the error. Check and correct the syntax of the SQL statements and redeploy.
while looking at the maping file the line 3 constist the following
<maplang:MapOperation name="MF_AccDet_Mapping" version="6.1.201.v20090305_1223" prefixes="/0/@namespaces.0/@prefix /0/@namespaces.1/@prefix /0/@namespaces.2/@prefix /0/@namespaces.3/@prefix /0/@namespaces.4/@prefix /0/@namespaces.5/@prefix /0/@namespaces.6/@prefix">
I have the below configuration
broker is runing in Linux and broker version is 6.1.0.3
toolkit is runing in Windows and the version is 6.1.0.3.IFix 03(Version: 6.1.0.3 Build id: 6.1.0.3-IFix003-20090305_1223)
I did the below attempts to resolve and could not be able to resolve
1. I did Clean build workspace project and then build once again, deleted the bar file, created bar file with different name as well as same name, deployed again the same error appears
2. Created bar in my toolkit and then tried to deploy to different broker it gives me the same error.
3. Created bar file from different system and deployed from my machine to linux broker, it worked. So I concluded it is some settings issue with the broker toolkit.
4. Uninstalled the toolkit from my machine, installed again, created bar and deployed still the problem persists.
Any help is appreciated.
I would also like to know where can I find the definition and functions available in maplang and is it required to be manualy added to the XML categories in the preferences?
also I did not explicitly add any parser like Xalan or Xerces, I'm assuming they are supplied with the default plug-ins. Please let me know if I have to configure the parser manualy though they are available with the plugins.
Thanks is advance. |
|
Back to top |
|
 |
syed_basha |
Posted: Tue May 05, 2009 6:06 pm Post subject: BIP2558E Undefined function - WMB Mapping |
|
|
Newbie
Joined: 05 May 2009 Posts: 7
|
While looking at the messages log file the below are captured
BIP4041E: Execution group 'default' received an invalid configuration message. See the following messages for details of the error. : WMBRD5BRK.1e0c44c2-2001-0000-0080-eb3f7a4a26a6: /build/S610_P/src/DataFlowEngine/ImbConfigurationNode.cpp: 433: ImbConfigurationNode::evaluate: ComIbmConfigurationNode: ConfigurationNode
BIP4001E: Syntax error in SQL statements in node 'AccountDetails.MF_AccDet.Mapping.ComIbmCompute'. : WMBRD5BRK.1e0c44c2-2001-0000-0080-eb3f7a4a26a6: /build/S610_P/src/DataFlowEngine/ImbDbInteractionNode.cpp: 267: ImbDatabaseInteractionNode::commit: ComIbmComputeNode: AccountDetails/MF_AccDet#FCMComposite_1_3.ComIbmMapping#FCMComposite_1_1
BIP2558E: (AccountDetails.IBM_WBIMB_MF_AccDet_Mapping.MAIN, 3.6) : Undefined function 'AccountDetails.MF_AccDet_Mapping'. : WMBRD5BRK.1e0c44c2-2001-0000-0080-eb3f7a4a26a6: /build/S610_P/src/DataFlowEngine/ImbRdl/ImbRdlCallableFnCall.cpp: 284: SqlCallableFunctionFnCall::resolve(): ComIbmComputeNode: AccountDetails/MF_AccDet#FCMComposite_1_3.ComIbmMapping#FCMComposite_1_1
I'm not using any SQL functions in the mapping. |
|
Back to top |
|
 |
fjb_saper |
Posted: Wed May 06, 2009 2:18 am Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
No but you might be calling an ESQL function or procedure with the name AccountDetails.MF_AccDet_Mapping. Are you sure that your flow contains all the references to broker schemas projects in the dependencies?
This looks to me like a deployment error where something is declared missing at runtime.
Have fun  _________________ MQ & Broker admin |
|
Back to top |
|
 |
syed_basha |
Posted: Wed May 06, 2009 3:20 pm Post subject: |
|
|
Newbie
Joined: 05 May 2009 Posts: 7
|
in AccountDetails.MF_AccDet_Mapping , "AccountDetails" is broker schema name and "MF_AccDet_Mapping" is the mapping file name. all the references are correctly set. |
|
Back to top |
|
 |
syed_basha |
Posted: Wed May 06, 2009 4:29 pm Post subject: |
|
|
Newbie
Joined: 05 May 2009 Posts: 7
|
I changed the mapping file to not to use any mapping functions like msgmap:occurrence(), then I'm able to build and deploy it from my toolkit. So as far as the references concerned I think they are correctly set but I feel some setting I need to do for using the mapping functions.
the condition expression seems like the below one, please let me know if there is any problem with this
<condition xsi:type="gplang:EqualExpression" text="msgmap:occurrence($source/s1:AcctProfileResponse/ns2:AcctProfileOutput/ns2:StatementAddress/ns2:AccountTitle) = 1"/> |
|
Back to top |
|
 |
fjb_saper |
Posted: Wed May 06, 2009 7:51 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
For your condition should that be (a= b) or (a==b) ?
And what happens if one of the members is null or not present on the input message?
Perhaps this would better be handled in a function guaranteed to return a boolean...  _________________ MQ & Broker admin |
|
Back to top |
|
 |
syed_basha |
Posted: Wed May 06, 2009 8:10 pm Post subject: |
|
|
Newbie
Joined: 05 May 2009 Posts: 7
|
in Message map while using condition statement (=) also works. I tried to remove msgmap:occurrence and use fn:exists, still continue having the same issue  |
|
Back to top |
|
 |
syed_basha |
Posted: Thu May 07, 2009 12:23 am Post subject: Resolved |
|
|
Newbie
Joined: 05 May 2009 Posts: 7
|
the problem is resolved now, Earlier in my system I had 6.0.2.0 version and I upgraded it to 6.0.3.0 with IFIX 03. I got the above said problem, I have uninstalled toolkit then deleted folders like c:\docs and Setting\<user id>\IBM and c:\docs and settings\<user id>\.eclipse folder.
restarted the system, to make sure eclipse works fine I have installed the eclipse platform 3.0 from MQ prereqs
Installed 6.1 toolkit followed by installed 6.0.3.0 followed by Ifix 03. I skipped to install 6.0.2.0 and now I'm able to deploy the bar file and send messages accross. Thanks for the help.
I dont know deleting the folders like IBM and .eclipse helpd me resolving this issue or skipping 6.0.2.0. Anyways I have learned manythings while trying to resolve this error. Thanks guys for all your support to me. |
|
Back to top |
|
 |
syed_basha |
Posted: Thu May 07, 2009 12:43 am Post subject: |
|
|
Newbie
Joined: 05 May 2009 Posts: 7
|
apologies, I have mentioned the Versions wrongly.
6.0.2.0 should read as 6.1.0.2, 6.0.3.0 should read as 6.1.3.0 |
|
Back to top |
|
 |
|