TIBCOSoftware / TIBCOSoftware/be-contribution
KinesisExample - Cannot invoke com.tibco.cep.runtime.channel.EventSerializer.getClass because the return value of com.tibco.cep.runtime.channel.DestinationConfig.getEventSerializer is null.
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 0
- Forks
- 10
- PR merge metrics
- No merged PRs in 30d
Description
Version Information
| Software | Version(s) |
|---|---|
| BusinessEvents | 6.4.0 |
| OS Type? | Windows |
| OS Version? | Win 11 Pro |
What is the expected behavior?
The BE engine should get started successfully.
What is the actual behavior?
The BE engine failed to start with NPE as described below:
2025 Sep 26 19:08:32:860 GMT +05 kcon DEBUG [main] - [runtime.session] Error performing initAll() java.lang.NullPointerException: Cannot invoke "com.tibco.cep.runtime.channel.EventSerializer.getClass()" because the return value of "com.tibco.cep.runtime.channel.DestinationConfig.getEventSerializer()" is null at com.tibco.be.custom.channel.framework.CustomChannel.initializeDestinations(CustomChannel.java:72) at com.tibco.be.custom.channel.framework.CustomChannel.<init>(CustomChannel.java:42) at com.tibco.be.custom.channel.BaseDriver.createChannel(BaseDriver.java:60) at com.tibco.cep.runtime.channel.impl.ChannelManagerImpl.registerChannel(SourceFile:121) at com.tibco.cep.runtime.channel.impl.ChannelManagerImpl.init(SourceFile:108) at com.tibco.cep.runtime.session.impl.RuleServiceProviderImpl.initChannels(SourceFile:1225) at com.tibco.cep.runtime.session.impl.RuleServiceProviderImpl.initAll(SourceFile:642) at com.tibco.cep.runtime.session.impl.RuleServiceProviderImpl.configure(SourceFile:285) at com.tibco.cep.container.standalone.BEMain.jumpStart(SourceFile:178) at com.tibco.cep.container.standalone.BEMain.main(SourceFile:73) 2025 Sep 26 19:08:32:869 GMT +05 kcon FATAL [main] - [container.standalone] Cannot invoke "com.tibco.cep.runtime.channel.EventSerializer.getClass()" because the return value of "com.tibco.cep.runtime.channel.DestinationConfig.getEventSerializer()" is null java.lang.NullPointerException: Cannot invoke "com.tibco.cep.runtime.channel.EventSerializer.getClass()" because the return value of "com.tibco.cep.runtime.channel.DestinationConfig.getEventSerializer()" is null at com.tibco.be.custom.channel.framework.CustomChannel.initializeDestinations(CustomChannel.java:72) at com.tibco.be.custom.channel.framework.CustomChannel.<init>(CustomChannel.java:42) at com.tibco.be.custom.channel.BaseDriver.createChannel(BaseDriver.java:60) at com.tibco.cep.runtime.channel.impl.ChannelManagerImpl.registerChannel(SourceFile:121) at com.tibco.cep.runtime.channel.impl.ChannelManagerImpl.init(SourceFile:108) at com.tibco.cep.runtime.session.impl.RuleServiceProviderImpl.initChannels(SourceFile:1225) at com.tibco.cep.runtime.session.impl.RuleServiceProviderImpl.initAll(SourceFile:642) at com.tibco.cep.runtime.session.impl.RuleServiceProviderImpl.configure(SourceFile:285) at com.tibco.cep.container.standalone.BEMain.jumpStart(SourceFile:178) at com.tibco.cep.container.standalone.BEMain.main(SourceFile:73)
Please provide a unit test that demonstrates the bug.
- Create kinesis jar as described in https://github.com/TIBCOSoftware/be-contribution
- Import the example project Kinesis from the given location : https://github.com/TIBCOSoftware/be-samples/tree/main/KinesisChannel
- Configure the project with AWS account details.
- Build EAR file and start consumer engine as mentioned in readme of example.
The BE engine failed to start with NPE as described above.
Other notes on how to reproduce the issue?
Please provide log files.
Attached project and log for the reference.
KinesisChannel.zip
Kinesis-consumer.log
kinesis.zip
Any possible solutions?
Can you identify the location in the source code where the problem exists?
If the bug is confirmed, would you be willing to submit a PR?
Yes / No (Help can be provided if you need assistance submitting a PR)
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with CustomChannel.initializeDestinations at CustomChannel.java:72 and reproduce the failure using the KinesisChannel sample, the generated Kinesis JAR, and the attached logs. Check how the destination configuration is built and why its event serializer is null. Done means the consumer engine starts successfully without this NPE and a unit test demonstrates the failure and fix.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- aws, java
- Domain
- backend, stream-processing
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100