Dynamic url parameters
Hi!
Has anyone experience in adding url parameters to a WDA url at runtime?
Example:
We have a WDA application with a tabstrip containing several tabs. Regardless of the selected tab the URL always is the same. What we want is that each time the tab is changed the url is changed. Sample:
tab1 = www.hugo.com/wdaappl?tab=tab1
tab2 = www.hugo.com/wdaappl?tab=tab2
tab3 = www.hugo.com/wdaappl?tab=tab3
Background:
We have a tool for creating web statistics and this tool can only deal with urls. We want to measure not only the call of the whole application, but the call of the tabs within the tabstrip.
Any hints?
Thanx in advance.
Regards,
Volker
Hello, Volker,
I believe that can be done, but it can lead to inconsistencies in your application. Suppose you manage to change the URL during runtime; when the URL changes, probably a "refresh" will occur in the browser. That'll make your application start again, from the beginning, and all instantiated components, context elements, etc, will be empty again.
That gets even more complicated if you are running your application from within a portal iView, as the URL will be that of the Portal.
Anyway, good luck
Andre
Similar Messages
-
Creating dynamic URL parameters
I need to access the form value j_username to create a dynamic url but the following JSP code snippet is putting a blank value into �username�. This is before the form is submitted.
Any ideas ?
<input type="button" name="btnPassword" value="Password?" onClick=
"<c:url var="emailMyPwdUrl" value="secure/MailPasswd.do">
<c:param name="username"
value= "${document.loginForm.j_username.value}"/>
</c:url>
<input type="button" name="btnPassword" value="Password?"
onClick="document.location='${emailMyPwdUrl}';"> "> I also tried with JavaScript and am having the same problem!
function getLogin() {
var user = document.loginForm.j_username.value;
if ( user == '' ) {
alert( 'No User Name Entered');
else {
alert('User Name Entered:' + user);
<c:url var="emailMyPwdUrl" value="secure/MailPasswd.do">
<c:param name="username"
value= "${document.loginForm.j_username.value}"/>
</c:url>
document.location='${emailMyPwdUrl}';
}Thanks for your reply,
So basically when the user presses the "btnPassword" button I want to get the value "j_username" from the form and then redirect (no submit!)to "secure/MailPasswd.do" with parameter "username".
I do not want to submit the form when "btnPassword" is pressed as this will cause the "j_security_check" action to take place.
I am correctly redirected to "secure/MailPasswd.do" but the problem is the parameter "username" is blank when I try to getParameter on the "secure/MailPasswd.do" page.
So am I setting the c:param username correctly ?
Here is the full JSP page as I pasted it incorrectly the last time...
c:set var="fullPath" value="${pageContext.request.contextPath}"/>
<form name="loginForm" method="post" action="j_security_check">
<table border="0"
width="350"
height="263"
align="center"
background="${fullPath}/images/include/collage.gif">
<tr>
<td colspan="3" align="center">
<c:if test="${not empty error}">
<font class="error">${error}</font>
</c:if>
</td>
</tr>
<tr>
<td colspan="3" align="center">
<c:if test="${not empty message}">
${message}
</c:if>
</td>
</tr>
<tr>
<td align="center">
<table border="0">
<tr>
<td align="right">
<span class="text">User ID</span>
</td>
<td align="left" colspan=2>
<input type="text" name="j_username" size="21" />
</td>
</tr>
<tr>
<td align="right">
<span class="text">Password</span>
</td>
<td align="left" colspan=2>
<input type="password" name="j_password" size="21" />
</td>
</tr>
<tr>
<td></td>
<td>
<input type="submit" value="${buttonLabel}" />
</td>
<td>
<input type="button" name="btnPassword" value="Password?"
onClick="
<c:url var="emailMyPwdUrl" value="secure/MailPasswd.do">
<c:param name="username"
value= "${document.loginForm.j_username.value}"/>
</c:url>
document.location='${emailMyPwdUrl}';"
</td>
</tr>
</table>
</td>
</tr>
</table>
</form> -
How to configure HTTP receiver comm channel with dynamic URL parameters?
I need to perform HTTP Post using PI. URL contains some parameters. I need to set these parameters with different values in run time.
Please help to do this.
Thanks
RanjiCheck the section Adapter Specific Message Attributes from this help section:
http://help.sap.com/saphelp_nw70/helpdata/en/43/64dbb0af9f30b4e10000000a11466f/content.htm
The parameters can be set in the Message Mappinga nd then using the appropriate options in communication they can be included in the message header....for more info search with keywords "Dynamic Configuration" and you will get to know how the procedure works.
Regards,
Abhishek. -
Source of URL parameters when launching the hap_document
Hi,
I have been working on the 'Status Overview' iView in the Employee Performance Management module. The source of the table in the iView is the MSS_HAP_STATUS data view in OADP. I have been able to edit and shuffle the columns through the 'define columns' options in the OADP data provider. Some of the columns are shown as links since they are associated with Service Keys which map back to Resources in the homepage framework. The resource 'MSS_MBO_DOCUMENT' is associated with the some of the columns of the Status Overview page. When I click on the link it launches the HAP_Document BSP application with some dynamic URL parameters like
Application=HAP_DOCUMENT
PageId=document_portal.htm
DynamicParameter=NEW_APPRAISER_ID......
I have been trying to debug the proxy class CL_HRWPC_SER_MBO_PARAMS associated with the service MSS_MBO_DOCUMENT to look for the dynamic URL parameters but didnt find them all in there. I did find some of them but not in the form of the parameter string it generates in the URL.
Please let me know if I am looking in the right direction. Any help would be really appreciated.
Regards,
PrathameshHi,
Check SAP note 1505832.
Thanks
Sunny -
Hi All,
We have used WSRP Portlet in Webcenter Portal Page. The Portlet is created using JSF Bridge out of ADF Bounded Taskflow.
It is causing Performance issue. Every time static content like js, css and images URLs are downloaded and the URL contain portlet_id and few other dynamic parameters like resource_id, client_id etc.
We are not able to cache these static content as these contains dynamic URL. This ADF Specific images, js and css files are taking longer time to load.
Sample URL:
/<PORTAL_CONTEXT>/resourceproxy/~.clientId~3D-1~26resourceId~3Dresource-url~25253Dhttp~2525253A~2525252F~2525252F<10.*.*.*>~2525253A7020~2525252FportletProdApp~2525252Fafr~2525252Fring_60.gif~26locale~3Den~26checksum~3D3e839bc581d5ce6858c88e7cb3f17d073c0091c7/ring_60.gif
/<PORTAL_CONTEXT>/resourceproxy/~.clientId~3D-1~26resourceId~3Dresource-url~25253Dhttp~2525253A~2525252F~2525252F<10.*.*.*>~2525253A7020~2525252FportletProdApp~2525252Fafr~2525252Fpartition~2525252Fie~2525252Fn~2525252Fdefault~2525252Fopt~2525252Fimagelink-11.1.1.7.0-4251.js~26locale~3Den~26checksum~3Dd00da30a6bfc40b22f7be6d92d5400d107c41d12/imagelink-11.1.1.7.0-4251.js
Technologies Used:
Webcenter Portal PS6
Jdeveloper 11.1.1.7
Please suggest , how this performance issue can be resolved?
Thanks.
Regards,
DigeshStrange...
I can't reproduce this because i have issues with creating portlets... If i can solve this issue i will do some testing and see if i can reproduce the issue...
Can you create a new producer with a single portlet that uses a simple taskflow and see if that works?
Are you also using business components in the taskflows or something? You can try removing some parts of the taskflow and test if it works so you can identify the component(s) that causes the issues. -
Open a Dynamic URL from a Table column link
Hi,
Jdev Version (11.1.1.6.0)
I have requirement to open a dynamic URL from table column. Any time I click on link, it should generate dynamic URL based on column attribute and open in popup or browser. Can someone pls suggest how to achieve this.
Thanks
Ank1)If you have any parameters that needs to be passed to build that dynamicURL, just set a propertyListener on the column attribute and get the value.
2)Then on the af:commandLink action, build your dynamicURL with the required parameters.
3) If you URL is all together a different application which doesn't share your transaction, you can open it as below
In the below code, urlWithParams will be your dynamicURL.
ExtendedRenderKitService erks =
Service.getRenderKitService(facesContext, ExtendedRenderKitService.class);
StringBuilder sbURL = new StringBuilder();
sbURL.append("window.open(\"" + urlWithParams + "\");");
erks.addScript(facesContext, sbURL.toString());
You can also try the above response by user 948181.
Hope it helps. -
How create dynamic URL for every row shown in the report?
Hi,
Iam new to this Application. I created one interactive report to find the number of bugs logged for every product and its sub component for past one year. The report will look like below structure in the application.
Product Subcomponent Total
P1 S1 10
P2 S2 4
P2 S21 15
Now i want to pick the value of Prouct and sub component for every row dynamiaclly and want to generate the URL with the conditions and make it as hyperlink for the Total Column.
Iam able to make hyperlink for the Total column using the edit options for the total attribute, but it is opening the same page for all the rows in the total column. I want to generate dynamic URL by picking the value prodcut and sub componenet dynamically from the report for every row and want to make it as hayperlink for every row individually.
Please tell me how to do this?
Please revert back if you are not clear. Appericiate for your quick help.Hello <unknown user>,
So you already set the Column Link attributes for your Total column. Should all links go to the same page, but with different parameters (ProductID, SubcompID)? Or to another page? And how can you determine that page?
Assuming you'll go to a sort of detail page or form:
Target = [Page in this app]
Page = <your target page no>
Item1 = <ProductID field in target page>
Value = #PRODUCTID#
Item2 = <SubcompID field in target page>
Value = #SUNCOMPID#
(you can use the ' flashlight' for getting the correct values)
Greetings,
Roel
http://roelhartman.blogspot.com/
You can reward this reply by marking it as either Helpful or Correct ;-) -
Error using XI HTTP adapter specific message attribute URL parameters
Hi XI gurus, in our XI 7.0 SPS11,
we have problem using URL parameters of plain HTTP receiver adapter.
If I set Adapter specific message Properties in communication channel and activate switch for Apply URL parameters (using Parameter 1 to 5) filling them using message mapping, we have no effect; instead we have error "Dynamic Header - Missing Message Attributes: Fields/Parameters".
We carried out this test:
1. not using adapter specific message attribute and setting
a static URL target with fixed parameters it runs correctly.
2. using adapter specific message attribute for target
URL and URL parameters both doesn't runs correctly.
3. using adapter specific message attribute only for target
URL doesn't run correctly.
These attribute key used for URL parameters:
URLParamOne
URLParamTwo
URLParamThree
URLParamFour
URLParamFive
Namespace: http://sap.com/xi/XI/System/HTTP
Can you solve this issue? Are there oss notes, corrections, ...
Thanks in advance.
Marco TricaseSome other test done with TCP gateway.
Activated adapter specific message properties for
*URL
*HTTP Header fields (one header field named "lisca")
*URL Parameters (one param named "objectType")
The HTTP message catched by TCP Gateway
POST /csl/cslinker HTTP/1.0
content-type: text/xml; charset=UTF-8
content-length: 318
connection: close
accept: /
user-agent: SAP Web Application Server (1.0;700)
host: 10.10.43.94:54000
accept-encoding: gzip
<?xml version="1.0" encoding="UTF-8"?>
seems nothing has been generated, and obviusly URL and params have been set in message mapping.
Hope some guru has been solved the issue ...
Pasquale Rossiello -
Dynamic URL for HTTP receiver adapter
Hi all,
when the XI send the http request to the target system, the format maybe like this:
header + body the body is including: Prolog, payload and Epilog
here is about the target system have a 'input' parameter(maybe string type)
is it possible to pass the 'head + body' these value(or maybe the whole http request message) into input
i mean is it possible to set the dynamic URL for http receiver adapter like this:
http://host:port/path?input=<the header and body>
i have searched the blog Dynamic Configuration of Some Communication Channel Parameters using Message Mapping
Link:[/people/william.li/blog/2006/04/18/dynamic-configuration-of-some-communication-channel-parameters-using-message-mapping]
and the similar threads in the forum
please give me some advice
thanks in advanceWhen a HTTP server requests the whole message as URL parameters, then I assume that the server also requests an HTTP GET, which is not supported by XI.
Could you check this?
Regards
Stefan -
Dynamic URL for Recv HTTP (Adapter spec attribute enabled)
Hi,
I need to have a dynamic URL for one of my cases been worked. the URL is
httlp://:<host>/perform/XTA?serv=*&action=start
the event "action" can accept either start/stop or restart. i wanna to control this dynamically and went for recv http enabled with adapter specific message attributes. here i had enabled the check box "URL" and in parameter 1 i had given the name as "action".
in my message payload the "action" will be start/stop or restart which is handled by UDF for which the code is below:l
DynamicConfiguration conf = (DynamicConfiguration) container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
DynamicConfigurationKey trig = DynamicConfigurationKey.create( "http://sap.com/xi/XI/System/HTTP", "UrlParamOne");
conf.put(trig,action);
return "";
this udf is mapped to the root node of the target...but when execute the case i get the following error
"Dynamic Header - Missing Message Attributes: URL/HTTP Destination"
when i execute the url
httlp://:<host>/perform/XTA?serv=*&action=start
in browser it works fine and also with fully qualified name in http recv works fine but not with dynamic settings.
any help on it pls?Hi Prabhu,
Enable Adapter-Specific Message Attributes(ASMA) in receiver HTTP channel.
Dont enable checkboxes for "URL or HTTP Destination".
Enable checkbox "Apply URL Parameters"
for parameter1 textbox give value action
Regards,
Praveen Gujjeti -
Hi all
Could you please to help. I need to use receiver with HTTP adapter which in this adapter that I need to pass dynamic URL into this. I had try follow this document
http://help.sap.com/saphelp_nw2004s/helpdata/en/43/64dbb0af9f30b4e10000000a11466f/content.htm
but when I test it I got this error
<SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">
<SAP:Category>XIAdapter</SAP:Category>
<SAP:Code area="PLAINHTTP_ADAPTER"><b>ATTRIBUTE_MISSING_URL</b></SAP:Code>
<SAP:P1 />
<SAP:P2 />
<SAP:P3 />
<SAP:P4 />
<SAP:AdditionalText />
<SAP:ApplicationFaultMessage namespace="" />
<SAP:Stack>Dynamic Header - Missing Message Attributes: URL/HTTP Destination</SAP:Stack>
<SAP:Retry>N</SAP:Retry>
</SAP:Error>
I think my XML source message format that is incorrect. This is my XML source message
<?xml version="1.0" encoding="UTF-8"?>
<ns0:MT_OB xmlns:ns0="http://xxxx.com:db6">
<type>
<TargetURL>http://xx.xx.xx.xx</TargetURL>
</type>
</ns0:MT_OB>
Could you please to suggest.
Thanks
ParkHi,
Use the UDF in mapping to create the dynamic URL.
DynamicConfigurationKey keyURL = DynamicConfigurationKey.create("http://sap.com/xi/XI/System/HTTP", <b>XXXXX</b>);
// access dynamic configuration
DynamicConfiguration conf = (DynamicConfiguration) param.get (StreamTransformationConstants.DYNAMIC_CONFIGURATION);
// set value
conf.put(keyURL, url);
See the belowlinks
dynamic URL - adapter specific properties (http receiver adapter)
/people/william.li/blog/2006/04/18/dynamic-configuration-of-some-communication-channel-parameters-using-message-mapping
Regards
Chilla -
Dynamic URL creation in Adapter Module
I have a situation in which I need to create a dynamic URL to send data using an HTTP POST ( using HTTPS).
I created an UDF to use Dynamic Configuration, this works fine for the UrlParam in the HTTP CC and the TServerLocation in the SOAP CC.
My issue is that both variables have the same limitation of 200 chars max, and sometimes the URL is longer than 200 chars (I have to pass more than 20 parameters in the URL). The message mapping with the UDF fails whenever I try to put more than 200 chars in the Dynamic Configuration Variables. Therefore I cannot use Dynamic Configuration.
I'm now thinking of creating an Adapter Module which creates an URL out of the XML message passed to the adapter, and use this value to overrule the URL defined in the Communication Channel. The URL field in the Communication Channel does not have a 200 chars limitation.
Does anybody know how to do this? Is it possible to replace the value of the URL field in the Communication Channel with another value in an Adapter Module?
I have to pass the data as parameters in the URL, not as Header fields in the message.
Thanks,
AndreHello Chris,
The error is:
RuntimeException during appliction Java mapping com/sap/xi/tf/_mm_paymentClusterCreate_ Thrown: com.sap.aii.mappingtool.tf7.MessageMappingException: Runtime exception when processing target-field mapping /ns0:mt_newPaymentClusterData/merchant_name; root message: Exception:[java.lang.IllegalArgumentException: Value is too long (471/200):
It's even in the SAP Help:
http://help.sap.com/saphelp_nwpi711/helpdata/en/48/ce299c3a8e5430e10000000a42189b/frameset.htm
The length of the attribute value is defined by the XI message protocol. Values can be a maximum of 200 characters long. If, for example, you assign longer values in the mapping or adapter modules then this can lead to processing errors at runtime or the values are shortened to 200 characters. This shortening can also lead to a processing error. The processing error that occurs depends on the components that access the attributes. -
CRM5.2 UI-Call a dynamic URL on button click
Hi all,
My requirement is to call a dynamic url on the click of a button in the overview page. I have added a custom button in the method IF_BSP_WD_TOOLBAR_CALLBACK~GET_BUTTONS , and the related code in do_handle_event.I have created a custom method for the button event. I have enhanced a custom controller and created an attribute.In the custom method created for the button event, I have written the code for retrieving the parameters to be passed to the url.
In the layout of the view associated with the display view , I have written the following code for calling the URL in a new window.
<%
DATA: lr_cuco_EMA TYPE REF TO ZL_BP_CONT_BPCONT_IMPL,
lv_url TYPE string,
lv_url1 type string,
lv_count type i.
lr_cuco_EMA ?= controller->get_custom_controller( 'ZBP_CONT/BPCONT' ).
check lr_cuco_EMA is bound.
if lr_cuco_EMA->gv_VALUE is not initial.
if lr_cuco_EMA->gv_COUNT IS NOT INITIAL.
clear lr_cuco_EMA->gv_COUNT.
endif.
LV_URL = lr_cuco_EMA->gv_VALUE.
Concatenate 'http:/' LV_URL into LV_URL1.
Concatenate '"http:/' LV_URL '"' into LV_URL.
lv_count = lr_cuco_EMA->gv_COUNT mod '2'.
if lv_count Ne 0.
lv_url = lv_url1.
endif.
%>
<scrpt language="Javascript">
window.open(<%= lv_url%>).focus();
</script>
<%
lr_cuco_EMA->gv_COUNT = lr_cuco_EMA->gv_COUNT + 1.
clear lr_cuco_EMA->gv_value.
clear lv_count.
clear lv_url.
clear lv_url1.
ENDIF.
%>
But here my URl is getting called alternate times.If I do not write the code by using the variable GV_COUNT the url is getting called only the first time of the button click and to call the URL again you need to navigate back to the search page and again back to the overview page and click on the button.
Can anyone help me regarding this? I want the URL to be called in a new page on every button click.
Thanks in Advance,
ChandanaHi Nisha,
The crux of your issue here is that you want to call the event triggered with onClick before calling the event triggered on onClientClick. This can be achieved by the following code in the function called on the onClientClick.
function fn_button()
htmlbSL(this,2,'b_row_selection:onInputProcessing()');
window.open("new_page",target="BLANK");
Here, fn_button is the javascript function called on button click, and b_row_selection is the event triggered on the onClick event of row selection.
Try this out and let us know if it works for you.
Regards,
Saurabh -
Passing Values to URL Parameters in HTTP Connection SCOT
Hi ,
I have created a new node in SCOT as HTTP. In that i am using one URL as HTTP Connection , for that URL have to pass some input values ( eg: User name , password ). Right now i am hardcoding these values in the URL, But i need to pass these input values to the URL dynamically. Is there any way to pass the values to the URL parameters .
Regards
Bala..Hi Bala,
Did you ever get this resolved? I have a similar requirement but still cant find a way to do it. I even thought about creating an RFC Destination of type H and entering the user name and pwd in the logon details. But the problem wih this is that the URL for the RFC destination is static and cant really be changed.
Be interested to hear your thoughts.
Alon -
How to open URL IView with dynamic url parameter (navigate_absolute)
Hi Experts,
i would like to open an URL-IView from the WebDynpro ABAP Application in the Enterprise Portal 7.0
and i want to set the URL parameter dynamically. Is this possible and how can i achieve this!!
Thx MarkusHi Markus,
You can take help of the following code snippet.
Here we are calling an Iview using absolute navigation and passing URL parameters as well
* Select the input value entered and then pass it to REM INQ application---------
DATA lv_inputbusobjid TYPE wd_this->Element_context-inputbusobjid.
DATA lv_path TYPE string.
DATA lv_tab_wd_param TYPE wdy_key_value_list.
DATA lv_str_wd_param TYPE wdy_key_value.
DATA lo_el_context TYPE REF TO if_wd_context_element.
DATA api_component TYPE REF TO if_wd_component.
DATA window_manager TYPE REF TO if_wd_window_manager.
DATA window TYPE REF TO if_wd_window.
DATA lo_api_component TYPE REF TO if_wd_component.
DATA lo_portal_manager TYPE REF TO if_wd_portal_integration.
* read the imput data first-------------
* get element via lead selection
lo_el_context = wd_context->get_element( ).
* get single attribute
lo_el_context->get_attribute(
EXPORTING
name = `INPUTBUSOBJID`
IMPORTING
value = lv_inputbusobjid ).
** call remuneration inquiry window using absolute navigation
CLEAR lv_tab_wd_param.
* Adding parameters
lv_str_wd_param-key = 'sap-wd-configId'.
lv_str_wd_param-value = 'CACS_REMINQ_CONF'.
APPEND lv_str_wd_param TO lv_tab_wd_param.
lv_str_wd_param-key = 'BUSOBJ_ID'.
lv_str_wd_param-value = lv_inputbusobjid.
APPEND lv_str_wd_param TO lv_tab_wd_param.
lo_api_component = wd_comp_controller->wd_get_api( ).
lo_portal_manager = lo_api_component->get_portal_manager( ).
if lo_portal_manager is BOUND.
* PCD
lv_path = 'ROLES://portal_content/com.sap.pct/specialist/com.sap.pct.erp.common.workset_reuse/com.sap.pct.erp.icmparticip.bp_folder/com.sap.pct.erp.icmparticip.15.bp_folder/com.sap.pct.erp.icmparticip.15.pages/com.sap.pct.erp.icmparticip.RemInquiry'.
lo_portal_manager->navigate_absolute(
navigation_target = lv_path
navigation_mode = if_wd_portal_integration=>co_show_external
window_features = 'toolbar=no,resizable=yes,scrollbars=yes'
business_parameters = lv_tab_wd_param
endif.
Hope this helps
Regards
Manas Dua
Maybe you are looking for
-
To set a value in matrix cell which is linked
In sales order if I enter form no of TAX TAB as "form c" , each cell of the TAX Code column of the matrix of contents tab should be set the value as "CST". I have tried to set the value, but it is showing "Form item not editable". I have tried to ma
-
hi i am working on idoc to idoc scenerio... i configured everything in R/3 system...the IDoc is successfully send to Xi system... in XI system, i checked in IDX5 tx... its showing the Inbound IDoc is received in XI system...but if i go to SXMB_MONI
-
Speakers Rated at 100W at 8Ohms, Receiver 120W per Channel Question
I've read up on the latest midrange AV receivers and I've narrowed it down to two with a preference for one more than the other. My preference is the Pioneer VSX-1019AH-K since it is very highly rated in terms of overall sound and video output to the
-
Issue with Java Application with ECC - Connection Issue
Hi We have developed one java application to connect to SAP to extract some data. We are using java API (sapjco) to connect to the SAP. Now we are facing one issue u2013 for the ECC while connecting through the java application we are getting u201CUs
-
Copying existing logical database
HI , I have copied one logical database CRMLDB_SERVICE_MON and it has lot of selection entries which doesnt comes under my requirement . My req is to just to have three selection parameters . selection parameters are under some standard include . whi