on 12-30-2005 10:03 AM
Hello Everybody,
I have developed one DC in which I have created one RFC model and I have written all the methods related to it.
Now, I am using this DC in another DC and calling methods to call those RFC models.
This application was working perfectly fine. But, after the changes in structure of RFC and re-importing RFC model, I got following error in my DC in which i am using RFC DC.
com.sap.tc.webdynpro.services.exceptions.WDRuntimeException: Interface Controller does not exist for Component Instance R3Comp in Component Usage Dcr3_Comp
at com.sap.tc.webdynpro.progmodel.components.ComponentUsage.getInterfaceControllerInternal(ComponentUsage.java:345)
at com.sap.tc.webdynpro.progmodel.components.ComponentUsage.getControllerInternal(ComponentUsage.java:381)
at com.sap.tc.webdynpro.progmodel.controller.Component.getMappableContext(Component.java:408)
at com.sap.tc.webdynpro.progmodel.context.MappingInfo.getContext(MappingInfo.java:55)
at com.sap.tc.webdynpro.progmodel.context.MappingInfo.isComplete(MappingInfo.java:93)
at com.sap.tc.webdynpro.progmodel.context.NodeInfo.getStructureType(NodeInfo.java:292)
at com.sap.tc.webdynpro.progmodel.context.NodeInfo.getStructureType(NodeInfo.java:292)
at com.sap.tc.webdynpro.progmodel.context.AttributeInfo.initNodeMapping(AttributeInfo.java:569)
at com.sap.tc.webdynpro.progmodel.context.AttributeInfo.init(AttributeInfo.java:455)
at com.sap.tc.webdynpro.progmodel.context.NodeInfo.initAttributes(NodeInfo.java:771)
at com.sap.tc.webdynpro.progmodel.context.NodeInfo.initAfterCompletedMapping(NodeInfo.java:777)
at com.sap.tc.webdynpro.progmodel.context.MappingInfo.initAfterCompletedMapping(MappingInfo.java:160)
at com.sap.tc.webdynpro.progmodel.context.MappingInfo.initMapping(MappingInfo.java:153)
at com.sap.tc.webdynpro.progmodel.context.MappingInfo.init(MappingInfo.java:143)
at com.sap.tc.webdynpro.progmodel.context.NodeInfo.init(NodeInfo.java:746)
at com.sap.tc.webdynpro.progmodel.context.NodeInfo.init(NodeInfo.java:761)
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.clientserver.cal.ClientComponent.init(ClientComponent.java:346)
at com.sap.tc.webdynpro.clientserver.cal.ClientApplication.init(ClientApplication.java:351)
at com.sap.tc.webdynpro.clientserver.task.WebDynproMainTask.execute(WebDynproMainTask.java:608)
at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:59)
at com.sap.tc.webdynpro.clientserver.cal.ClientManager.doProcessing(ClientManager.java:252)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doWebDynproProcessing(DispatcherServlet.java:154)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:116)
at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doGet(DispatcherServlet.java:48)
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:392)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:345)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:323)
at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:865)
at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:240)
at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)
at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:148)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:37)
at com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner.run(UnorderedChannel.java:71)
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:95)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:159)
I have sync my sources and also sync used dcs for RFC DC.
I have deployed this RFC dc on server. I have restarted my server also. But, still it is giving this problem.
What should be the reason behind this?
Thanks in Advance,
Bhavik
Hi Bhavik,
This is a common problem in Webdynpro.
have you written the code in interface controllers wDoInit method.like this?
if (wdThis.wdGetAComponentUsage().hasActiveComponent()) {
wdThis.wdGetAComponentUsage().deleteComponent();
}
wdThis.wdGetAComponentUsage().createComponent();
If you have already written,you do rebuild again.close SAPIde and open again.
Regards,
Karthick K Eswaran
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Bhavik,
This is a common problem in Webdynpro.
have you written the code in interface controllers wDoInit method.like this?
if (wdThis.wdGetAComponentUsage().hasActiveComponent()) {
wdThis.wdGetAComponentUsage().deleteComponent();
}
wdThis.wdGetAComponentUsage().createComponent();
If you have already written,you do rebuild again.close SAPIde and open again.
Hi Karthi,
No I haven't any code in the interface controller wdinit method.
Do I have to add this code? What it does?
And what the steps you have suggested is already done. And It was working perfectly before also.
But, now it is giving this problem.
Regards,
Bhavik
Hello,
Check if the corresponding jar file of component 1 is available in component 2 (assuming that component 2 uses component 1) in the path
<project>\_comp\gen\default\public. If not then build both the DCs.
If you are accessing the DCs fronm DTR try "Remove DC from Client" and do "Sync sources".
Also open the data modeler of the respective component and check if the Interface controller exists for the component listed in the first line of your stak trace.
Please rewars appropriate points.
Bala
Hi Bala,
I am accessing DCs from DTR.
I have dc_r3 component which has RFC model and related methods.
I have another dc named dc_myreq which uses dc_r3.
I found jar files for public part in dc_r3 component.
It also shows Interface controller in Data modeler.
What should be the other reason?
Regards,
Bhavik
Hello
I am not sure but did you try undeploying the previous components from the visual admin. Go to deploy-->webdynpro and than remove or undeploy dc's.
Also you told that you reimported the RFC, were any structures attributes removed. i.e If orginal stuct1 had a & b as attributes. The modified struct1 just has a.
This some times creates a problem. It happened to me once so I had delete the RFC model and start from scartch again.
Thanks,
Yasu
User | Count |
---|---|
84 | |
10 | |
10 | |
9 | |
7 | |
7 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.