cancel
Showing results for 
Search instead for 
Did you mean: 

refreshing/reloading web dynpro application

Former Member
0 Kudos

Hi,

Is there any way of refreshing/reloading entire web dynpro application apart from exit plug?

When I try to use exit plug, I get error "Exit-Plug must no be triggered with an URL when running in portal. Use portal navigation instead to navigate to another application!"

When I use portal navigation nothing happens, no error , but no result also.May be because I am accessing this application as a URL iview from other web dynpro application, so portal navigation is not working.

Regards,

Apurva

Accepted Solutions (0)

Answers (8)

Answers (8)

Former Member
0 Kudos

Hi Nikhil,

I am passing value in method navigate absolute as application parameter.But, receiving application B is receiving it as null, in test environment. Its working fine in development.

PCD path is same in development & test, as navigation to application B is taking place, only problem is with parameter value.

Hi Mandeep,

Yes, I thought about invalidating context by context.reset, but in that case I have to do it for all controllers & views. Also, I have to call wdDoInit method of all controllers & views.

As view methods are private, this becomes very tedious job.

Regards,

Apurva

nikhil_bose
Active Contributor
0 Kudos

did you configure ivew property: parameters to dynpro application?

you have to set the parameter name with the same as you specified in the start-up plug. It is case-sensitive

nikhil

Former Member
0 Kudos

Hi,

Application 1 is local project, Application 2 is DC.

Regards,

Apurva

Former Member
0 Kudos

Hi,

I will explain scenario in more detail.

I have application A calling application B. Application B is the one which I have to refresh.

For calling application B from application A, initially I used portal navigation. It worked fine in dev environment , but when I moved application for testing it failed. I don't know why, but in test environment, it was not able to capture parameter value passed from application A.

So, as a last option , I used specified URL of application B in application A and created new window with this URL. Its working fine. Now application B can accept parameter value passed from A even in test environment.

But now I have to refresh application B. How will I do that?

Regards,

Apurva

nikhil_bose
Active Contributor
0 Kudos

But in test environment, it was not able to capture parameter value passed from application A.

How parameters are passed? using context or url? Usually Portal Navigation should work and is the way if we need refresh or call another application in portal.

Could you see the page ID in test system is same? I think you are missing in something in test system.

nikhil

Former Member
0 Kudos

Hi

*But now I have to refresh application B. How will I do that? *

OnAction() You can invalidate contextNode used to populate data in Ui elements. This will be same action from where you are triggering Plugout(url);

Mandeep Virk

Former Member
0 Kudos

Hi,

Thank you all for your reply.

but as I mentioned earlier, I have tried both exit plug & portal navigation approach with no success:

"When I try to use exit plug, I get error "Exit-Plug must no be triggered with an URL when running in portal. Use portal navigation instead to navigate to another application!"

When I use portal navigation nothing happens, no error , but no result also.May be because I am accessing this application as a URL iview from other web dynpro application, so portal navigation is not working."

Regards,

Apurva

nikhil_bose
Active Contributor
0 Kudos

accessing this application as a URL iview from other web dynpro application

why don't you place URL iview in a page and access through the page?

nikhil

Former Member
0 Kudos

Hi

Is your Views are in separate development components?

Are you navigating thru outPlug of interface controller?

if yes then try to navigate by taking reference of other views. Suppose you have three views 1, 2,3.

From view1 fire plugOut() to View2 and in plugIn() of same view2 fire PlugOut() for View1.

Under plugIn() which are triggering outPlugs() for other views you can invalidate the contextNode().

Mandeep Virk

nikhil_bose
Active Contributor
0 Kudos

As suggested you can use portal navigation for refreshing the application.

e.g.:


WDPortalNavigation.navigateAbsolute(
"ROLES://portal_content/HCMForms/CoAdd/CoAdd",
WDPortalNavigationMode.SHOW_INPLACE, " ", " ",
WDPortalNavigationHistoryMode.NO_DUPLICATIONS,
" ", " ",  " ", false);

where ROLES://portal_content/HCMForms/CoAdd/CoAdd is the page ID having the dynpro application iview.

nikhil

Former Member
0 Kudos

Hi

Put this piece of code in wdDoInit() of view controller.


String appURL = null;
			try {
				WDDeployableObjectPart currentAppPart =
					wdThis
						.wdGetAPI()
						.getComponent()
						.getApplication()
						.getDeployableObjectPart();
					
				appURL = WDURLGenerator.getApplicationURL(currentAppPart);
					
			} catch (final WDURLException ex) {
				wdComponentAPI.getMessageManager().reportException(
					new WDNonFatalException(ex),
					false);
			}

Create PlugOut of type "EXIT" in your target interface controller and pass parameter say "URL" of type "String".

From target view controller call this wdFirePlugOut(URL);

you can pass value of URL from parent through context.

Mandeep Virk

Former Member
0 Kudos

Hi Did you call the exit plug URL in action implementation

Former Member
0 Kudos

Hi,

Any Help?

Regards,

Apurva