cancel
Showing results for 
Search instead for 
Did you mean: 

Error while Accessing RFC in java webdynpro

Former Member
0 Kudos

Hi Experts,

I am trying to call RFC in one of my project. THis module accepts a personnel number and returns his first name. I don't see any build error. but when I try to run it. It throws a java null pointer excpetion.

Did any one experience such error before. Please let me know if you have seen and know the solution.

==========================================

The initial exception that caused the request to fail, was:

at com.sap.tc.webdynpro.modelimpl.dynamicrfc.AiiModelClass.createNewBaseTypeDescriptor(AiiModelClass.java:256)

at com.sap.tc.webdynpro.modelimpl.dynamicrfc.AiiModelClass.descriptor(AiiModelClass.java:222)

at com.www.empverf.ZRFC_Sal_verf_Input.<init>(ZRFC_Sal_verf_Input.java:51)

at com.www.supempverf.ZRFC_Sal_verfCust.wdDoInit(ZRFC_Sal_verfCust.java:101)

at com.www.supempverf.wdp.InternalZRFC_Sal_verfCust.wdDoInit(InternalZRFC_Sal_verfCust.java:130)

java.lang.NullPointerException

at com.sap.tc.webdynpro.modelimpl.dynamicrfc.AiiModelClass.createNewBaseTypeDescriptor(AiiModelClass.java:256)

at com.sap.tc.webdynpro.modelimpl.dynamicrfc.AiiModelClass.descriptor(AiiModelClass.java:222)

at com.www.empverf.ZRFC_Sal_verf_Input.<init>(ZRFC_Sal_verf_Input.java:51)

at com.www.supempverf.ZRFC_Sal_verfCust.wdDoInit(ZRFC_Sal_verfCust.java:101)

at com.www.supempverf.wdp.InternalZRFC_Sal_verfCust.wdDoInit(InternalZRFC_Sal_verfCust.java:130)

at com.sap.tc.webdynpro.progmodel.generation.DelegatingCustomController.doInit(DelegatingCustomController.java:73)

at com.sap.tc.webdynpro.progmodel.controller.Controller.initController(Controller.java:215)

at com.sap.tc.webdynpro.progmodel.controller.Controller.init(Controller.java:200)

at com.sap.tc.webdynpro.progmodel.controller.Component.getCustomControllerInternal(Component.java:448)

at com.sap.tc.webdynpro.progmodel.controller.Component.getMappableContext(Component.java:386)

at com.sap.tc.webdynpro.progmodel.controller.Component.getMappableContext(Component.java:415)

at com.sap.tc.webdynpro.progmodel.context.MappingInfo.getDataNode(MappingInfo.java:79)

at com.sap.tc.webdynpro.progmodel.context.MappingInfo.initMapping(MappingInfo.java:121)

at com.sap.tc.webdynpro.progmodel.context.MappingInfo.init(MappingInfo.java:117)

at com.sap.tc.webdynpro.progmodel.context.MappedNodeInfo.doInit(MappedNodeInfo.java:212)

at com.sap.tc.webdynpro.progmodel.context.NodeInfo.init(NodeInfo.java:671)

at com.sap.tc.webdynpro.progmodel.context.NodeInfo.init(NodeInfo.java:674)

at com.sap.tc.webdynpro.progmodel.context.Context.init(Context.java:40)

at com.sap.tc.webdynpro.progmodel.controller.Controller.init(Controller.java:199)

at com.sap.tc.webdynpro.progmodel.view.ViewManager.getView(ViewManager.java:709)

at com.sap.tc.webdynpro.progmodel.view.ViewManager.bindRoot(ViewManager.java:579)

at com.sap.tc.webdynpro.progmodel.view.ViewManager.init(ViewManager.java:155)

at com.sap.tc.webdynpro.clientserver.window.WebDynproWindow.doOpen(WebDynproWindow.java:295)

at com.sap.tc.webdynpro.clientserver.window.ApplicationWindow.show(ApplicationWindow.java:183)

at com.sap.tc.webdynpro.clientserver.window.ApplicationWindow.open(ApplicationWindow.java:178)

at com.sap.tc.webdynpro.clientserver.cal.ClientApplication.init(ClientApplication.java:364)

at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.initApplication(ApplicationSession.java:748)

at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doProcessing(ApplicationSession.java:283)

at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessingStandalone(ClientSession.java:759)

at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessing(ClientSession.java:712)

at com.sap.tc.webdynpro.clientserver.session.ClientSession.doProcessing(ClientSession.java:261)

at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:149)

at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:62)

at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doGet(DispatcherServlet.java:46)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)

at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)

at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)

at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:387)

at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:365)

at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:944)

at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:266)

at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)

at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:175)

at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)

at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)

at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)

at java.security.AccessController.doPrivileged(Native Method)

at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100)

at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)

Accepted Solutions (0)

Answers (5)

Answers (5)

Former Member
0 Kudos

Have you tried the obvious - restarting the J2EE engine?

Former Member
0 Kudos

NO, I havent restarted the j2ee engine.

Former Member
0 Kudos

Hi Raj,

What Anjana said I think might be correct..It could be the problem with the Export values defined for the RFM. Try this: if possible, make a copy of the FM and strip all the Export params on the copied FM to one or two. See if it works. Alternatively you can enable debugger on R3 and step through to see if there is a problem on the back-end or not.

Good luck!

Regards,

N.

Former Member
0 Kudos

Hi Raj,

It looks like problem is with excuting bapi, your error log looks like you are able call bapi, while calling bapi throwing some exception.

Regards

Praveen

Former Member
0 Kudos

Hi Tummuru ,

Here is what you asked for.

Hi Anjana,

Can you please elaborate your reply.

The lines of code you asked me to look is

public void wdDoInit()

{

wdContext.nodeZRFC_Sal_verf_Input().bind(new ZRFC_Sal_verf_Input());

}

public void wdDoExit()

{

}

public void executeZRFC_Sal_verf_Input( )

{

IWDMessageManager manager = wdComponentAPI.getMessageManager();

try

{

wdContext.currentZRFC_Sal_verf_InputElement().modelObject().execute();

wdContext.nodeOutput().invalidate();

}

catch(WDDynamicRFCExecuteException e)

{

manager.reportException(e.getMessage(), false);

}

Former Member
0 Kudos

can you provide the code as to how you are calling the RFC.

Former Member
0 Kudos

Hi Raj,

Can u check the following line numbers in your code?

<b>Line Number - 51 :</b> ZRFC_Sal_verf_Input.java:51 or

<b>Line Number - 101 :</b>ZRFC_Sal_verfCust.java:101 or

<b>Line Number - 130 :</b>InternalZRFC_Sal_verfCust.java:130

Some variables may not have been initialized and you could be invoking some method calls on the null variable.

Hope it helps.

Anjana R.