cancel
Showing results for 
Search instead for 
Did you mean: 

Parameter windowInfo must not be null.

Former Member
0 Kudos

Hi

While i was deploying web dynpro application,iam getting this error.please anyone help me to sort this.

com.sap.tc.webdynpro.services.exceptions.WDRuntimeException: Parameter windowInfo must not be null.

at com.sap.tc.webdynpro.clientserver.cal.ClientComponent.createModalWindow(ClientComponent.java:1020)

at com.sap.popapp.PopAppView.onActionCreatePopUp(PopAppView.java:146)

at com.sap.popapp.wdp.InternalPopAppView.wdInvokeEventHandler(InternalPopAppView.java:148)

at com.sap.tc.webdynpro.progmodel.generation.DelegatingView.invokeEventHandler(DelegatingView.java:87)

at com.sap.tc.webdynpro.progmodel.controller.Action.fire(Action.java:67)

at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.doHandleActionEvent(WindowPhaseModel.java:420)

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

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:299)

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

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

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

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

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:390)

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

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

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

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

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

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: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)

Regards

Sushma

Accepted Solutions (0)

Answers (4)

Answers (4)

Former Member
0 Kudos

tx

Former Member
0 Kudos
Former Member
0 Kudos

Hi,

Iam doing this example only.But iam getting this error.

PLease help me.

Regards

Sushma

Former Member
0 Kudos

Hi,

Check the cardinality and selection properties of the node.

Also check the bindings.

John

Former Member
0 Kudos

Hi

I given cardinalityy and selection 1-1.Now i changed to 1-n.

But its giving the output for both.

still iam getting the exception...

Regards

Sushma

Former Member
0 Kudos

Hi,

Set the Cardinality and selection as 1-1.

Also Check this code.. r u missing any thing..?

IWDWindowInfo windowInfo = (IWDWindowInfo)wdComponentAPI.getComponentInfo().findInWindows("Name");

IWDWindow window = wdComponentAPI.getWindowManager().createModalWindow(windowInfo);

window.setWindowPosition (300, 150);

window.show();

wdContext.currentPopupNodeElement().setPopupAttr(window);

Make sure that u r setting PopAttr value(Last line code) as window

Hope this may help u.

John

Former Member
0 Kudos

Hi

I checked the Coding also....every thing is fine.

Please telll me is there any need to change in the Close PopUp action,,,,,what i mentioned above.

Regards

Sushma

Former Member
0 Kudos

>

> Hi

>

>

> I checked the Coding also....every thing is fine.

>

> Please telll me is there any need to change in the Close PopUp action,,,,,what i mentioned above.

>

>

>

> Regards

> Sushma

If you are really serious about fixing this issue

Try to check the followig

cardinality of the node , make sure that their is a valid element under popupnode.

where you have set the attribute which contiains the window handle.

Regards

Ayyapparaj

sanyev
Active Participant
0 Kudos

Hi Sushma,

Move the PopUpAttribute directly under context.

while storing the window use this code

IWDWindowInfo windowInfo = (IWDWindowInfo)wdComponentAPI.getComponentInfo().findInWindows("PopWin"); 
IWDWindow window = wdComponentAPI.getWindowManager().createModalWindow(windowInfo); 
window.show(); 
wdContext.currentContextElement().setPopupAttribute(window);

For closing the window use the following code.

IWDWindow window = wdContext.currentContextElement().getPopUpAttribute();
window.hide();

Regards,

Sanyev

Former Member
0 Kudos

Hi,

I created 2 windows here.PopApp and PopWin......

Here output ios coming.By clicking popup button in PopApp Window it has to show PopWin Window.

For me its showing PopApp Window only.

Please help me.

You have to give the windowname of "PopWIn" as parameter to the following code

IWDWindowInfo windowInfo = (IWDWindowInfo)wdComponentAPI.getComponentInfo().findInWindows("PopWin");

Regards

Ayyapparaj

Former Member
0 Kudos

Hi,

