Discussions
Categories
- 17.9K All Categories
- 3.4K Industry Applications
- 3.4K Intelligent Advisor
- 75 Insurance
- 537.7K On-Premises Infrastructure
- 138.7K Analytics Software
- 38.6K Application Development Software
- 6.1K Cloud Platform
- 109.6K Database Software
- 17.6K Enterprise Manager
- 8.8K Hardware
- 71.3K Infrastructure Software
- 105.4K Integration
- 41.6K Security Software
wrong number or types of arguments in call to et

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
-
Hi Siva,
It seems like the walletkey property of event type is defined incorrectly. Please try by defining the event as follows:
<wlevs:property name="walletkey" type="char" length="20"/>
Use "char" instead of "char[]".
Best Regards,
Sandeep
Answers
-
Can you please let us know which version of OEP you are using ?
-
Hi Sandeep,
I am using Oracle's CEP 11.1.
-
Hi Siva,
It seems like the walletkey property of event type is defined incorrectly. Please try by defining the event as follows:
<wlevs:property name="walletkey" type="char" length="20"/>
Use "char" instead of "char[]".
Best Regards,
Sandeep
-
Thanks,Sandeep. It worked. !