Request.getParameter() values in servlet? Urgent

String str=request.getParameter();
I am facing a problem when i submit the arabic values from hidden form fields using javascript.
In servlet when i tries to retrive the arabic values stored in the session, it displays only
garbage values(ie. ?????????).
How to solve this problem?
Please clarify and if possible give some samples.
Thanks & Regards,
Govindaraman

Hi Govindaraman,
in O'Reilly's Servlet book in the internationalization section it describes how. You have to change the String returned into bytes using the proper enconding, then back into a String to it will convert to Unicode.
The basics are this:
String parameterName="your param name";
String encoding = "your charset encoding on the page";
String value = request.getParameter(parameterName);
value = new String(value.getBytes(), encoding);
value is now a Unicode string that should be correctly interpreted.
You can use new String( oldString.getBytes(), encoding) to convert between charsets.

Similar Messages

  • Submitting request.getParameter value on page submit

    I am getting the value from the request parameter as under
    <%
    String mod = request.getParameter("mod");
    %>
    Now i want this mod value to be submitted as page submits. For that i used:
    <h:inputHidden id="mod_field" value="" />
    Now the question is how to pass the above mod value using this hidden input? and secondly how to bind it with the property in the backing bean (say the name of my backing bean is bean.navigation) so that i can access and use the value.

    Hay this exception has again started showing me up.
    exception
    org.apache.jasper.JasperException: javax.servlet.jsp.JspException: javax.faces.FacesException: javax.faces.el.ReferenceSyntaxException: param.mod
         org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:510)
         org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:375)
         org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
         org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
         com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:322)
         com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:147)
         com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:87)
         com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200)
         com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:117)
         javax.faces.webapp.FacesServlet.service(FacesServlet.java:198)
    root cause
    javax.servlet.ServletException: javax.servlet.jsp.JspException: javax.faces.FacesException: javax.faces.el.ReferenceSyntaxException: param.mod
         org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:854)
         org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:791)
         org.apache.jsp.tsheetRcode_jsp._jspService(tsheetRcode_jsp.java:344)
         org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
         org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
         org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
         org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
         com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:322)
         com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:147)
         com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:87)
         com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200)
         com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:117)
         javax.faces.webapp.FacesServlet.service(FacesServlet.java:198)
    root cause
    javax.faces.el.EvaluationException: javax.faces.FacesException: javax.faces.el.ReferenceSyntaxException: param.mod
         com.sun.faces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:206)
         com.sun.faces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:154)
         javax.faces.component.UIOutput.getValue(UIOutput.java:147)
         com.sun.faces.renderkit.html_basic.MenuRenderer.getCurrentSelectedValues(MenuRenderer.java:670)
         com.sun.faces.renderkit.html_basic.MenuRenderer.renderOption(MenuRenderer.java:549)
         com.sun.faces.renderkit.html_basic.MenuRenderer.renderOptions(MenuRenderer.java:525)
         com.sun.faces.renderkit.html_basic.MenuRenderer.renderSelect(MenuRenderer.java:481)
         com.sun.faces.renderkit.html_basic.MenuRenderer.encodeEnd(MenuRenderer.java:430)
         javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:712)
         javax.faces.webapp.UIComponentTag.encodeEnd(UIComponentTag.java:616)
         javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:539)
         com.sun.faces.taglib.html_basic.SelectOneMenuTag.doEndTag(SelectOneMenuTag.java:505)
         org.apache.jsp.tsheetRcode_jsp._jspx_meth_h_selectOneMenu_0(tsheetRcode_jsp.java:449)
         org.apache.jsp.tsheetRcode_jsp._jspService(tsheetRcode_jsp.java:263)
         org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
         org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
         org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
         org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
         com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:322)
         com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:147)
         com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:87)
         com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200)
         com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:117)
         javax.faces.webapp.FacesServlet.service(FacesServlet.java:198)

  • Request.getParameter("") values: Are they null or ""?

    Hello:
    I have a web page that links up to a MYSQL database. I use JSP files to process the database queries from an HTML form. However, I am having an issue after moving the code from MYSQL 5.0 and JDK 1.5 to a machine with MYSQL 4.X and JDK 1.4.X
    I am enabling user to enter several pieces of search criteria that I, in turn, use to build the SQL syntax statement. And I test to see which HTML fields the user has entered something into so that the SQL only includes those where statements.
    I first had the following to process the individual search criteria into SQL where statements:
    String tester1 = request.getParameter("tester");
    String tester = "";
    if (tester1 != "") {
         tester += " tester like \"" + tester1 + "%\"" + " and ";
         } else {
    tester += "";
    so if the user enter "Tommy in the tester field as a search criterion this part of the SQL would be
    tester like Tommy%
    Then I build the select statment with only the where statements that the user is interested in (and provided search criteria on):
    String syntax = "Select * from database where ";
    String array[] = { tester, call_from, call_to, r_no, rec_no, date };
    for (int counter=0;counter<array.length;counter++){
              if (array[counter] != "") {
              syntax += array[counter];
    int a = 0;
    int b = (syntax.length() - 4);
    String syntax1 = syntax.substring(a, b);
    so the above would create
    Select * from database where tester like Tommy%
    This worked on the previous machine. However, it no longer works on the machine with the older apis. So I have tried everything to weed out the blank database fields so they are not factored in the query (if they are they return nothing as these fields are required to be entered into the database). I tried this:
    String tester1 = request.getParameter("tester");
    String tester = "";
    if ((tester1 != "") || (tester1 != null)){
         tester += " tester like \"" + tester1 + "%\"" + " and ";
         } else {
    tester += "#";
    . . . and then . . .
    String syntax = "Select * from database where ";
    String array[] = { tester, call_from, call_to, r_no, rec_no, date };
    for (int counter=0;counter<array.length;counter++){
              if (array[counter] != "#") {
              syntax += array[counter];
    int a = 0;
    int b = (syntax.length() - 4);
    String syntax1 = syntax.substring(a, b);
    But no matter what I try the query that gets sent to the database is as follows:
    Select * from qa_data where tester like "%" and called_from_1 = "" and call_to = "" and r_no = "" and rec_no = "" and (date >= "" and date <= "")
    So I am at a loss. It appears that I am not testing for the correct value that the browser is sending to my JSP file when a user does not enter a value in the field. What other than "" and null are there? I have tested for one or the other and both. I am at a loss now as to what to do. I am only concerned with IE6/7 and Firefox 1.5
    I output what the value being sent to the JSP file was and it was something like "The tester value is:". So, basically it isn't anything ("").
    Can anyone help me here?

    Rule #1 when comparing strings: use the equals() method, rather than == or !=
    You only use == when checking for null, or checking to see if it is the same object.
    if (tester1 == null || tester1.trim().equals("")){
      // value is null/empty/spaces only
    else {
      // a value is present
    }

  • Unable get complete filepath from jsp page using request.getParameter()

    Hey all,
    i am actually trying to get the selected file path value using request.getParameter into the servlet where i will read the (csv or txt) file but i dont get the full path but only the file name(test.txt) not the complete path(C:\\Temp\\test.txt) i selected in JSP page using browse file.
    Output :
    FILE NAME : TEST
    FILE PATH : test.txt
    Error : java.io.FileNotFoundException: test.txt (The system cannot find the file specified)
    at java.io.FileInputStream.open(Native Method)
    at java.io.FileInputStream.<init>(FileInputStream.java:106)
    at java.io.FileReader.<init>(FileReader.java:55)
    at com.test.TestServlet.processRequest(TestServlet.java:39)
    at com.test.TestServlet.doPost(TestServlet.java:75)
    JSP CODE:
    <%@page contentType="text/html" pageEncoding="UTF-8"%>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>DEMO SERVLET</title>
    </script>
    </head>
    <body>
    <h2>Hello World!</h2>
    <form name="myform" action="TestServlet" method="POST"
    FILE NAME : <input type="text" name="filename" value="" size="25" /><br><br>
    FILE SELECT : <input type="file" name="myfile" value="" width="25" /><br><br>
    <input type="submit" value="Submit" name="submit" />
    </form>
    </body>
    </html>
    Servlet Code :
    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException, FileNotFoundException {
    response.setContentType("text/html;charset=UTF-8");
    PrintWriter out = response.getWriter();
    try {
    String filename = request.getParameter("filename");
    out.println(filename);
    String filepath = request.getParameter("myfile");
    out.println(filepath);
    out.println("<html>");
    out.println("<head>");
    out.println("<title>Servlet TestServlet</title>");
    out.println("</head>");
    out.println("<body>");
    out.println("<h1>Servlet TestServlet at " + request.getContextPath() + "</h1>");
    if (filepath != null) {
    File f = new File(filepath);
    BufferedReader br = new BufferedReader(new FileReader(f));
    String strLine;
    String[] tokens;
    while ((strLine = br.readLine()) != null) {
    tokens = strLine.split(",");
    for (int i = 0; i < tokens.length; i++) {
    out.println("<h1>Servlet TestServlet at " + tokens[i] + "</h1>");
    out.println("----------------");
    out.println("</body>");
    out.println("</html>");
    } finally {
    out.close();
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
    processRequest(request, response);
    Needed Output :
    FILE NAME : TEST
    FILE PATH : C:\\Temp\\test.txt
    Any suggestions Plz??

    As the [HTML specification|http://www.w3.org/TR/html401/interact/forms.html] states, you should be setting the enctype to multipart/form-data to be able to upload files to the server. In the server side, you need to process the multipart/form-data binary stream by parsing the HttpServletRequest#getInputStream(). It is a lot of work to get it to work flawlessly. There are 3rd party API's around which can do that for you, such as [Apache Commons FileUpload|http://commons.apache.org/fileupload] (carefully read the User Guide how to use it).
    You can also consider to use a Filter which makes use of the FileUpload API to preprocess the request so that you can continue writing the servlet code as usual. Here is an example: [http://balusc.blogspot.com/2007/11/multipartfilter.html].

  • Request.getParameter(): special character handling problem

    Hello, there:
    This should be an easy question for the gurus in here.
    I use a string attached to the url as the parameter string, which includes spaces. the system automatically converts them to %20, but when I receive them in my servlet using request.getParameter, a special character, &Acirc; appears; I couldn't proceed with it.
    I suppose this is a common problem but seems that I didn't find topics about it on this forum.
    So anyone can help? Any encoder/decoder APIs to handle it?
    Thanks a lot,
    Sway

    hi,
    escape can solve ur problem
    use js function to submit form like
    function subForm()
    var any_spcl_value ="kdfhjdf$%@#$% 2FGSFG @%@#%@# V";
    mainForm.action = "index.jsp?value="+ escape(any_spcl_value);
    mainForm.submit();
    and use request.getParameter("value");
    u ll get kdfhjdf$%@#$% 2FGSFG @%@#%@# V as it is.
    AE

  • Return value of request.getParameter()

    Is the value returned by request.getParameter() always decoded? I tested with Tomcat on Firefox/IE and it looks like the answer is yes, although I don't find any relevant information in the Servlet API doc.
    So no need to use URLDecode to decode parameter values?

    Thanks man. Got it.

  • How to change the value of request.getParameter("submit")

    <input type="submit" name="submit" value="postLeave" />
    When I click on the submit button, control goes to a servlet file, where I can access the value of submit using request.getParameter("submit") which is the postLeave here. After accessing this value I want to change it's value or unset the "submit" in the same file.....
    Like in php we can do this easily using unset($_POST['submit']) ........ but how can I do this in java servlet....? Is there any method to do this...........? If not, then can anybody tell me the alternative solution for this.
    Deepak Jain
    [email protected]

    tschodt wrote:
    djain29 wrote:
    Is there any alternative solution?Retrieve all request parameters
    http://download.oracle.com/javaee/1.4/api/javax/servlet/ServletRequest.html#getParameterMap%28%29
    store in a new HashMap (which will be mutable)
    do all your operations on your new local copy of the request parameters.
    If you are in a filter have a look at
    http://download.oracle.com/javaee/1.4/api/javax/servlet/http/HttpServletRequestWrapper.html
    Fetching all parameters to a HashMap of course works but it might be a little over the top; fetching the one parameter that should be mutable to a local bean which you then use everywhere is another valid option, one that most web frameworks actually support by providing mapping services of request parameters to bean properties.

  • Not able to get the full value from request.getParameter()

    hi all,
    Iam giving a text input value as" Analysis and tracking" in one jsp form.
    while fetching and assigning the value to another variable using request.getparameter , iam getting only the text "Analysis" , the space after it were ignored andnt displaying it.
    Help me in solving this.
    thanx
    Balaji

    I think you are code is something like this
    <input name="xyz" type="text" value=<%=variable%>>
    HTML ignores spaces. Therefore you are only getting Analysis, the first word, when your browser encounters the first space it ignores whatever is present after that.
    One way of overcoming this is putting double quotes around the text value
    <input name="xyz" type="text" value=<% out.println("\"" + variable + "\""); %>
    Thanks.

  • How to get Int value from request.getParameter()?

    Hi all,
    I have a integer value which is passed from one page to another page.
    i am geting this value in the next page using
    request.getParameter().
    Eg.
    Suppose value of "i" in page1 is 32, i pass this as hidden variable to next page.
    <input type="hidden" Value="<%=i%>" NAME="limit">
    in page2, i fethch this value to a variable by name "limit"
    String limit=request.getParameter("limit");
    but, since value stored in limit is int, i can't assign it to string.
    i can't use request.getParameter for int values.
    How to solve my problem.
    I know it is simple,
    Pls. help me
    Regards
    ASh
    String limit=request.getParameter("limit");

      String limitSTR = request.getParameter("limit");
      int limit = -1;
      if (limitSTR != null) limit = Integer.parseInt(limitSTR);

  • Null value in Session vars and request.getParameter

    We're migrating our application from iPlanet.
              Under iPlanet, when we looped through a resultset and set the values to
              session variables - it worked fine, even when a resultset value was null,
              but in WebLogic, I get the following error:
              java.lang.IllegalArgumentException: key/value is null
              Is there anyway to "turn this off" so it behaves like iPlanet?
              My second question is that we have many JSP's that check to see if a
              parameter is null in javascript:
              Here's the code:
              function onLoad() {
              document.form.elements[0].focus();
              // Check to see if the user is coming from a shortcut
              var imageName = "<%=request.getParameter("imageName")%>";
              if (imageName == "null") {
              selectTop("<%=select_image%>");
              } else {
              selectTop(imageName);
              <% if (tableIndex == 2) { %>
              loadShortcutIcon(13,100);
              <% } %>
              in iPlanet, when the parameter "imageName" is not in the URL, the javascript
              variable gets set to "null" - but in WebLogic, it is set to a blank string -
              "". Is there anyway to make this return null like iPlanet?
              Thanks,
              Matt
              

    Hi,
    the URL parameter is added just for the request to the page. When you press the command button then you issue a new request that does not have a URL parameter added. To work around this, you can use a PhaseListener that stores the URL request parameter in the session for later use
    Frank

  • Servlets, request.getParameter()

    How do I test a servlet in Jdeveloper
    that wants a param from the calling URL, like
    http://.../servlet?myparam=myvalue
    via
    val=request.getParameter("myparam");
    I did already figure out, how to get init-Parameters, from
    webtogo.ora
    with
    getInitParameter();
    but that is not what I want, I want normal
    parameters.
    Running my servlet within jdev pops up
    a page with WebAppRunner.html in my Browser,
    that calls the servlet in jdev, I even tried handcoding my param there with no succes
    so far.
    Thanks for any help in advance.
    Rx
    null

    Hi Ganesh,
    Rx can u help me out on this.
    I have an applet that access a servlet and fetches information
    via a vector. The applet also sends the information via vector
    back to the Servlet. But the servlet fails to write into the
    database.
    Thanks in advance!!!Thank you for your confidence,
    I'm sorry for not being able to answer your question right away.
    * You might post some code examples,
    hopefully reduced to the minimum of what is
    needed to understand your problem.
    * You should consider opening a new thread
    as your problem seems only loosly related
    to mine.
    * I am just an Oracle JDeveloper user having
    gained some experience with jdev and the bc4j framework, but without the insight
    of the sourcecode.
    * You can however expect the people from
    the Oracle JDeveloper Team to be more
    responsive to user questions. - My general
    experience is, that the responsiveness
    in open source projects forums/mailing lists/newsgroups is much better. - They should be interested in their user's problems.
    Rx
    null

  • Jsp request.getparameter doesn't get querystring values

    We have recently deployed our jsp application which was running successfully on ias8i apache jserv into the 8.1.7 JVM and configured the mod_ose on the Oracle HTTP server every thing seems to be fine except the following case.
    Here we are accepting the userid,password from a jsp and submiting to the same jsp for action on submit we are reading a combination of jsp form feilds and url querystrings strangely we are able to get values only for the form feilds and querystrings return null.
    The same peice of code works fine on apache jserv implementation.
    Any clues please write to me.
    <SCRIPT Language="JavaScript">
    function check_password()
    document.Login.action ="problem.jsp?tab=YES&nSessionId="+document.Login.sessionid.value+"&nUserId=" + document.Login.userid.value;
    document.Login.target = "_top";
    document.Login.method = "post";
    document.Login.submit();
    </SCRIPT>
    <%
    userid = request.getParameter("userid");
    password = request.getParameter("password");
    tab = request.getParameter("tab");
    %>
    <form name="Login" Border="0" TopMargin="0" LeftMargin="0" Marginheight="0" Marginwidth="0">
    <table>
    <tr>
    <td class="FORMHEADERLEFTB"><b> Login</td>
    <td class="FORMHEADERLEFT">:</td>
    <td><input TYPE="TEXT" NAME="userid" SIZE="25" VALUE="<%=userid%> MAXLENGTH="10"></td>
    </tr>
    <tr>
    <td class="FORMHEADERLEFTB"> Password</td>
    <td class="FORMHEADERLEFT">:</td>
    <td><input TYPE="password" NAME="password" SIZE="25" VALUE="<%=password%>" MAXLENGTH="10" onChange="check_password()"></td>
    </tr>
    </table>
    <input type="hidden" name="sessionid" value="999999">
    </form>
    Thanks
    suresh
    null

    How are you retrieving the parameter values? I am able to retrieve parameters successfully using the following simple testcase:
    untitled1.jsp:
    <form method="post" action="servlet1">
    <P>Username:
    <input type="text" name="un"/>
    </P>
    <P>Password:
    <input type="text" name="pw"/></P>
    <P>
    <input type="submit" value="Submit"/>
    </P>
    </form>
    servlet1.java: (copy and paste from doGet() to doPost() method depending on value of form method in untitled1.jsp)
    String un = request.getParameter("un").toString();
    String pw = request.getParameter("pw").toString();
    out.println(un);
    out.println(pw);
    Please test this and let me know your results and the differences with what you are trying to do.
    Regards,
    Lynn
    Java Tools Team

  • Retriving only hidden parameters from request.getParameter

    Hi,
    I want to retrive only the hidden parameters from previous JSP page into current JSP page. The problem here is that my hidden parameters in privious page are dynamically generated (parameter names are decided based on values retrived from the database) and I cannot retrive them using "request.getParameter(<parametername>)"
    Can I find the parameter type (i.e. text box, text area, checkbox, radio or hidden) from the request.getParameter() or request.getParameterNames() methods? or is there any other way to find it.
    Thanks in advance for any help

    You can use the getParameterNames() or getParameterMap() methods from javax.servlet.ServletRequest to get all the parameters in the request. Even if they're dynamically generated, and you don't know the names in advance, these methods will ferret them out.
    getParameterMap() returns name String, values String [] pairs, so you'll have to work with String arrays to get the input out. It's got to be that way to accomodate checkboxes and other HTML form elements that can send more than one value for a given name.
    I prefer getParameterMap, because I don't like using Enumerations as much. - MOD

  • In WL6.1 request.getParameter returns NULL for URL parameters that exist

              With the following URL, I get different results between WebLogic 4.5.1 and WebLogic
              6.1:
              http://phx-kmccarthy.medspecialists.net/tsweb/ParametersTest.jsp?apple=macintosh&tree&dog&country=USA
              Weblogic 6.1 returns:
              query string = apple=macintosh&tree&dog&country=USA
              apple = macintosh
              tree = null
              dog = null
              country = USA
              WebLogic 4.5.1 returns:
              query string = apple=macintosh&tree&dog&country=USA
              apple = macintosh
              tree =
              dog =
              country = USA
              here is the jsp...
              <%--
              * ParamtersTest.jsp which shows that empty parameters are ignored in WebLogic
              6.1
              --%>
              <%
              String apple, tree, dog, country;
              apple = request.getParameter("apple");
              tree = request.getParameter("tree");
              dog = request.getParameter("dog");
              country = request.getParameter("country");
              out.println("<br>query string = " + request.getQueryString());
              out.println("<br>apple = " + apple);
              out.println("<br>tree = " + tree);
              out.println("<br>dog = " + dog);
              out.println("<br>country = " + country);
              %>
              From the documentation on the getParameter() method:
              Returns the value of a request parameter as a String, or null if the parameter
              does not exist.
              In my opinion, not existing and being empty are different. Also, every other web
              application environment we've dealt with (including WebLogic 4.5.1) treats them
              as different. If the parameter doesn't have a value, (i.e. ...&tree&dog&...) then
              getParameter() returns the empty string, not null.
              As a result of this we have JSPs that break when running on 6.1.
              

    Found the solution at last. Tomcat servlet container can't handle the chunked transfer-encoding that the J2ME Wireless Toolkit uses when you call outputstream.flush() in midlet. Using outputstream.close() instead of outputstream.flush() will avoid this problem for small requests. For all the codes in the articles on Http Post in Wireless Forum, don't use outputstream.flush() and it will run perfectly - Servlet's request.getParameter(parameterName) will work fine in doPost method.

  • Request.getParameter comes blank on some browser, while works on other

    Hi,
    Need urgent help to rectify thie problem
    I am accessing a application hosted on Weblogic8 SP2 as WAR file
    In this application I am able to login and search result and go to home page of one the search results.
    But on some other machine on same IE6 or Firefox the forward from search results to Home page stops in a URL which is being used in middle to forward.
    URL (also used in JSP pasted below) is created in action class called by search result link.
    This is how it is impleted.....
    I have a replicated link with unique Id on Search result page which forward me to this JSP
    <head>
    <SCRIPT language="JavaScript">
    function submitform()
    var urlString = "<%=request.getAttribute("urlString")%>";
    document.form1.action =urlString;
    document.form1.submit();
    </SCRIPT>
    </head>
    <body onload="submitform();">
    <form name = "form1" method = "POST">
    <input type = "hidden" name="myVariable" value="myValue"></input>
    <input type = "hidden" name="empID" value="<%=request.getAttribute("empID")%>"></input>
    <input type = "hidden" name="ownerName" value="<%=request.getSession().getAttribute("ownerName").toString()%>"></input>
    </form>
    </body>
    </html>
    Once this JSP is submitted this URL has to call a action class to validate some session attribute and the hidden value in JSP above named as "myVariable" which is checked for some "myValue". So it will then Forward to Home Page.
    On some machines IE6 or FireFox this is working as expected and logs show correct results all through.
    But some other machines with same Browser, the "myVariable" value in action class is coming blank and so request stops at the URL submit in above JSP. However no errors or Exceptions are thrown.
    Please help in this issue if some one can suggest any solution or way to dig up more on this.
    Also if I havent explained clearly by chance, then pls give me another chance to explain more.
    Thanks a lot for all your efforts.

    Hi,
    Thanks for reply,
    Nop our WAR do not have any filter. and We used IE 6 and FireFox 2 on both machines. We also saw the Options for both browser and matched these for both machines. They were same.
    The javascript we used was to submit the form on click of a Href. but it do not use any JSP element. We had just set a value in <input type="hidden"...
    and this value we fetch in Java class by saying request.getParameter("name");

Maybe you are looking for