cancel
Showing results for 
Search instead for 
Did you mean: 

Null Pointer Exception in HWC when using Personalisation Key as Input for Load Argument for MBO

Former Member
0 Kudos

Hey there,

I have a very strange Error message. I programmed a "Funktionsbaustein" in my SAP Backend. It takes the Customer Number KUNNR and gives me back a transaktion history with some financial data. I can create, delyoy and test an MBO and I recieve values from the Backend. But when I call the findAll operation inside the HWC /Android Emulator) I get the follwoing Exception:

A Personalisation Key is Mapped to a Key that point to an Edit Box. The App did almost the same as the Flight List example from the Sybase Doku. I tried every solution that came to my mind like, set every possible default value, make the Personalisation Key nullable or not nullable, the same with the attribute mapping of the MBO, but nothing works.

Per Definition the KUNNR is nullable and I cannot change this. But I have no Idea if that is the reason for this Error.

That's the Error Dump from the SCC:

2012-11-01 14:18:21.996  Subsystem=Error  Application ID=HWC, Application Connection ID=Simulator92ee4434-97e6-4e6c-bfa7-8c40fc01e5eb__HWC, User=supAdmin@admin, Correlation ID=, Package=kundenstammdaten:1.0, MBO=Kundenfinanzdaten, Operation=, Thread ID=4187, Node ID=tdccecs1p, Error=java.lang.RuntimeException was thrown by transaction com.sybase.djc.transaction.TransactionContext.*AnonymousTransaction*\njava.lang.RuntimeException: Failed to execute JCA operation

          at com.sybase.vader.da.jca.JcaInteractionOperation.execute(JcaInteractionOperation.java:182)

          at com.sybase.vader.statistics.MonitoringOperation.execute(MonitoringOperation.java:72)

          at com.sybase.vader.service.interaction.BranchingInteractionOperation.getRootRecord(BranchingInteractionOperation.java:65)

          at com.sybase.vader.service.interaction.BranchingInteractionOperation.execute(BranchingInteractionOperation.java:41)

          at com.sybase.vader.core.vdb.interaction.InteractionQueryOperation.executeQuery(InteractionQueryOperation.java:53)

          at com.sybase.vader.cache.VTFindAllQueryOperation.executeQuery(VTFindAllQueryOperation.java:20)

          at com.sybase.vader.cache.PKMergeProcessor.executeCurrentQuery(PKMergeProcessor.java:308)

          at com.sybase.vader.cache.PKMergeProcessor.actualAccumulateDeltas(PKMergeProcessor.java:385)

          at com.sybase.vader.cache.PKMergeProcessor.accumulateDeltas(PKMergeProcessor.java:445)

          at com.sybase.vader.cache.PKMergeProcessor.accumulateDeltas(PKMergeProcessor.java:738)

          at com.sybase.vader.cache.MonitoringMergeProcessor.accumulateDeltas(MonitoringMergeProcessor.java:90)

          at com.sybase.vader.cache.SimpleRefreshManager.accumulateDeltas(SimpleRefreshManager.java:1114)

          at com.sybase.vader.cache.SimpleRefreshManager.refreshLoadGroup(SimpleRefreshManager.java:926)

          at com.sybase.vader.cache.SimpleRefreshManager.refreshLoadGroups(SimpleRefreshManager.java:894)

          at com.sybase.vader.cache.SimpleRefreshManager.access$600(SimpleRefreshManager.java:32)

          at com.sybase.vader.cache.SimpleRefreshManager$2.invoke(SimpleRefreshManager.java:454)

          at com.sybase.vader.djc.environment.MmsDjcTransactionManager.internalInvoke(MmsDjcTransactionManager.java:52)

          at com.sybase.vader.djc.environment.MmsDjcTransactionManager.access$000(MmsDjcTransactionManager.java:13)

          at com.sybase.vader.djc.environment.MmsDjcTransactionManager$1.invoke(MmsDjcTransactionManager.java:28)

          at com.sybase.djc.transaction.TransactionManager.invokeRequiresNew(TransactionManager.java:845)

          at com.sybase.djc.transaction.TransactionManager.invokeRequiresNew(TransactionManager.java:747)

          at com.sybase.vader.djc.environment.MmsDjcTransactionManager.invokeRequiresNew(MmsDjcTransactionManager.java:31)

          at com.sybase.vader.cache.SimpleRefreshManager.internalRefreshAsNeeded(SimpleRefreshManager.java:495)

          at sun.reflect.GeneratedMethodAccessor394.invoke(Unknown Source)

          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

          at java.lang.reflect.Method.invoke(Method.java:597)

          at com.sybase.vader.cache.CacheUtil.invokeWithDeadlockRetry(CacheUtil.java:557)

          at com.sybase.vader.cache.SimpleRefreshManager.invokeWithDeadlockRetry(SimpleRefreshManager.java:1315)

          at com.sybase.vader.cache.SimpleRefreshManager.refreshAsNeeded(SimpleRefreshManager.java:378)

          at com.sybase.vader.cache.SimpleRefreshManager.refreshAsNeeded(SimpleRefreshManager.java:1242)

          at com.sybase.vader.cache.CacheStatisticsRefreshManager.refreshAsNeeded(CacheStatisticsRefreshManager.java:204)

          at com.sybase.vader.cache.CompositeRefreshManager.refreshAsNeeded(CompositeRefreshManager.java:138)

          at com.sybase.vader.mms.DataServiceImpl.beforeDownload(DataServiceImpl.java:523)

          at Kundenstammdaten.server.Kundenfinanzdaten.searchHandler(Kundenfinanzdaten.java:1593)

          at Kundenstammdaten.server.intrnl.Kundenfinanzdaten_ML.onMessage(Kundenfinanzdaten_ML.java:25)

          at Kundenstammdaten.server.KundenstammdatenDB.dispatchReceivedMessage(KundenstammdatenDB.java:176)

          at Kundenstammdaten.server.intrnl.KundenstammdatenDB_ML.onMessage(KundenstammdatenDB_ML.java:13)

          at com.sybase.sup.server.mbs.MessageReceiver.processMessage(MessageReceiver.java:633)

          at com.sybase.sup.server.mbs.MboRequestHandler.execute(MboRequestHandler.java:86)

          at com.sybase.sup.server.msgchannel.internal.MessageChannelInternal.dispatch(MessageChannelInternal.java:102)

          at com.sybase.sup.server.msgchannel.internal.MessageChannelInternal_DJC.access$001(MessageChannelInternal_DJC.java:4)

          at com.sybase.sup.server.msgchannel.internal.MessageChannelInternal_DJC$1.invoke(MessageChannelInternal_DJC.java:25)

          at com.sybase.djc.transaction.TransactionManager.invokeRequiresNew(TransactionManager.java:845)

          at com.sybase.djc.transaction.TransactionManager.invokeRequiresNew(TransactionManager.java:747)

          at com.sybase.sup.server.msgchannel.internal.MessageChannelInternal_DJC.dispatch(MessageChannelInternal_DJC.java:39)

          at com.sybase.sup.server.msgchannel.internal.InboundMoIIOPTransportImpl.process(InboundMoIIOPTransportImpl.java:127)

          at com.sybase.sup.server.msgchannel.internal.InboundMoIIOPTransportImpl.execute(InboundMoIIOPTransportImpl.java:70)

          at com.sybase.sup.server.msgchannel.internal.InboundMoIIOPTransportImpl_DJC.$invoke(InboundMoIIOPTransportImpl_DJC.java:100)

          at com.sybase.djc.rmi.iiop.server.MessageHandler.processRequest(MessageHandler.java:798)

          at com.sybase.djc.rmi.iiop.server.MessageHandler.run(MessageHandler.java:310)

          at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)

          at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)

          at java.lang.Thread.run(Thread.java:662)

Caused by: java.lang.NullPointerException

          at com.sybase.vader.jca.sap3.connector.cci.SapFunctionModuleDynamicMetadataMappedRecord.put(SapFunctionModuleDynamicMetadataMappedRecord.java:365)

          at com.sybase.vader.jca.sap3.connector.cci.SapRootInteraction.execute(SapRootInteraction.java:161)

          at com.sybase.vader.da.jca.JcaInteractionOperation.execute(JcaInteractionOperation.java:154)

          ... 52 more

I'm thankful for every help with this.

Greetings David

View Entire Topic
david_brandow
Contributor
0 Kudos

Its possible someone from the SUP server team, specifically the DS team, will recognize this error, but unfortunately I don't. Based on the way that is manifesting, I don't imagine we'll be able to diagnose it without substantially more information, such as the logs and so forth. Your best bet, frankly, is to open up an OSS message, or something similar, and have us help you through that mechanism.