URL encode a string before redirecting it

I want to URL encode a string before I sendRedirect it.
What must I do? I have tried this but it did not work.
response.sendRedirect(response.encodeRedirectURL("showAddAMember?century=" + country + "&stte=" + state + "&city=" + city + "&course=" + course + "&coursename=" + coursename + "&messagename=" + messagename + "&TFM=" + worker + "&admin_type=" + admin_type)); The URLEncoder.encode is deprecated so I can not use it or it is not wise to do so. What must I do to URL encode a string before redirecting it. I have written a simple method which temporarily takes care of this for me, but I want to use the accepted standard. Please somebody tell what I must do.

I want to URL encode a string before I sendRedirect
it.
What must I do? I have tried this but it did not
work.
response.sendRedirect(response.encodeRedirectURL
("showAddAMember?century=" + country + "&stte=" +
state + "&city=" + city + "&course=" + course +
"&coursename=" + coursename + "&messagename=" +
messagename + "&TFM=" + worker + "&admin_type=" +
admin_type)); response.encodeRedirectURL() and .encodeURL() do not replace unsafe URL characters; I'm assuming that's what you want happening; they're meant to encode the session id in the URL for session tracking.
Quote from http://java.sun.com/j2ee/1.4/docs/api/javax/servlet/http/HttpServletResponse.html#encodeRedirectUrl(java.lang.String):
Encodes the specified URL by including the session ID in it, or, if encoding is not needed, returns the URL unchanged. The implementation of this method includes the logic to determine whether the session ID needs to be encoded in the URL. For example, if the browser supports cookies, or session tracking is turned off, URL encoding is unnecessary.
For robust session tracking, all URLs emitted by a servlet should be run through this method. Otherwise, URL rewriting cannot be used with browsers which do not support cookies.
Like mentioned above, use the URLEncoder.encode() ( with two params ): http://java.sun.com/j2se/1.4.2/docs/api/java/net/URLEncoder.html#encode(java.lang.String,%20java.lang.String)

