cancel
Showing results for 
Search instead for 
Did you mean: 

OBN Navigation

Former Member
0 Kudos

Hi Colleagues,

I have two webdynpro applications, the second application needs 4 parameters form the first application.Both the applications are Stored as PCD Objects.

i am trying to call the Second application from first application using OBN through the following code

public void openPreqWindow( java.lang.String cvnr, java.lang.String title, java.lang.String filename, java.lang.String file )  {
    
	  
		  
	  boolean isPost = false;

	  IOBNMetadata obnMetadata = null;
	  String bOTechnicalName = "com.sap.pct.a1s.service";
	  String bOOperation = "prerequisites";
	  
	  try 
	 	{		  
		  IPrincipal userPrincipal = (IPrincipal)WDClientUser.getLoggedInClientUser().getSAPUser();
		  userPrincipal.getDisplayName();		  
		  obnMetadata  = OBNFactory.getInstance().createOBNMetadata(bOTechnicalName, null, bOOperation, userPrincipal);
		  String navigationTarget = obnMetadata.getOBNUrl(false);
		  
		  String businessParameters  = obnMetadata.getOBNUrlParametersString();
		  wdComponentAPI.getMessageManager().reportSuccess("Business parameters are ..."+businessParameters.getBytes());
		  
		  
		  obnMetadata.setParameter("CVNR", OBNFactory.getInstance().createOBNParameterData(cvnr));
		  obnMetadata.setParameter("FILENAME", OBNFactory.getInstance().createOBNParameterData(filename));
		  obnMetadata.setParameter("TITLE", OBNFactory.getInstance().createOBNParameterData(title));
		  obnMetadata.setParameter("FILE", OBNFactory.getInstance().createOBNParameterData(file));
		  
				  
		  String params  = obnMetadata.getOBNUrlParametersString();

But when i access the 2nd application it is giving me error saying Technical Error : TRy again or Please contact System Adminstrator.

Could anyone please let me know what might be the problem here

Many Thanks & Regards

Swetha

Edited by: Swetha Nellore on Aug 11, 2009 9:12 AM

Edited by: Swetha Nellore on Aug 11, 2009 9:12 AM

Edited by: Swetha Nellore on Aug 11, 2009 9:14 AM

Edited by: Swetha Nellore on Aug 11, 2009 9:14 AM

Edited by: Swetha Nellore on Aug 11, 2009 9:15 AM

Edited by: Swetha Nellore on Aug 11, 2009 9:15 AM

Edited by: Swetha Nellore on Aug 11, 2009 9:17 AM

Edited by: Swetha Nellore on Aug 11, 2009 9:19 AM

Edited by: Swetha Nellore on Aug 11, 2009 9:19 AM

Edited by: Swetha Nellore on Aug 11, 2009 9:19 AM

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

and i am calling the application using the following code

WDPortalNavigation.navigateAbsolute(navigationTarget,
					WDPortalNavigationMode.SHOW_HEADERLESS_PORTAL, "toolbar=no,location=no,menubar=no,resizable=yes", null,
					WDPortalNavigationHistoryMode.NO_HISTORY, null, null, obnMetadata.getOBNUrlParametersString(), null, isPost, true);

former_member197348
Active Contributor
0 Kudos

Hi Swetha,

I am not sure about the exact problem. I hope you have assigned all the the required permissions to the target iView and it is assigned to some role as well. But you can try to navigate using another method

WDPortalNavigation.navigateAbsolute(
"ROLES://portal_content/com.yash.folder_yh1183/com.yash.page_listner", // target page or iView 
WDPortalNavigationMode.SHOW_EXTERNAL_PORTAL,
"toolbar=no,location=no,menubar=no,resizable=yes",
(String) null,
WDPortalNavigationHistoryMode.NO_HISTORY,
(String) null,
(String) null,
"param1=+"+wdContext.currentContextElement().getNAME());// parameter list   

and access this parameter in second iView (different component) using this code

String name =
WDWebContextAdapter.getWebContextAdapter().getRequestParameter("param1");

Regards,

Siva