Skip to Content
avatar image
Former Member

IWDConfirmationDialog Exceptions and WDCreationFailedException on handler

I have created a Confirmation dialog with the following code. It seems to run fine on my local J2EE Server through many test popup cycles but when the application using this method is deployed in the portal envirnonment something happens after a while and I continually get nasty <b>Null Pointer Execptions</b> or the <b>WDCreationFailedException</b> below for for the dialog box No action which simply calls destroy method on the window handle to dispose of it. Any ideas what is going on or how to correct this problem?

private void popupConfirmationMsgWin(
		String popupTitle,
		ArrayList messages) {

		StringBuffer usrMsgBuf = new StringBuffer();
		for (int i = 0; i < messages.size(); i++) {
			usrMsgBuf.append(messages.get(i));
			usrMsgBuf.append("n");
		}

		String ok =
			wdThis.wdGetPortfolioMsgComponentInterface().getMessage(
				"ORDOK",
				null);

		
		IWDControllerInfo controllerInfo =
			wdControllerAPI.getViewInfo().getViewController();
		IWDConfirmationDialog dialog =
			wdComponentAPI.getWindowManager().createConfirmationWindow(
				usrMsgBuf.toString(),
				controllerInfo.findInEventHandlers(
					"onActionDestroyPopupDialogWin"),
				ok);
		dialog.setTitle(popupTitle);

		_CurrentCtx.setPopupMsgDialogueWindow(dialog);

		dialog.open();

	}

// WDCreationFailedException

<b>com.sap.tc.webdynpro.services.exceptions.WDCreationFailedException: add of choice (label: No)failed! (evenhandler: null</b>

at com.sap.tc.webdynpro.clientserver.window.ConfirmationDialogDelegate.addChoice(ConfirmationDialogDelegate.java:88)

at com.sap.tc.webdynpro.clientserver.window.ConfirmationDialogDelegate.addChoice(ConfirmationDialogDelegate.java:97)

at com.chep.portfolio.dynpro.DashboardView.onActionAcceptPreNote(DashboardView.java:1958)

at com.chep.portfolio.dynpro.wdp.InternalDashboardView.wdInvokeEventHandler(InternalDashboardView.java:1631)

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

... 25 more

// Null Pointer Exception when it trys to create the dialog.

<b>java.lang.NullPointerException</b>

at com.sap.tc.webdynpro.clientserver.window.ConfirmationDialogDelegate.<init>(ConfirmationDialogDelegate.java:58)

at com.sap.tc.webdynpro.clientserver.cal.ClientComponent.createConfirmationWindow(ClientComponent.java:927)

at com.chep.portfolio.dynpro.DashboardView.popupConfirmationMsgWin(DashboardView.java:4215)

at com.chep.portfolio.dynpro.DashboardView.onActionSearch(DashboardView.java:3665)

at com.chep.portfolio.dynpro.wdp.InternalDashboardView.wdInvokeEventHandler(InternalDashboardView.java:2030)

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.task.WebDynproMainTask.handleAction(WebDynproMainTask.java:101)

at com.sap.tc.webdynpro.clientserver.task.WebDynproMainTask.handleActionEvent(WebDynproMainTask.java:304)

at com.sap.tc.webdynpro.clientserver.task.WebDynproMainTask.execute(WebDynproMainTask.java:659)

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

at com.sap.tc.webdynpro.clientserver.cal.ClientManager.doProcessing(ClientManager.java:251)

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

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)

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

1 Answer

  • avatar image
    Former Member
    May 30, 2007 at 09:31 PM

    After researching the error we (Dynpro Build Manager & I) have confirmed the that some other WebDynpro project was using the same package name as mine and when that dynpro application gets deployed on the Portal a package naming conflict occures causing the next call to find the event handler, <b>IWDControllerInfo.findInEventHandlers("onActionDestroyPopupDialogWin")</b>, to return null, susequently the CofirmationDialog box creation fails.

    Its an example of why it is important to register/reserver your package names in the landscape.

    Add comment
    10|10000 characters needed characters exceeded