Webdynpro application parameters
Hi,
How can i access my webdynpro application parameters inside my view / in WDDOINIT method.
Thanks
You can dinamically construct Url with parameters calling method CL_WD_UTILITIES=>CONSTRUCT_WD_URL
DATA: T_PARAMETERS TYPE TIHTTPNVP,
L_PARAMETERS TYPE IHTTPNVP,
APPL_NAME TYPE STRING,
ABS_URL TYPE STRING.
APPL_NAME = 'ZAPPL_NAME'.
L_PARAMETERS-NAME = 'PARAM_NAME1'.
L_PARAMETERS-VALUE = 'value1'.
APPEND L_PARAMETERS TO T_PARAMETERS.
L_PARAMETERS-NAME = 'PARAM_NAME2'.
L_PARAMETERS-VALUE = 'value2'.
APPEND L_PARAMETERS TO T_PARAMETERS.
CL_WD_UTILITIES=>CONSTRUCT_WD_URL( EXPORTING APPLICATION_NAME = APPL_NAME
IN_PARAMETERS = T_PARAMETERS
IMPORTING OUT_ABSOLUTE_URL = ABS_URL ).
Similar Messages
-
Workitem Text need to display in Webdynpro Application
Hi,
Requirement : Workitem ID need to capture in WebDynpro application along with workitem text. (i.e.., When user clicks on worktitem from UWL, the workitem text should display in Webdynpro applocation.)
I have created workflow and Web dynpro application. I have configured in SWFVISU tcode and assigned parameter in webdynpro application parameters tab. Here, If i click's on workitem, it's opening sap web screen. But i want to open webdynpro application screen.
Kindly suggest to do this..
Advance Thanks & Regards,
Jayaprakash NHi Jayaprakash,
If you are not seeing the button "Launch WebDynpro" when you click on your Workitem then your UWL is not configured. There are a couple of steps for that which are provided quite clearly in the link below .
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/20f4843e-314f-2a10-2a88-8c4afa20dda6?overridelayout=true
Broadly the steps are:
Re-register your system alias in UWL configuration. The path for this is System Administration / System Configuration /Universal Worklist Administration
After re-registering, the portal will add one XML file for your system. Download the XML file, edit and add Webdynpro option specifying the Workflow Task ID and your custom webdynpro application name
Upload the edited XML file with priority high and clear the cache
In your WDA application define a plug name 'Start' and define the parameter WI_ID type SWW_WIID
In your WDA window define a eventhandler HANDLESTART and inside write the code for reading the workitem id. Create a parameter WI_ID type SWW_WIID also for this eventhandler
Let me know if you are stuck at any point.
Regards,
Arpan
Message was edited by: Arpan Sengupta -
How To Get GP Process Parameters in a Webdynpro Application runtime
Hi ,
Iu2019 ll hope you can help me to solve my problem with GP process.
Iu2019 m trying to get GP process parameters from a Webdynpro application.
I have to get parameters during the process runtime in every step of the process using
a webdynpro application with the following code:
IGPRuntimeManager rtm = GPProcessFactory.getRuntimeManager();
try {
IGPProcessInstance processInst = rtm.getProcessInstance(processId,userContext);
IGPProcessInstanceInfo procInfo = rtm.getProcessInstanceInformation(processInst.getID(),
userContext.getSAPUser());
IGPStructureInfo inputstructInfo = processInst.getTemplate().getInputParameters();
IGPStructure inputparams = GPStructureFactory.getStructure(inputstructInfo);
} catch (GPEngineException e) {
// TODO Auto-generated catch block
// e.printStackTrace();
manager.reportException("GPEngineException:"+getStackTrace(e), false);
} catch (GPInvocationException e) {
// TODO Auto-generated catch block
// e.printStackTrace();
manager.reportException("GPInvocationException:"+getStackTrace(e), false);
But printing the values of attributes with u201Cinputparams.getAttributeAs... ("param name")u201C the value returned is always 0. On the contrary if I check the same parameters structure in the runtime
GP view of the portal, the values are those that I have set in the start process wizard.
Have you a solution for this question?
Thanks in advance
Lucahi Abhimanyu
I believe originally access to session was deliberately not made available inside WDA.
Growing security concerns due to misuse of session information and
perhaps other reasons as well.
X.509 is considered a better approach.
This may not help you in your problem.
But you may see a trend in WDA pushing more robust and client independent
approaches.
Full x.509 access should remove the need for session fiddling.
Also when developers access such session info directly, there is a possiblity
when they dont understand the technology exactly that they create a security hole.
You may know how to do safely, it is however discouraged.
Im not aware of a way to get at the session info inside the WDA framework.
Well not without a mod to the framework.
It may be possible without a mod, but I dont know the trick.
If someone has a little trick... please post.
You may need to use BSP, if your only solution requires access to the session info.
regards
Phil -
Calling WebDynpro Application and Passing parameters
Hi,
I want to call a webdynpro application from another application and also i want to pass parameters to the called webdynpro application.
Is there an example on SDN which shows how this can be done. If not please advise how this can be done.
Thanks and Regards
SidharthHi Sidharth,
until the tutorial is available, here's a step by step guide.
1. Create an outbound exit plug, for example "CallApp" in an interface view controller belonging to the calling component.
2. Add a string parameter 'Url' to the plug "CallApp". It's important that the parameter starts with uppercase 'U'.
3. Declare a controller usage of the interface view controller for the view controller, which will fire the plug.
4. Add an action to the calling view controller.
5. Add the following code snippet to the method body of the action handler. Change the application name "CalledApp" to the name of your called application and the wdThis.wdGet<YourInterfaceView>Controller().wdFirePlugCallApp(url) so that it matches the names you defined. The example will not work, if the application is not part of the deployable object the calling component resides in.
IWDDeployableObject componentDPO = wdComponentAPI.getDeployableObjectPart().getDeployableObject();
String appName = "CalledApp";
WDDeployableObjectPart[] applicationParts = componentDPO.getParts(WDDeployableObjectPartType.APPLICATION);
WDDeployableObjectPart appPart = null;
for (int idx = 0; idx < applicationParts.length; idx++) {
appPart = applicationParts[idx];
if (appPart.getShortName().equals(appName)) {
break;
appPart = null;
if (appPart == null) {
throw new WDRuntimeException(
"The application: " + appName + " is not a part of: " + componentDPO.getName());
Map urlParameters = new HashMap(1);
urlParameters.put(ClientConstants.APPLICATION_PREFIX + "Param1", "Parameter sent by caller.");
try {
String url = WDURLGenerator.getApplicationURL(appPart, urlParameters);
wdThis.wdGet<YourInterfaceView>Controller().wdFirePlugCallApp(url);
} catch (WDURLException e) {
throw new WDRuntimeException(e);
6. Add a string value attribute named "ReceivedParameter" to the context of the component controller owning the target interface view.
7. Declare a controller usage of this component controller for the target interface view controller.
8. Add a startup plug to the target interface view controller. Add a parameter ("Param1" in this example) to the plug. It's important, that the name of the plug parameter is the same (case sensitive) as used for the URL generation.
9. Add the following to the method body of the startup plug handler:
wdThis.wdGet<YourComponent>Controller().wdGetContext().currentContextElement().setReceivedParameter(Param1);
10. To check, if the parameter passing works, map a value attribute in a view controller to the component controller context and bind e.g. the text property of a TextView to that attribute.
Hope that helps.
Regards
Stefan -
Adding and reading the parameters from the WebDynpro Application URL
Hi,
I have a WebDynpro Application with two views. Based on the values populated by the user in the first view, I am pulling the data from database and populating the data in the second view. I do have a scenario where I have to skip the first screen and show the second screen directly. But, for the values that has to be populated in first screen, I am planning to append the parameters in the url and provide the link to the users via email.
Is it possible to add parameters to URL and read those Parameter values when user clicks on the URL.
Thanks & Regards
swetha.HI,
Code for accessing params in webdynpro java:
String urlParamVal = WDProtocolAdapter.getProtocolAdapter().getRequestObject().getParameter("URL_PARAMETER");
if((urlParamVal != null) && (urlParamVal.trim().length() > 0))
<Write the code>
Reading parameters:
Re: Reading URL Parameter
How to pass and fetch multiple parameter in the URL of the Web Dynpro
Regards,
Lavanya.G -
Passing Parameters from Par component to WebDynpro Application
Hi all,
We have a created a WebDynPro and par application. Also we want to pass the parameters from Par component to WebDynPro Application. ( not in query string as application parameters property of webdynpro iView).
Is it possible to do so? if yes then how?
Please help us......
Thanks and regards,
Prath.Hi ,
If the iviews are on the same page you can use portal eventing for that
see the documents on portal eventing
<a href="https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/ep/_d-f/enterprise%20portal%20client.pdf">EPCF pdf</a>
<a href="http://help.sap.com/saphelp_nw04/helpdata/en/d3/3857422d095542e10000000a1550b0/frameset.htm">EPCF</a>
Hope this helps you
Regards
Rohit -
Parameterized Classes in WebDynpro applications
Hello,
I'm developing a Java WebDynpro application with Dynamic Programming.
I'm wondering why the NDWS won't let me do
Vector<java.lang.String> labels = new Vector<java.lang.String>();
forcing me to use a generic Vector and then typecasting everything I take out again.
NWDS complains it's an "Invalid expression as statement".
What am I missing here?
Thank you.Thank you all for the replies.
Indeed, it seems like generics were introduced with Java 5.0, at least when I compare Vector in 1.4.2-API Docs ([http://java.sun.com/j2se/1.4.2/docs/api/java/util/Vector.html]) with the same for Version 5. ([http://java.sun.com/j2se/1.5.0/docs/api/java/util/Vector.html])
And it's a good thing. Much cleaner, safer code (imho). And yes, of course Sun's marketing confuses everyone as the Version numbering does not really make much sense.
EDIT: The Wikipedia article on the subject might be helpful also: [http://en.wikipedia.org/wiki/Generics_in_Java]
Everyone have a great day (always remember there's only approx. 22,000 of those in your life),
Lukas. -
Needs a background webdynpro application running at the server side
Hi All,
We have a requirement wherein we need to have an application running all the time at the server side to capture the response coming from a web application. Based on the response that the application receives, it needs to update some backend R/3 tables.
We are thinking of a webdynpro java application.
Can anyone suggest what kind of application needs to be implemented here?
And what would be the steps required to run the application at the server side without calling the application.
Thanks & Regards,
AnuragHi Robin,
Thanks for the detailed explaination.
This may sound silly to you but I've another doubt which is as follows:
As you mentioned that the external web application will be sending requests to our Web service(in SOAP envelopes) and rest of the functionality can be achieved by our web service.
Actually, we are expecting only responses from the external web application. The thing is that we are sending the requests to the external web applications from our custom webdynpro application and in return the web application will be sending us 2 responses.
First response would be back to our WD java application URL(to the browser in which WD java app is running) which would get the response and display some message based on the response.
Second would be to this web service which you have just suggested. We are having two responses so that even if the browser in which the WD java application is running gets accidentally closed, the response from the external web application must get captured somewhere else and should not get lost in any case.
So, now since we are only expecting the response from the web application and we do not want any requests from the web application to our web service; how is this possible?
I am asking the above question because you have mentioned that the external web application has to request our Web service but we want is only this web service to capture the response coming from the Web application.
Or is it like the web application will send us the response string as request string to our Web Service and the web service will capture these response parameters as request parameters from the web application and do the further processing.
But in that case, we do not want any response to be sent by the Web Service to the external web application.
Please suggest if this is possible.
Once again, many thanks for the help so far.
Thanks & Regards,
Anurag -
Storing the output of BAPI for further use in Webdynpro application
Hi,
In my webdynpro application, a BAPI_A is called multiple times from a backend.
All the previous outputs of the BAPI_A need to be stored in the webdynpro application as they serve as a complete set of input parameters for BAPI_B at the end.
Can anybody shed light on this temporary storage mechanism of the outputs of the BAPI_A.
Regards
MeesumHi Meesum,
Your BAPI structure
BAPI_A
--Output (0..n)
Field1
Field2
Field3
Field4
Value node structure
vnBAPI_A (0..n)
--vnResult (0..n)
vaField1
vaField2
vaField3
vaField4
1. Declare objVnBAPI_A (between begin and end)
2. Initialize in the vnBAPI_A in the wdDoInit()
3. After each execution of the BAPI (BAPI_A), create the vnResult and populate the fields of vnResult (from the BAPI_A --> output)
4. Add the vnResult object to objVnBAPI_A
Hope this should help you.
Regards,
Santhosh.C -
Calling servlet in a webdynpro application
Hi,
I have created a servlet for Authentication , and i have to call this servlet in the webdynpro application(on accessing a link)
Such that it will automatically take care if authentocation
Servlet is residing in a Java application and the View is residing in WebDynpro application
when i call the servlet i have to pass two parameters 1)URL and 2)Filename
Could anyone please help me out in doing this?
Thanks & Regards
SwethaHi Anagha,
Thank you for the information, i would like share my vague idea on resolving this.....please let me know will it be a possible approach
Here ew have two projects
1)WebProject(War file)
2)EarProject(where webproject is integrated
Steps
1)Get the EAR file
2)Create a portal application
3)Consume the EAR in the Portal application(by passing parameters)
4)Create a WebDynpro DC
5)Here call the portal Application( URL and URL parameters)
6)Get the URL
7)Finally we can call the servlet
Will these steps help in solving this issue
Thanks & Regards
Swetha -
Issues while running a WebDynpro Application through portal.
Hi,
I am trying to execute a webdynpro application through portal and facing some issues. I hope to get a significant help from the experts:
> Initially, a report is called from the portal which in turns calls the WebDynpro Application.
> After this, I am again trigerring "FIRE" event in order to go back to report.
At this step, portal shows a message "The Page Can Not be Displayed". Browser link field contains the event name which I am passing to the Fire Event.
Can anybody let me know the root cause for this issue? Below is the piece of code that I am using for navigating from Webdynpro to Report.
l_sapgui_manager->fire(
EXPORTING
name = 'INDI'
parameters = lt_parameters ).
lt_parameters contains some field values which are required in the report.
Thanks,
AshishNo Solution
-
Refresh problem of Webdynpro application which is wrapped in a BSP IFrame
I have a BSP Iframe inside which I am calling a webdynpro application ('zwdc_re_replenishment'). The requirement is that this WD application should be reloaded whenever a timeout occurs. Currently, when there is a timeout, an error is shown.
In order to achieve this, for this WD Application , I have a SICF node to which I have attached a customized Errorpage via the option 'Redirect URL'.
Whenever the WD application undergoes a timeout error, my custom error page is called which is named as errorpage.htm. On this page in the 'OnInitialization event', I try to call the WD application URL again (via the following code) which should reload the application. But instead I get a blank page.
CALL METHOD cl_wd_utilities=>construct_wd_url
EXPORTING
application_name = 'zwdc_re_replenishment'
IMPORTING
out_absolute_url = lv_def_url.
response->redirect( url = lv_def_url
permanently = 1 ).
Just as a note I have already tried out the following methods as well but nothing works
*navigation->exit( lv_def_url ).
*navigation->call_application( lv_def_url ).
Is this because my WD application is inside a BSP Iframe and therefore reloading it manually does not work ?
Please help!
Thanks.
SukanyaHi Thomas,
First of all, thanks a lot for replying !!
Sorry for the confusion. Although seems like you have answered my question already.
Actually the requirement for embedding WDA inside a BSP Iframe came up since there are some WD report applications that are accessed by very controlled environments in which the users were not able to close the WDA session directly (without the IFrame) and were getting some errors. Hence the WDAs had to be wrapped inside BSP IFrame which solved the above problem.
I am working with only one BSP app which has the Iframe and one WD app which is called within the BSP app.
Now, the other requirement that came up was that whenever the WDA session inside the BSP IFrame expires, there should be no error page and instead the WD app should be reloaded.
So I was trying to reload the WD App in the following way.
1. For the SICF node of WDA, I attached an errorpage.htm for all the tabs under the tab 'Error Pages'. I have defined this errorpage.htm inside the same BSP App which has got another default.htm page. So the BSP App has 2 views : default.htm which has the IFrame and Errorpage.htm.
2. So now when the WDA expires, the events of errorpage.htm are called like OnInitialization, In this event I was calling the methods navigation->exit( 'URL of the same WDA' ).
I did this because I wanted to reload the WDA whenever it expires. I tried to specify the WDA Url in the SICF node of the same WDA in 'Redirect URL' under the Error Page tabs but it didnot work.
Now I realize this is not gonna work. I didnot want to modify the WDA and so I didnot specify any exit plugs in the WDA which would have taken care of reloading the WDA. But that seems to be the only way out.
Actually speaking there are multiple WDAs which will open inside the same BSP IFrame via their own Application URLs. I have coded the BSP IFrame to read the URL Parameters and open up the corresponding WDA. So now I have to define an exit plug in all of these WDAs.
Do you suggest that this will solve the problem of WDA refresh ? Just to confirm.
Thanks again. -
Runtime Error While executing the WebDynpro Application
I am getting the Runtime Error While executing the WebDynpro Application. The error message is "TSV_TNEW_OCCURS_NO_ROLL_MEMORY".
It says like "
Short text
No roll storage space of length 9728 available for OCCURS area.
What happened?
Each transaction requires some main memory space to process
application data. If the operating system cannot provide any more
space, the transaction is terminated.
But while executing some other Web Dynpro Applications, i am not facing this problem.Generally this error is a result of an infinite loop on internal table or select endselect statement where by severs temporary memory gets full. With no memory to insert new records in temporary memory system generates the dump.
Check your application or ask basis consultant to look at the memory parameters in instance profile.
Regards
Rohit Chowdhary -
Navigate from WebDynpro Application to BPS Layout and vice versa
Hi,
Please see the following Problem Statement:
We have WebDynpro applications and BPS applications in our project. All the applications are published via SAP Portal. Both areas (WebDynpro and BPS) have same selection screen (Selection fields are common). Is it possible to call
WebDynpro application from BPS layout (on click of button)and also passing the selection parameters to the WebDynpro application and vice-versa.
- Sujal ShahHi,
You can you free tool from Oracle called OMWB (Oracle Migration Workbench) for SQL Server to Oracle.
For more details, visit http://www.oracle.com/technology//tech/migration/workbench/index.html
From Oracle to SQL Server, there are third party tools available.
Cheers,
Harshw
Message was edited by:
[email protected] -
GP: WebDynpro Application vs Web Dynpro (GP Interface)
Hello,
I've gone through some documents here in SDN. And I can't find a document that could give me a comparison between having a WebDynpro Application and WebDynpro (GP Interface) as callable objects.
From what I understand is as for GP Interface (WD) as callable object, you implement inherited GP methods to 'expose' input/output parameters of the WebDynpro DC. Now, how does that compare with just calling (attach as action) a WebDynpro Application? Does this one also have an 'exposure' procedure needed for it to be considered as a callable object?
Could someone help me as to the comparison of both? Also, the PROs and CONs would also be of help.
Thank you and Best Regards,
JanYes you have to use the automatically added window.
Check <a href="https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/50d74ada-0c01-0010-07a8-8c118d408e59">this</a> tutorial on how to implement a GP WD.
Regards,
Christophe
Maybe you are looking for
-
Javadoc won't display my fields:
This is the file. Can someone tell me what I'm doing wrong? * <p>This class represents boolean terms as a tree-like structure. An instance of * this class can contain another BoolTerms as its {@link #subterms}. The term * has a top operator, {@link #
-
Returning database query results under Apache Axis
I'm trying to write a web service that will return the results of a standard database query. Does anyone have any pointers on what sort of data structure I should convert my ResultSet to that would be best suited to run under Apache Axis? Currently I
-
Certification Magazine: "A Blueprint for Certification Development"
Certification Magazine interviews Oracle's Global Director of Certification Paul Sorensen: "Blueprint for Certification Development" http://bit.ly/r49Dr
-
What is the problem with business catalyst?
Once in every one hundred attempts the business catalyst website will actually let me upload my site, if the service is not going to work let me know so I can find someone to host my site.
-
Dear All if there is some workaround to configure the procedure of LC (external vendor PO) in Retail, as its sap standard doesn't allow the procedure of LC in Retail system Thanks in advance,