Forum Stats

  • 3,836,755 Users
  • 2,262,182 Discussions
  • 7,900,095 Comments

Discussions

wrong number or types of arguments in call to et

SivaBalan19
SivaBalan19 Member Posts: 49
edited Dec 19, 2014 5:08AM in Complex Event Processing

Hi,

Description : problem when connecting a relation database from EDN's processor.

  I want to enrich the incoming events with data available in relational database. As requested in the Oracle® CEP Administrator's Guide, i have created the

JDBC datasource in server's configuration file(config.xml). As it didnt throw me any error while staring the server, i assume, data source is fine.

I followed the below steps :

  1. created event types in my my application's context.xml(fields in my tables are given as property).

       <wlevs:event-type type-name="walletMonitoringEvent">

            <wlevs:properties>

                 <!-- data type of walletkey in db is varchar -->

                 <wlevs:property name="walletkey" type="char[]" length="20"/>

                 </wlevs:properties>

       </wlevs:event-type>

       2. created a "table" entry in context.xml

            <wlevs:table event-type="walletMonitoringEvent" id="walletMonitoring" data-source="walletDataSource"/>

       3. added the table source in my processor.

            <wlevs:channel id="inputChannel" event-type="WalletEvent">

                 <wlevs:listener ref="walletProcessor" />

            </wlevs:channel>

       4. Tried to relate the database in CQL processor.

            <wlevs:config xmlns:wlevs="http://www.bea.com/ns/wlevs/config/application" xmlns:jdbc="http://www.oracle.com/ns/ocep/config/jdbc">

                 <processor>

                      <name>walletProcessor</name>

                      <rules>

                      <query id="F1">

                      <![CDATA[

                        select i.walletkey,i.createdDate from inputChannel as i , walletMonitoring as w

                        where i.walletkey = w.walletkey 

                         ]]> 

                      </query>

                 </rules>

                 </processor>

                 </wlevs:config>

I am getting the below error in logs when i try to deploy the project :

<17 Nov, 2014 1:46:16 PM CET> <Emergency> <CQLServer> <BEA-000000> <CREATE QUERY F1 AS

   

    select i.walletkey,i.createdDate from inputChannel as i , walletMonitoring as w

    where >>i.walletkey = w.walletkey<<    

wrong number or types of arguments in call to et. Check the spelling of the registered function. Also confirm that its call is correct and its parameters are of correct datatypes.>

<17 Nov, 2014 1:46:16 PM CET> <Emergency> <CQLServerTrace> <BEA-000000> <oracle.cep.exceptions.CEPException: wrong number or types of arguments in call to et>

<17 Nov, 2014 1:46:16 PM CET> <Error> <CQLProcessor> <BEA-000000> <Failed to create statement [F1].

Invalid statement: "select i.walletkey,i.createdDate from inputChannel as i , walletMonitoring as w

    where >>i.walletkey = w.walletkey<<"

Description: wrong number or types of arguments in call to et

Cause: This error occurs when the named function call cannot be matched to any declaration for that function name. The function name might be misspelled, a parameter might have the wrong datatype, or the function declaration might be faulty

Action: Check the spelling of the registered function. Also confirm that its call is correct and its parameters are of correct datatypes.>

<17 Nov, 2014 1:46:16 PM CET> <Error> <Deployment> <BEA-2045013> <The application context "updateWallet" could not be started. The cause is:

Invalid statement: "select i.walletkey,i.createdDate from inputChannel as i , walletMonitoring as w

    where >>i.walletkey = w.walletkey<<"

Description: wrong number or types of arguments in call to et

Cause: This error occurs when the named function call cannot be matched to any declaration for that function name. The function name might be misspelled, a parameter might have the wrong datatype, or the function declaration might be faulty

Action: Check the spelling of the registered function. Also confirm that its call is correct and its parameters are of correct datatypes.>

Best Answer

Answers

This discussion has been closed.