Hope this will help u

private void openExcelLinkPopup() {

excelLinkWindow =

wdComponentAPI.getWindowManager().createModalWindow(

wdComponentAPI.getComponentInfo().findInWindows("Name"));

excelLinkWindow.setWindowPosition(WDWindowPos.CENTER);

excelLinkWindow.open();

}

private IWDWindow excelLinkWindow;

OR

Try this

IWDWindowInfo windowInfo = (IWDWindowInfo)wdComponentAPI.getComponentInfo().findInWindows("Name");

window = wdComponentAPI.getWindowManager().createWindow( windowInfo, true);

window.setWindowPosition(125,165);

window.setWindowSize(300,240);

window.open();

//@@begin others

IWDWindow window;

//@@end

Window name should be correct

John

Former Member
0 Kudos

Hi

I came to window name i given wrong in that application.But now iam getting

while clicking PopUp it is taking main window only.Its not taking PopUp window.

Pleae tell me where i went wrong.

Regards

Sushma

Former Member
0 Kudos

Hi,

For this u have to create a new window in by right clicking the Windows in u r project.

Then embed an ivew with this window which u can show as a popup

Then use this window name as the parameter of u r code.

hope this will help u.

John

Former Member
0 Kudos

Hi

I created 2 windows here.PopApp and PopWin......

Here output ios coming.By clicking popup button in PopApp Window it has to show PopWin Window.

For me its showing PopApp Window only.

Please help me.

Regards

Sushma

Former Member
0 Kudos

Hi,

Create a method in component controller and use the following code

//Method

{

IWDWindowInfo windowInfo = (IWDWindowInfo)wdComponentAPI.getComponentInfo().findInWindows("PopWin");

window = wdComponentAPI.getWindowManager().createWindow( windowInfo, true);

window.setWindowPosition(125,165);

window.setWindowSize(300,240);

window.open();

}

//end

//@@begin others

IWDWindow window;

//@@end

Call this method from u r action in PopApp view

John

Former Member
0 Kudos

Hi

While iwas Closing the Pop Up iam getting ......

java.lang.NullPointerException

at com.sap.pop.PopUpApp.ClosePopUp(PopUpApp.java:197)

at com.sap.pop.wdp.InternalPopUpApp.ClosePopUp(InternalPopUpApp.java:163)

at com.sap.pop.PopWinView.onActionClosePopUp(PopWinView.java:143)

at com.sap.pop.wdp.InternalPopWinView.wdInvokeEventHandler(InternalPopWinView.java:148)

at com.sap.tc.webdynpro.progmodel.generation.DelegatingView.invokeEventHandler(DelegatingView.java:87)

at com.sap.tc.webdynpro.progmodel.controller.Action.fire(Action.java:67)

at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.doHandleActionEvent(WindowPhaseModel.java:420)

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

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:299)

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

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

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

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

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:390)

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

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

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

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

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

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: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)

I written code like this

In WinView

public void onActionClosePopUp(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )

{

//@@begin onActionClosePopUp(ServerEvent)

wdThis.wdGetPopUpAppController().ClosePopUp();

//@@end

}

In Component Controller

public void ClosePopUp( )

{

//@@begin ClosePopUp()

IWDWindow window = wdContext.currentPopUpNodeElement().getPopUpAttribute();

window.hide();

window.destroyInstance();

//@@end

}

Former Member
0 Kudos

Hi,

I think u can use this following method

public void ClosePopUp( )

{

window.close();

}

I hope u declared window like this(Global declaration)

//@@begin others

IWDWindow window;

//@@end

John

Edited by: john paul on Feb 13, 2009 11:00 AM

Former Member
0 Kudos

Hi,

Did you store the handle of the window to the attribute that you are using in close popup?

Ex:

IWDWindow window = wdComponentAPI.getWindowManager().createWindow( windowInfo, true);

wdContext.currentPopUpNodeElement().setPopUpAttribute(window);

Regards

Ayyapparaj