cancel
Showing results for 
Search instead for 
Did you mean: 

web dynpro exception after re-import the model

Former Member
0 Kudos

Hello Friends,

I am facing one issue and that is: in model I have changed one filed. ( lets say the field custom_id is replaced with kunnr )

I have deleted the field custom_id and reimport the model, ( the new field kunnr comes in the model propterties )

Then when i try to deploy the application it has given me run time error for customid, therefore i have deleted the customid from contexts as well.

Now when I try to deply the application I am getting following exception:

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

com.sap.tc.webdynpro.progmodel.context.ContextConfigurationException: DataNodeInfo(DownloadController.Z_Portal_Download_File_Input.Output.Zmatb): structure field Custom_Id not found

Full exception:

com.sap.tc.webdynpro.progmodel.context.ContextConfigurationException: DataNodeInfo(DownloadController.Z_Portal_Download_File_Input.Output.Zmatb): structure field Custom_Id not found

at com.sap.tc.webdynpro.progmodel.context.DataAttributeInfo.init(DataAttributeInfo.java:299)

at com.sap.tc.webdynpro.progmodel.context.NodeInfo.initUnmappedAttributes(NodeInfo.java:687)

at com.sap.tc.webdynpro.progmodel.context.DataNodeInfo.doInit(DataNodeInfo.java:238)

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.NodeInfo.init(NodeInfo.java:674)

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.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.bind(ViewManager.java:555)

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

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.doApplicationProcessingPortal(ClientSession.java:779)

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

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.clientserver.session.core.ApplicationHandle.doProcessing(ApplicationHandle.java:73)

at com.sap.tc.webdynpro.portal.pb.impl.AbstractApplicationProxy.sendDataAndProcessActionInternal(AbstractApplicationProxy.java:860)

at com.sap.tc.webdynpro.portal.pb.impl.AbstractApplicationProxy.create(AbstractApplicationProxy.java:220)

at com.sap.portal.pb.PageBuilder.updateApplications(PageBuilder.java:1244)

at com.sap.portal.pb.PageBuilder.createPage(PageBuilder.java:354)

at com.sap.portal.pb.PageBuilder.init(PageBuilder.java:547)

at com.sap.portal.pb.PageBuilder.wdDoRefresh(PageBuilder.java:591)

at com.sap.portal.pb.PageBuilder$1.doPhase(PageBuilder.java:822)

at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processPhaseListener(WindowPhaseModel.java:755)

at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.doPortalDispatch(WindowPhaseModel.java:717)

at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processRequest(WindowPhaseModel.java:136)

at com.sap.tc.webdynpro.clientserver.window.WebDynproWindow.processRequest(WebDynproWindow.java:335)

at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:143)

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

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

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.doPost(DispatcherServlet.java:53)

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

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

Hey Shah,

This is simple whenever any changes happend in the back end functionality what ever chages do the reimporting the FnModule and restart the J2ee engine and then u need to do the mapping chages what u required then u need to deploy and run it will effect automatically.

Thanks,

Lohi.

Former Member
0 Kudos

Hi,

I find it a bad thing to have to restart the J2EE Engine. When it's not production ok but when you are in PROD, it's not that easy to restart the J2EE Engine, regarding the other Web Dynpro applications running.

Message was edited by:

Bvd-It Services

Former Member
0 Kudos

Hi ,

I am facing one issue,

Actually for one field I have changed the data-element in back-end system. now in web dynpro in result table, it shows me for this field two column, ( with old and new name ) and same result....

Any idea, what I can do here, I have done number of times re-import model, redeployed, restart SDM, but same effect !

any help is really appreicated....

Regards,

Former Member
0 Kudos

Did you restart J2EE server?

Former Member
0 Kudos

I restarted sdm ? is it not enough ?

Former Member
0 Kudos

Well I am not sure about SDM, but after reimporting Netweaver prompts for restarting J2EE server.

Former Member
0 Kudos

and i thought, sdm would be enough, okey I will restart the whole server, and will see

Former Member
0 Kudos

I have restarted the J2EE engine, but still it shows both these two fields, ( one which was before and one after changing the data element of this same field )...

Any idea....

Regards,

Former Member
0 Kudos

check in mapping of context variables between model and custom controllers, custom controllers and views.

Remove context variables which you dont want.

Former Member
0 Kudos

Hi Vaibjav,

I checked this all, all mapping id done with 37 fields, but in table after running it shows 38 fieds, and that field is double only with same data ....

Mattias
Active Participant
0 Kudos

Shah,

After adding or renaming an attribute in the RFM the J2EE server needs to be restartarted after you have deployed your new application.

Basically the aRFC Connection caches the metadata of the model, even though it's called adaptive, and thus new fields aren't available until the cache has been cleared. I.E the server restarted.

If my memory serves me right it is possible to add a new structure without restarting, and it is also possible to delete attributes. The cache still thinks they're there, but since the new model doesn't use the attribute it's not posing a problem.

Regards

Mattias

Former Member
0 Kudos

Hello,

thanks for your reply, I have somehow reimported, and redployed and looks a bit better now, atleast it does not show me the exception, but the data in result table in not at right places, its all mixed.....

Regards,

Former Member
0 Kudos

Restart the server if not done and check the mapping and remove or add the contexts which you want to use.

Former Member
0 Kudos

Hello Shah

After re-import of your WD model, the studio must ve prompted you to restart your J2EE server. Did you do that ? If not, please do restart your server, and then again deploy and run your application.

Also do check for Kanwaljeet's suggestion, for if theres any attribute in any of your controller's context that is not having model binding.

Regards

Kapil

Former Member
0 Kudos

Hi Shah,

Did u reimport the model succesfully. If yes, then delete the context attribute from the view controller and also the custom controller (if any). Refresh the entire project by using the context menu and then try running the application again. Also chk the elements that have been bound to this attribute for any refrences that are still attached to the attribute.