BSP URL parameters
Hello,
I have BSP developed with MVC paradigm. I show multiple tables in BSP page which is something like report output. I have event for line select on each table.
My problem is, when user select any line, the BSP URL becomes extensive long and it get appending with all values of selection like event, event id etc.
Is there any way I can control this. I want URL should not change after any event. I know Java Script has option / solution for it but I don't know how to.
I appreciate yr help.
Thanks
Aj
Hi,
Explicitely adding the POST method to forms will prevent adding the values in your URL. Check http://www.htmlcodetutorial.com/forms/_FORM_METHOD_POST.html for details.
Eddy
Pimp up the S(D)N site and earn points. Check this <a href="/people/eddy.declercq/blog/2007/02/01/pimp-up-the-jam log</a> for details
Similar Messages
-
Documentation of SAP default BSP url parameters
Hi,
I'm looking for a documentation on the SAP default BSP url parameters like
- sap-syscmd
- sap-sessioncmd
- sap-params
I already used some of them but am not quite sure whether there aren't any more to help me solving tricky problems.
Is there any list of all parameters including their meaning and examples for usage?
Thanks & regards
WolfgangI don't think you have listed the commands for sap-syscmd. These look like the ones for sap-sessioncmd.
The following was taken from page 94 of <i>Advanced BSP Programming</i>:
<b>SAP-SYSCMD</b>: The only value supported is nocookie. This tells the BSP runtime to mangle the session ID into the URL and not use a cookie for handling the session id. This is especially required when the same stateful application must be run multiple times in situations where session ids in coookies would have resulted in all applications mapping ont the same session.
<b>SAP-SESSIONCMD</b>: The parameter sends actions to the session managemer:
<b>open</b> - starts a new session
<b>close</b> or <b>logoff</b> - ends the current application and redirects the browser to the URL supplied by the parameter SAP-EXITURL.
<b>cancel</b> - is similar to close, but already handled by ICM.
<b>usr_abort</b> and <b>usr_close</b> - is used by the portal to control BSP sessions.
It is interesting that the posting by Guillaume Garcia matches the text from the BSP book exactly. I referenced my source, did you? -
Hi All,
I have a BSP application (WAS 640) that I need to logon to by supplying sap-user & sap-password parameters. I did that mupltiple times for other applications, however, this time the application still shows the NT logon prompt. The strange thing is that it actually populates the NT prompt's user and password so all I have to do is click OK.
I was wondering if it's possible to completely by-pass the NT prompt to minimize the number of clicks.
Thanks,
RomanNo, the option "Logon Required" is not checked. I notice that some BSPs allow the user to login by supplying URL parameters, and other don't. Is there any programming involved to have this functionality?
I compared the ICF service for my application with the one that allows this, and they look identical.
Any ideas?
Thanks! -
Pass URL parameters from BSP to WDA for ABAP (via Post )
Dear Gurus,/ Joerge,
I am unable to post my Code here, but with the guidance provided by Joerge i am able to solve this
i Have been through the Below thread
Pass URL parameters from WD to BSP via Post
Dear Gurus,
"Since I am unable to Post new thread i am Continuing this thread, though this Issue has been
" resolved,i need some more info on the following issue, Kindly guide me,
I have gone through the below thread but left with no clue
Pass URL parameters from WD to BSP via Post
Here i have 2 Issues
First one is --->
" After pressing the Button I am calling this URL which is WDA for ABAP
action="http://company/sap/bc/webdynpro/sap/zuser"> " I am calling WDA for ABAP URL here
" Kindly guide me how to pass the Value
Second one is -->
" This value need to be passed to the URL above and
" How to capture the Same in WINDOWINIT method of WDA for ABAP
" And how to Capture this Value in Webdynpro INIT method
"Here am using Form and method = post , I am removing this as it is causing some problem while posting
action= my WDA For ABAP URL here " I am calling WDA for ABAP URL here
" Kindly guide me how to pass the Value
" This value need to be passed to the URL above and
" How to capture the Same in WINDOWINIT method of WDA for ABAP
Thanks and Regards
Ramchander Rao.KHi,
let me see if I understand you well.
BSP -
You wrote the code for catching the user name in the event OnCreate, which means that you know who´s working with the BSP application when it starts.
Somewhere you must have a button or something with text like "Call WDA application". When user presses the button, it triggers events OnInputProcessing. Here you must write the code for the cookie that "sends" the parameter(s), something like:
CALL METHOD cl_bsp_server_side_cookie=>set_server_cookie
EXPORTING
name = 'MY_COOKIE'
application_name = 'ZUSER_NAME_GET'
application_namespace = 'ZUSER_NAME_GET'
username = sy-uname
session_id = 'SAME_FOR_ALL'
data_value = PAGE_DATA
data_name = 'PAGE_DATA'
EXPIRY_TIME_REL = 3600.
you call then the URL for the WDA application.
WDA -
probably in method WDDOINIT of the component controller you´ll write the code for reading the "content" of the cookie:
CALL METHOD cl_bsp_server_side_cookie=>get_server_cookie
EXPORTING
name = 'MY_COOKIE'
application_name = 'ZUSER_NAME_GET'
application_namespace = 'ZUSER_NAME_GET'
username = sy-uname
session_id = 'SAME_FOR_ALL'
data_name = 'PAGE_DATA'
CHANGING
data_value = PAGE_DATA.
read more about the cookies in SDN, because I am not sure if this is the correct example for transmiting values. I´ve used it in conjunction of instructions IMPORT and EXPORT for transmiting an internal table.
if this is not working properly, then try with IMPORT TO MEMORY and EXPORT FROM MEMORY. -
Exit plug url parameters without XSS encoding
Hi,
I fire an exit plug with POST_PARAMETERS = 'X' and passing a different postParameters='sap-client=101&sap-user=5E224C57E11&sap-password=Asdf1234'. However the special characters are encoded and not passed correctly to the webdynpro app.
I got this behavior from CREATE_EXTERNAL_WINDOW with USE_POST = abap_true settings. I am trying to hide the sap-user and sap-password from the URL when redirecting to a new WebDynpro app in the same way, but remain in the current window.
My question is how can I prevent the automatic XSS encoding? I have turned off the login XSRF flag in SICF, but it has no effect on this.
Another option if somebody can tell me how can I do the same as CREATE_EXTERNAL_WINDOW in the same window, it should also be fine.
Your help is appreciated.
Charlie>
Frederic Wood wrote:
> Thank you Frank! This accomplished exactly what I asked. Points awarded!
>
> However...
>
> What is bugging me now is the fact that the BSP app is processed on the lo_client->send( ) and my POSTed parameters are visible, but the BSP is not displayed. Then, when I actually Fire my WD outbound plug to display the BSP, the BSP is processed and displayed, but the POSTed parameters have been lost...
>
> Your thoughts?
That is because there are two very different calls to the BSP application occuring. The solution that you said worked is using the HTTP Client (browser if you will) of the application server. Therefore it is the ABAP system itself that is calling the BSP application. That is why nothing is displayed on the client side - because the server itself is making the request and receiving the response. This approach is really only usable if you need to call a data service (REST based or something like that), not if you actually need to dispaly the response to the user.
When you fire the navigation plug, it is the browser on the client machine that is making the request to the BSP application. This is completely separate from the request made from the application server in the previous step.
If you can't use GET and URL parameters, then you should just consider using Server Cookies. I don't think that hte HTTP Client class approach is going to get you what you want. -
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
I am creating a new iView of type BSP. On executing/previewing the iView the url is generated similar to:
http://<hostname>:<port>//sap(bD1lbiZjPTEwMCZkPW1pbiZpPTEmcz1TSUQlM2FBTk9OJTNhZHYxZDIxX0QyMV8yMSUzYU5pOXBPcGVTbE9HTVk0ZWdfcU1jUnVkYU04MU5WUUdCTDhrai10cGMtQVRU)/bc/bsp/sap/<application>/<start page>.htm
Although the BSP url is
http://<hostname>:<port>//sap
(bD1lbiZjPTEwMCZkPW1pbg==)/bc/bsp/sap/<application>/<start page>.htm
So the session parameters generated in the two URLs is different and the latter one works fine but the earlier one gives some issue when trying to save etc and does not work as expected.
I analysed the session parameters in the URLs and found that the former URL:
(l)anguage en
(c)lient 100
(d)omainRelax min
(i)info 1
(s)ession-id SID:ANON:dv1d21_D21_21:Ni9pOpeSlOGMY4eg_qMcRudaM81NVQGBL8kj-tpc-ATT
and the latter:
(l)anguage en
(c)lient 100
(d)omainRelax min
Is there any way this parameter be controlled from portal end so that I am able to get the BSP url (latter).
Appreciate any pointers.
Thanks,
PriyankaHi, it is not possible to diasable the url mangling you mentioned. You can call the static method
cl_o2_helper=>generate_url_for_page to get an url for a specific page.
Best regards,
Stefan -
Hi all!
I'd like to use URL encoding (I guess base64) to mask url parameters in our URL (instead of default.htm?param1=value¶m2=value etc.) to prevent URL manipulation. In most parts of our application we use PopUp-Windows without the location bar of the browser, but we have email links to workitems which launch BSPs and these new opened browser windows do have a location bar and a URL which can be manipulated.
How do you set up URL encoding in your BSP application? (entries in the BSP service of /sicf for example or BSP Application Attributes ?). Is there a way to encode the only parts of the application? How to use and when the if_http_utility->en/decode_base64 methods?
best regards,
Christophdid you try the following?
ex. you have page a.htm and from there you are calling page b.htm with params param1 and param2.
use
CALL METHOD cl_http_utility=>if_http_utility~encode_base64
EXPORTING
unencoded = param1value
receiving
encoded = param1value .
and pass this as the value for param1 and call the URL for page b.htm.
and within page b.htm decode it and use .
CALL METHOD cl_http_utility=>IF_HTTP_UTILITY~DECODE_BASE64 EXPORTING
encoded = param1value
receiving
decoded = param1value .
<b>Sample application:</b>
Create a BSP application withe two pages a.htm and b.htm
and have a page attribute called name in both the pages.
<u><b>a.htm layout code</b></u>
<%@page language="abap"%>
<%@extension name="htmlb" prefix="htmlb"%>
<htmlb:content design="design2003">
<htmlb:page title = " ">
<htmlb:form>
<%
if name is initial .
name = sy-uname .
endif .
%>
<htmlb:textView text = "<%= name %>"
design = "EMPHASIZED" />
<%
CALL METHOD cl_http_utility=>if_http_utility~encode_base64
EXPORTING
unencoded = name
receiving
encoded = name .
%>
<htmlb:button text = "Press Me"
onClientClick = "javascript:window.open('b.htm?name=<%= name %>');" />
</htmlb:form>
</htmlb:page>
</htmlb:content>
<u><b>b.htm layout code</b></u>
<%@page language="abap"%>
<%@extension name="htmlb" prefix="htmlb"%>
<htmlb:content design="design2003">
<htmlb:page title = " ">
<htmlb:form>
<%
CALL METHOD cl_http_utility=>if_http_utility~DECODE_BASE64
EXPORTING
encoded = name
receiving
decoded = name .
%>
<htmlb:textView text = "<%= name %>"
design = "EMPHASIZED" />
</htmlb:form>
</htmlb:page>
</htmlb:content>
Hope this helps.
Regards
Raja -
Hi,
I have BSP based iView which is working fine when i call directly or manually. if i call from this url from other application, URL parameters replaced with internal values. Could any help me on this.
Thanks in advance!!!
<h2> Not working: </h2>
https://bidev.corp.ag.com/irj/servlet/prt/portal/prtmode/preview/prtroot/pcd!3aportal_content!2fcom.analog.analog!2fcom.analog.SD_BI_REPORTS!2fcom.analog.SD_iviews!2fcom.analog.z_quote_text?sap-config-mode=false %26 gv_item %3D 000001 %26 gv_doc %3D 0040013811
<H2> working perfectly. </H2>
https://bidev.corp.ag.com/irj/servlet/prt/portal/prtmode/preview/prtroot/pcd!3aportal_content!2fcom.analog.analog!2fcom.analog.SD_BI_REPORTS!2fcom.analog.SD_iviews!2fcom.analog.z_quote_text?sap-config-mode=false & gv_item = 000001 & gv_doc = 0040013811
please guide me how can make 1st URL work. i have this issue because of %26 and %3D. if i replace with & and = respectively. i don't see any issue.
Thanks,
Ben.Abhinav,
appreciated your reply!!!
I used dynamic parameters option in BSP based iView. if i use encoded values in the URL i.e. %3D, %26 etc, my URL is not working.
Please guide me to use my URL with encoded parameters.
Let me know if you have any Questions.
Thanks,
Ben. -
Overwrite URL parameters?
I have a stateful BSP Application that is called with some URL parameters.
https://bla.com/alias/default.htm?param1=value1
On the default.htm, i call
request->get_form_field( 'param1' )
to read value1. This value is read in every request.
My question: Can I overwrite param1 in the event handler of default.htm so that param1 has a different value in the following requests?hi,
you can declare a page attribute with same name 'param1'.
and then in event handling just change its value so it will pass the updated value next time.
if it doesn't work,then add a hidden field in your page form say
<input type=hidden name='param1'> and declare a page attribute with same name also 'param1'. this will change the value of input field in event handler and then the updated value will get passed in subsequent requests.
hope this will work for you,
Regards,
Hemendra -
How to parse crystal report query prompt value via url parameters
HI All,
I am creating a employee detail report in crystal report. The recordset is huge and i have created a parameter prompts in the query and thinking to parse the prompt value via url parameters. Not sure why i still could not make it works.
for example, in my query panel i have created a prompt called "pwwid"
and this is how i parse the prompt value via open document url.
OpenDocument/opendoc/openDocument.jsp?sIDType=CUID&iDocID=AV8U6HlIq4FBl_MhcBwHqGI&lsSpwwid=12345678
I read the sap documentation, this is how it parse the prompt value via url parameter. but it is not working for me and i am getting prompt to fill in the wwid whenever i run the reports.
any idea why i am not getting this works?
Regards,
KeatAunCould you try:
OpenDocument/opendoc/openDocument.jsp?sIDType=CUID&iDocID=AV8U6HlIq4FBl_MhcBwHqGI&lsSpspwwid=12345678
-Abhilash -
The Web Dynpro application was called up with the wrong URL parameters
Hi all,
I am using the systems below:
ERP STACK :16
EHP : 4
EHP SP Stack :4
EA-HR * : 604(SP12)
SAP-HR * :604(SP12)
XSS JAVA components : SAP ESS 603 SP05
SAP MSS 600 SP16
PCUI_GP 603 SP05
Business Package : BP ERP05 ESS 1.41 SP04
BP ERP05 MSS 1.41 SP04
BP ERP05 COMMON PARTS 1.41 SP04
I am getting below error after clicking on the appraisal document:
App. Called Up Incorrectly
The Web Dynpro application was called up with the wrong URL parameters.
Note
Enter the URL parameters and their use.
You can find more information on the functions that you can perform in the catalog for appraisal templates in the Implementation Guide (IMG) for Objective Setting and Appraisals under Edit Forms.
I already applied the below notes also:
1468466 Performance Management Launchpad Configuration
1463821 Performance Management Portal Configuration
1416756 OBN Configuration in Performance Management
1408243 Configuration for object-based navigation
Plz advise me??
Thanks,
Anumitcan you paste the exact error. also you can take a HTTP trace and see which resourse or UWL is being launched!
-
How to launch a non bsp url through transaction launcher
Hi All,
i am not able to launch a non bsp url from transaction launcher. i have followed all the steps needed.
Defined URL as non bsp url and defined the logical system and assigned it to rfc destination.
when i test this out, i am getting a blank page.
Any pointers on this will be helpful.
Thanks,
UdayaI am trying to launch sap/bc/bsp/sap/ytest2/index.htm without giving the initial server details. for the server details, i have mapped to logical system.
i am assuming that this will pick the server info http://dmsap650.fm.test.com:8006/. -
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 -
I'm having some trouble getting coldfusion to see japanese
characters in the URL string.
To clarify, if I have something like this:
http://my.domain.com/index.cfm?categorylevel0=Search&categorylevel1=%E3%82%A2%E3%82%B8%E3% 82%A2%E3%83%BB%E3%83%93%E3%82%B8%E3%83%8D%E3%82%B9%E9%96%8B%E7%99%BA
All of my code works correctly and the server is able to pass
the japanese characters to the database and retrieve the correct
data.
If I have this instead:
http://my.domain.com/index.cfm/Search/%E3%82%A2%E3%82%B8%E3%82%A2%E3%83%BB%E3%83%93%E3%82% B8%E3%83%8D%E3%82%B9%E9%96%8B%E7%99%BA
My script (which works fine with English characters) parses
CGI variables and converts these to the same URL parameters that I
had in the first URL using a loop and a CFSET url.etc..
In the first example, looking at the CF debug info shows me
what I expect to see:
URL Parameters:
CATEGORYLEVEL0=Search
CATEGORYLEVEL1=アジア・ビジネス開発
In the second example it shows me this:
URL Parameters:
CATEGORYLEVEL0=Search
CATEGORYLEVEL1=???·??????
Can anyone suggest means for debugging this? I'm not sure if
this is a CF problem, an IIS problem, a JRUN problem or something
else altogether that causes it to lose the characters if they are
in the URL string but NOT as a parameter.My suggestion was that you test with the
first url, not the second. However, I can see a source of
confusion. I overlooked your delimiter, "/". It should be "?" and
"=" in this case. With these modifications, we get
<cfif Len(cgi.query_string) neq 0>
<cfset i = 1>
<cfloop list="#cgi.query_string#" delimiters="&"
index="currentcatname">
<cfoutput>categorylevel#i# =
#ListGetAt(currentcatname,2,"=")#</cfoutput><br>
<cfset i = i + 1>
</cfloop>
If it is a failing of Coldfusion, the above test should fail,
too.
Now, an adaptation of the same test to your second url.
<cfset url2 = "
http://my.domain.com/index.cfm/Search/%E3%82%A2%E3%82%B8%E3%82%A2%E3%83%BB%E3%83%93%E3%82% B8%E3%83%8D%E3%82%B9%E9%96%8B%E7%99%BA">
<cfset query_str =
ListGetAt(replacenocase(url2,".cfm/","?"),2,"?")>
<cfif Len(query_str) neq 0>
<cfset i = 1>
<cfloop list="#query_str#" delimiters="/"
index="currentcatname">
<cfoutput>categorylevel#i# =
#currentcatname#</cfoutput><br>
<cfset i = i + 1>
</cfloop>
Maybe you are looking for
-
Need opinions on how to get sketches in Illustrator to become vectors
Have Illustrator CS6, Medium Baboo tablet. I can draw well but it seems almost impossible to get the quality of my sketch work to go to Illustrator in a way I am happy with. I do not like what I see from scanner to Imagetrace either. This is largely
-
Problem in compiling mysql++ libraries on Solaris 8 using Sun C++ compiler
Hi! I am trying to compile the mysql++ libraries on Solaris 8 using the Sun C++ compiler CC 5.3 version. but I get an error: "../../../../tools/mysql++/lib//resiter.h", line 53: Error: Invalid template parameter default. Can anyone let me know what c
-
SSI includes do not display in design view.
Hi, I am working on an existing site. By "existing", I mean there was no Dreamweaver site definition. I created the site definition but, when I open pages that use ssi, the included files do not show in design view. If I reinsert the include, it show
-
I need helping using iAds in my application.
I need helping using iAds in my application. I currently am not using any storyboards. I am using Sprite builder for my UI. I attatched an image ot show all the different file name I have. Everyone is being used & they all work fully. The "iAdViewCon
-
How can I change default path to the files directory? It's "C:/Program Files/" and I want change it to "C:/Program Files/Workshare/". I've got another question too. What's the matter with this AIR certificates. Can anybody say, what is the difference