Similar Messages

  • Error: Error #2101: The String passed to URLVariables.decode() must be a URL-encoded query string co

    Error: Error #2101: The String passed to URLVariables.decode() must be a URL-encoded query string containing name/value pairs. at Error$/throwError() at flash.net::URLVariables/decode() at flash.net::URLVariables() at flash.net::URLLoader/onComplete() _________________________________________________________________________________________ _____________________ stop(); var DepartVars:URLVariables = new URLVariables(); var DepartURL:URLRequest = new URLRequest("scripts/www.mywebsite.com/depart.php"); DepartURL.method = URLRequestMethod.POST; DepartURL.data = DepartVars; var DepartLoader:URLLoader = new URLLoader; DepartLoader.dataFormat = URLLoaderDataFormat.VARIABLES; DepartLoader.addEventListener(Event.COMPLETE, completeDepart); depart_btn.addEventListener(MouseEvent.CLICK, DepartUser); // Function to run when the Depart button is pressed function DepartUser (event:MouseEvent):void{             // Ready the variables here for sending to PHP           DepartVars.post_code = "Depart";         // Send the data to the php file           DepartLoader.load(DepartURL);         welcome_txt.text = "Processing request...Bon Voyage"; } // Close DepartUser function /////////////////////////////////////// // Function for when the PHP file talks back to flash function completedepart(event:Event):void{     if (event.target.data.replyMsg == "success") {             var refreshPage:URLRequest = new URLRequest("javascript:NewWindow=window.location.reload(); NewWindow.focus(); void(0);");             navigateToURL(refreshPage, "_self");         } // Close completeDepart function ////////////////////////////// // Code for the View res Button var viewRes:URLRequest = new URLRequest("view_res.php"); viewRES_btn.addEventListener(MouseEvent.CLICK, viewResClick); function viewResClick(event:MouseEvent):void {     navigateToURL(viewRes, "_self"); } ///////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////// // Code for the Edit Res profile Button var editRes:URLRequest = new URLRequest("edit_res.php"); editRES_btn.addEventListener(MouseEvent.CLICK, editResClick); function editResClick(event:MouseEvent):void {     navigateToURL(editRes, "_self"); } }

    this should be in the as3 forum.  but you need to return name/value pairs from your php file.

  • Error #2101: The String passed to URLVariables.decode() must be a URL-encoded query string containin

    Error: Error #2101: The String passed to URLVariables.decode() must be a URL-encoded query string containing name/value pairs. at Error$/throwError() at flash.net::URLVariables/decode() at flash.net::URLVariables() at flash.net::URLLoader/onComplete() _________________________________________________________________________________________ ____________ stop(); var DepartVars:URLVariables = new URLVariables(); var DepartURL:URLRequest = new URLRequest("scripts/www.mywebsite.com/depart.php"); DepartURL.method = URLRequestMethod.POST; DepartURL.data = DepartVars; var DepartLoader:URLLoader = new URLLoader; DepartLoader.dataFormat = URLLoaderDataFormat.VARIABLES; DepartLoader.addEventListener(Event.COMPLETE, completeDepart); depart_btn.addEventListener(MouseEvent.CLICK, DepartUser); // Function to run when the Depart button is pressed function DepartUser (event:MouseEvent):void{             // Ready the variables here for sending to PHP           DepartVars.post_code = "Depart";         // Send the data to the php file           DepartLoader.load(DepartURL);         welcome_txt.text = "Processing request...Bon Voyage"; } // Close DepartUser function /////////////////////////////////////// // Function for when the PHP file talks back to flash function completedepart(event:Event):void{     if (event.target.data.replyMsg == "success") {             var refreshPage:URLRequest = new URLRequest("javascript:NewWindow=window.location.reload(); NewWindow.focus(); void(0);");             navigateToURL(refreshPage, "_self");         } // Close completeDepart function ////////////////////////////// // Code for the View res Button var viewRes:URLRequest = new URLRequest("view_res.php"); viewRES_btn.addEventListener(MouseEvent.CLICK, viewResClick); function viewResClick(event:MouseEvent):void {     navigateToURL(viewRes, "_self"); } ///////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////// // Code for the Edit Res profile Button var editRes:URLRequest = new URLRequest("edit_res.php"); editRES_btn.addEventListener(MouseEvent.CLICK, editResClick); function editResClick(event:MouseEvent):void {     navigateToURL(editRes, "_self"); } }

    I have a similar problem
    whey I use .txt my code works, but when I change to .dat external file, it get error 1067
    my code:
    import flash.display.Sprite;
    import flash.events.*;
    import flash.net.URLLoader;
    import flash.net.URLLoaderDataFormat;
    import flash.net.URLRequest;
    var loader: URLLoader = new URLLoader();
    loader.dataFormat = URLLoaderDataFormat.VARIABLES;
    loader.addEventListener(Event.COMPLETE, loading);
    loader.load(new URLRequest("rssnews.dat"));
    function loading(e: Event): void {
              news_1.text = trace(e.target.data.titulo);
              news_2.text = trace(e.target.data.texto);

  • I have a string in URL encoded format. How do I unencode?

    I'm sure there is a single command for this but I can't find it, so my workaround is a long list of 'replace' commands :-(
                    vari = vari.replace(/%22/g,"'");
                    vari = vari.replace(/%20/g," ");
                    vari = vari.replace(/%3C/g,"<");
    etc.
    Help!!! How do I unencode  my URL encoded string?

    http://livedocs.adobe.com/flex/3/langref/package.html#unescape()
    try this link..
    unescape(); function.. it is a global function
    hope this helps,
    BaBo,

  • Unescaping URL Encoded Strings

    Anyone know how to unescape URL encoded strings using XSL? I can use the translate() function to replace the + signs with spaces but the %3F and %3E style characters are causing problems. The escaped characters are in an XML doc.
    Any help would be appreciated.

    Anyone know how to unescape URL encoded strings using XSL? I can use the translate() function to replace the + signs with spaces but the %3F and %3E style characters are causing problems. The escaped characters are in an XML doc.
    Any help would be appreciated.

  • URL Encoder not working in Netscape

    Hi All,
    I am using url encoding in my servlet for redirecting a request. The query string values has some spaces in them. The code I have used is shown below
    String mname = "Jason Perry"
    response.sendRedirect
    ("http://194.216.8.238:8081/merchant/merch.merchant?msgid=RP&mctid=1111242&totcp="+price.toString()+"&mname="+URLEncoder.encode(mname)+"&mtxnid=UY675432");
    Please note that 194.216.8.238:8081 is an IP of another server located outside our network.
    In Netscape the url is shown as http://194.216.8.238:8081/merchant/merch.merchant?msgid=RP&mctid=1111242&totcp=15
    &mname=Jason Perry&mtxnid=UY675432
    The space is not getting replaced with the plus.
    But I have observed that if the redirection is to the same server on which the servlet is running, it works fine.
    I am at loss as to why url encode is not working when routing the request to another server. I am using Netscape 4.77 .
    This is works in IE fine.
    Your inputs are appreciated.
    Thanks
    Malini

    Yeah had this problem before, use the java.net.URLEncoder class:
    <%@ page language="java" import="java.net.URLEncoder"%>
    <%
    String url = "http://194.216.8.238:8081/merchant/merch.merchant?msgid=RP&mctid=1111242&totcp=15
    &mname=Jason Perry&mtxnid=UY675432"
    String encodedUrl = URLEncoder.encode(url);
    response.sendRedirect(encodedUrl);
    %>

  • How to set username and password before redirecting to a RESTful webservice

    I am a .Net developer who has developed a webservice used by my ColdFusion colleagues. They are using ColdFusion 9 but I'm not sure if they have incorporated any of the newer features of ColdFusion in their apps. Here is a snippet of how they have been invoking the webmethods:
    <cfscript>
                         ws = CreateObject("webservice", "#qTrim.webServiceName#");
                         ws.setUsername("#qTrim.trimAcct#");
                         ws.setPassword("#qTrim.trimpwd#");
                         wsString=ws.UploadFileCF("#qTrim.webserviceurl#","#objBinaryData#", "#qFiles.Filename#", "Document", "#MetaData#");
                </cfscript>
    As I understand things, the .setUsername and .setPassword correspond to the Windows credentials the CF Admin set when the URL of the .Net webservice was "registered" and given its "name" (for the CreateObject statement above). I have 4 webmethods that are all invoked in this manner and this SOAP protocol works adequately for us. Please note that this ColdFusion web app authenticates anonymous remote internet users by prompting for a username and password and compares them to an application database (i.e. Microsoft calls this "forms authentication"). Because only a few Windows domain accounts are authorized to call this .Net webservice, the above code always uses the same username/password constants and it all works.
    My question involves the newest webmethod added to the .Net webservice. It requires that callers must invoke it as a RESTful service which means it must be invoked by its URL. Here is a snippet of C# code that invokes it from an ASP.NET webclient:
                string r = txtRecordNumber.Text;
                string baseurl = "http://localhost/sdkTrimFileServiceASMX/FileService.asmx/DownloadFileCF?";
                StringBuilder url = new StringBuilder(baseurl);
                url.Append("trimURL="); url.Append(txtFakeURLParm.Text);
                url.Append("&");
                url.Append("TrimRecordNumber="); url.Append(txtRecordNumber.Text);
                Response.Redirect(url.ToString());
    I assume a ColdFusion script could easily build a full URL as above with appended querystring parameters and redirect. Is there some way for the CF code redirecting to a RESTful webservice (by way of its URL) to set the Username and Password to this Windows account mentioned above? When the DownloadFileCF webmethod is hit it must be with the credentials of this special Windows domain account. Can that be set by ColdFusion someway to mimic the result of the SOAP technique (the first snippet above).
    I hope my question is clear and someone can help me make suggestions to my ColdFusion colleagues. Thanks.

    Can you clarify what you mean by "establish a different Windows identity"?  Usually passing identity to a web site or service means adding something to the request's HTTP headers.  This could be a cookie in the case of .NET forms authentication or the "Authorization" header in the case of basic authentication.
    The SOAP web service invocation code you posted does use basic authentication, according to the CF docs "ColdFusion inserts the user name/password string in the authorization request header as a base64 binary encoded string, with a colon separating the user name and password. This method of passing the user name/password is compatible with the HTTP basic authentication mechanism used by web servers."
    http://help.adobe.com/en_US/ColdFusion/9.0/Developing/WSc3ff6d0ea77859461172e0811cbec13a13 -7fe0.html
    If you need to mimic the SOAP techinque you should have basic authentication enabled for your REST service endpoints.
    If your authentication method is different then CF developers will need to add the appropriate HTTP headers to their service calls.  Note that calling a REST service from CF would probably be accomplished using the CFHTTP tag if the service is designed to be consumed by the CF server.

  • Hi, how to use URL encoding in jsp

    hi, how to apply URL encoding in jsp for a string, could u pls suggest some ideas to use URL encoding in jsp
    thank you in advance

    hi, thnx for the reply, but my problem is to use url encoding method
    i would u like to know how to represent in jsp program i have asp code some thing like this
    href='/project/tel_number.asp?team=<%=DbRecTeam("id")%>&name=<%=Server.URLEncode(DbRec("name"))%>'
    i would like to know how replace that Server.URLEncode stmt in jsp, could u pls suggest some equivalent method for the above stmt
    thanx in advance

  • XML to URL Encoded (XSLT?)

    I have some data in a Document object and need to convert it to URL encoded format so, for example this:
    <share>
    <code>GSK</code>
    <price>13.34</price>
    </share>
    becomes something like...
    &code=GSK&price=13.34& ...
    I've been looking into doing this with XSLT but have run into difficulties. Do you think this is the best way of solving this problem, or is there another easier way?
    Thanks.

    I did something similar, basically takes a incoming XML file and output a HTML with certain link containing XML element value as query string. One of the things you have to be careful is, like Dr. Clap mentioned, to properly encode the value. I accompolished by using java extension in my XSL.
    For example:
    <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
              xmlns:encode="java.net.URLEncoder"
              extension-element-prefixes="encode"
              version="1.0">
         <xsl:template match="/">
              <xsl:variable name="myURL" select="concat('?blah=', encode:encode($myValueFromXML))" >
         </xls:template>
    </xsl:stylesheet>

  • Apache plugin url encoding

    the following is on HP Apache-based Web Server/1.3.26
    with the mod_wl.so from 6.1 sp3 proxying to a 6.1 sp3 backend and I tried setting
    up QueryFromRequest ON to no avail.
    I am having the following problem with the BEA proxy plugin for Apache. I have
    a very simply scenario to demonstrate it. Lets say that you have the following
    directory/file structure:
    /applications
         /DefaultWebApp
              spaceLink.htm
              /space demo
                   resource.htm     
    NOTE: There is a "space" in the "space demo" directory name.
    Now, spaceLink.htm has a link to the file resource.htm in the "space demo" directory.
    Here is the html:
    <html> <body> click here </body> </html>
    Now assume that apache is sitting in front of this BEA box and proxying requests
    to the BEA box.
    If the Apache-BEA proxy plugin is proxying the request to BEA, then the request
    is made correctly from the browser to the proxy as:
    GET /space%20demo/resource.htm HTTP/1.1
    Notic the browser is correctly URL encoding the request.
    BUT, the apache-BEA proxy plugin is incorrectly proxying the request to the BEA
    box:
    GET /space demo/resource.htm
    Notice the Apache-BEA proxy is not URL encoding the request, so when BEA gets
    it he thinks this is a request for "/space" and "demo/resource.htm" is the http
    version.
    This problem DOES NOT happen if I use the generic http proxy module provided with
    Apache.
    Has anyone seen this problem before?
    Please get back to me if you have some information.
    Thanks,
    Cole Crawford
    Paymentech

    the following is on HP Apache-based Web Server/1.3.26
    with the mod_wl.so from 6.1 sp3 proxying to a 6.1 sp3 backend and I tried setting
    up QueryFromRequest ON to no avail.
    I am having the following problem with the BEA proxy plugin for Apache. I have
    a very simply scenario to demonstrate it. Lets say that you have the following
    directory/file structure:
    /applications
         /DefaultWebApp
              spaceLink.htm
              /space demo
                   resource.htm     
    NOTE: There is a "space" in the "space demo" directory name.
    Now, spaceLink.htm has a link to the file resource.htm in the "space demo" directory.
    Here is the html:
    <html> <body> click here </body> </html>
    Now assume that apache is sitting in front of this BEA box and proxying requests
    to the BEA box.
    If the Apache-BEA proxy plugin is proxying the request to BEA, then the request
    is made correctly from the browser to the proxy as:
    GET /space%20demo/resource.htm HTTP/1.1
    Notic the browser is correctly URL encoding the request.
    BUT, the apache-BEA proxy plugin is incorrectly proxying the request to the BEA
    box:
    GET /space demo/resource.htm
    Notice the Apache-BEA proxy is not URL encoding the request, so when BEA gets
    it he thinks this is a request for "/space" and "demo/resource.htm" is the http
    version.
    This problem DOES NOT happen if I use the generic http proxy module provided with
    Apache.
    Has anyone seen this problem before?
    Please get back to me if you have some information.
    Thanks,
    Cole Crawford
    Paymentech

  • Problem in URL Encoding  in J2ME

    Hi,
    I have a problem in URL Encoding in J2ME. As i read thru the J2ME APIs, i found that J2ME doesn't support it.
    Or can i use the URL Encoding in J2SE to modify and put into J2ME?
    Or someone out there have done such coding?
    Reply me!
    Thanks!...

    like this:
    public static String URLEncoder(String str) {
    if (str == null) return null;
    StringBuffer resultStr = new StringBuffer( str.length() );
    char tmpChar;
    for( int ix=0; ix<str.length(); ix++ ) {
    tmpChar = str.charAt( ix );
    switch( tmpChar ) {
    case ' ' : resultStr.append( "%20" );
    break;
    case '-' : resultStr.append( "%2D" );
    break;
    case '/' : resultStr.append( "%2F" );
    break;
    case ':' : resultStr.append( "%3A" );
    break;
    case '=' : resultStr.append( "%3D" );
    // System.out.println( "tmpChar = '=' " + "add %3D " );
    break;
    case '?' : resultStr.append( "%3F" );
    // System.out.println( "tmpChar = '?' " + "add %3F " );
    break;
    case '#' : resultStr.append( "%23" );
    break;
    case '\r' : resultStr.append( "%0D" );
    break;
    case '\n' : resultStr.append( "%0A" );
    break;
    default : resultStr.append( tmpChar );
    break;
    return resultStr.toString();
    }

  • URL encoding special characters in episode name

    Hello,
    Configuration :
    1 capture agent on a MAC MINI under MAC OS X 10.6.5
    1 PCP2 server on an XServe under MAC OS X 10.6.5
    I encounter this problem since 10.6.5 update :
    When I stop a Podcast capture, if episode name is for example abcd#, '#' character is "URL encoded" to '%23' sequence. So the final file name of the podcast is abcd%23.m4v instead of abcd#.m4v.
    This was not the case under 10.6.4.
    I tried this solution : renaming the file adding a task in the workflow ; this task launches a bash script which renames all files replacing '%23' sequences by a '#' character.
    Files are well renamed, but the task don't give hand back, and XGrid task never ends.
    Got this error in /var/log/system.log :
    sandbox [nnn] : bash(12146) : deny file-ioctl /path/to/bash-script
    Thanks for help

    Problem solved !
    I had a problem with rights on my podcasts directory.
    So, for those who are interested, you can add a task to your workflow, for example a bash batch file which renames all files in your podcast directory whose name contains a special character :
    for fic in `ls`
    do
    mv $fic `echo $fic | sed -e s/%23/#/g`
    done
    the additional workflow task must contain 2 items :
    --- an item "command" of type String with the path of your batch file as value
    --- an item "dependsOnTasks" of type array with an element of type string with "postflight" as value

  • URL-rewriting not working with redirect/

    I couldn't find an answer to the following problem in any of the threads:
    When navigating between pages via internal forwards, I can safely turn off cookies in my browser; the session id will be written into the requested URL, and so session state is being maintained properly. But when I use <redirect/> in a navigation rule in faces-config.xml to force Faces to redirect the request to the target page via an HTTP redirect, the URL is not being rewritten properly - the session id is missing, and so session state is not being maintained. This results in the loss of all user/session specific data for the current browser session.
    I suspect that using <redirect/> results in the Faces Lifecycle being terminated by calling responseComplete() before rendering the view, and that at this point, instead of calling encodeRedirectURL() before redirecting, the URL is being redirected without being rewritten to contain the session id.
    My question thus are: Is my suspicion correct? And is there any solution to this problem?

    What I forgot to mention: I'm using Sun's RI of JSF running on Tomcat 5.0.19.
    Any help is appreciated!
    Wolfgang

  • URL Encoding and Decoding in OSB

    Hi,
    Do we have out-of-box solution in OSB to decode XML which is URL encoded and encode XML to URL encoding. If so how can I do it.
    This might be basic question. I am unable to figure out. new to OSB.
    Thanks
    Sham.

    Hi Sham,
    Probably these are what you looking for...
    fn-bea:inlinedXML()
    fn-bea:serialize()
    fn-bea:serialize() to represent an XML document as a string
    fn-bea:inlinedXML() to parses textual XML and returns an instance of the XQuery 1.0 Data Model.
    Supported Function Extensions from Oracle
    http://docs.oracle.com/cd/E23943_01/admin.1111/e15867/xquery.htm#i1101407
    Oracle’s XQuery Implementation
    http://docs.oracle.com/cd/E13162_01/odsi/docs10gr3/xquery/extensions.html
    Cheers,
    Vlad
    It is considered good etiquette to reward answerers with points (as "helpful" - 5 pts - or "correct" - 10pts)
    https://forums.oracle.com/forums/ann.jspa?annID=893

  • URL encoding in ABAP

    Hi all,
    do you know an ABAP function to encode a string to pass in an url so that to get "http%253A%252F%252Fsap.com%252Fxi%252FAP%252FCRM%252FGlobal"
    I'm passing dynamicParameter via an URL from an ABAP to a Java WD appli. They are automatically decoded on java side, but I need to encode them on ABAP side.
    Thanks and regards,
    Marie-Pierre

    Hi,
    there is new function in ABAP for escaping characters in different formats, including URL/URI.
    Predefined escape function in ABAP
    Peter

Maybe you are looking for

  • Missing menus from SPRO after a SAP All In One install

    Hi guys hoping someone could point me in the right direction on this one. About a year ago I build 3 SAP AIO systems (one being dev, another being UAT, last being Production). The way I installed was to use the manual on all 3 systems and not to inst

  • Report for payment terms in PO

    Hi Gurus, Is there any report which gives payment teroms of  PO. Please suggest Regards, Subbu

  • No Reporting Symbol for the cube.

    Hi all, no reporting symbol for an cube. I created Z cube without any aggregates and loaded data sucessfuly QM status is green but i'm not able to see the reporting symbol next the request id.  When i checked in manage content data, data is available

  • HOW TO USE LOOP INSIDE A Button.add_Click()

    this is the code This do the work at one time only . I WANT  TO DO ONE ONE Kindly Help me $btn.Add_Click({ #########NGM############ If (Test-Connection 192.168.35.9 -Quiet -Count 3) $btn1.Backcolor="GREEN" else {$btn1.Backcolor="RED"}  ###########KPK

  • MySQL JDBC & RMI

    I have been developing a project, in which I have a Remote Object(RMI) which returns a ResultSet object obtained by MySql JDBC(J-Connector). The problem is the ResultSet object does not implement the Serializable Interface so that it cannot be passed