Solved

Passing A Value -- HELP!

Posted on 2004-10-06
10
179 Views
Last Modified: 2010-03-31
Greetings!

I'm getting the following error:

Error:         java.lang.NumberFormatException: For input string: "<%cPk%>"
Reason:        For input string: "<%cPk%>"

Basically I aimed to pass a hidden value from one application to another, in order to hide the URL location from users' browsers.

I used a "POST" form instead of a "GET", and used the correct input tag - <input TYPE="hidden" name="cPk" value="<%=cPk%>">

However, I suspect that the value of cPk, a primary key, is not being correctly passed  in the proper format .. although I made the types consistent in my code (and when I hardcoded a number value, I know conceptually this thing should actually work):

Here is the relevant code from the class in the first application:

=========================================================================================
   protected Double cPk;

   public Double getCPk() {
        return cPk;
    }

    public void setCPk(String getCertificateUrl) {
        cPk = new Double(getCertificateUrl);
    }
    public String getCertificateUrl() {
        String cPk = certification.certificationPk().toString();
        //String url = "https://hostname/etc/WebObjects/PDFGenerator.woa/wa/viewReport?cPk=" + cPk;
        //String url = certification.certificationPk().toString();
        return cPk;
    }
========================================================================================
   and here is the relevant code in the second application:

========================================================================================
protected Double cPk;

private NSArray lookupCertification() {      
        // Lookup Certification via cPk
        return fetchSearch("getCertificationPk", "Certification", "cPk", getCPk(), this.session().defaultEditingContext());
    }
   
    public Double getCPk() {
        return cPk;      
    }

    public void setCPk(String newCPk) {
        cPk = new Double(newCPk);
    }
========================================================================================
and here is some more relevant code from another class:
========================================================================================
public void takeFormValues(NSDictionary value) {
        java.util.Enumeration e = getValueList().objectEnumerator();

        while (e.hasMoreElements()) {
            String key = (String)e.nextElement();

            Object obj = context().request().formValueForKey(key);
            if (obj != null) {
                takeValueForKey(obj, key);
            }
        }
    }
========================================================================================

I am ripping what little is left of my hair out ... I suspect the issue is trivial but the cause of the error is beyond me.

Any advice and or guidance would be greatly appreciated!

Best regards,
nearly hairless jamie
0
Comment
Question by:jmc430
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 2
  • 2
  • +2
10 Comments
 
LVL 86

Assisted Solution

by:CEHJ
CEHJ earned 125 total points
ID: 12240900
>>String url = "https://hostname/etc/WebObjects/PDFGenerator.woa/wa/viewReport?cPk=" + cPk;

should probably be

String url = "https://hostname/etc/WebObjects/PDFGenerator.woa/wa/viewReport?cPk=" + java.net.URLEncoder.encode(cPk, "UTF-8");

and use the corresponding decoder on the other side

If that doesn't work, please post value of cPk
0
 
LVL 14

Assisted Solution

by:sudhakar_koundinya
sudhakar_koundinya earned 125 total points
ID: 12241252
/**

protected Double cPk;

   public Double getCPk() {
        return cPk;
    }

    public void setCPk(String getCertificateUrl) {
        cPk = new Double(getCertificateUrl);
    }
    public String getCertificateUrl() {
        String cPk = certification.certificationPk().toString();
        //String url = "https://hostname/etc/WebObjects/PDFGenerator.woa/wa/viewReport?cPk=" + cPk;
        //String url = certification.certificationPk().toString();
        return cPk;
    }**/

You define cPk as Double at class level and in getCertificateUrl method u r using it as String

Check if this gives problem to u

Regards

0
 
LVL 92

Assisted Solution

by:objects
objects earned 125 total points
ID: 12244059
can u post your jsp.
0
Salesforce Has Never Been Easier

Improve and reinforce salesforce training & adoption using WalkMe's digital adoption platform. Start saving on costly employee training by creating fast intuitive Walk-Thrus for Salesforce. Claim your Free Account Now

 
LVL 1

Accepted Solution

by:
sunil_bandaru earned 125 total points
ID: 12247195
<input TYPE="hidden" name="cPk" value="<%=cPk%>">

plz use single quotes around <%=cPk%> in the jsp as shown below and try running the application:

<input TYPE="hidden" name="cPk" value='<%=cPk%>'>
0
 
LVL 1

Expert Comment

by:sunil_bandaru
ID: 12247215
or u can even check with no quotes at all. ie. the way shown below

<input TYPE="hidden" name="cPk" value=<%=cPk%>>
0
 
LVL 92

Expert Comment

by:objects
ID: 12254553
whats the value of cPK?

Have you tried:

<input TYPE="hidden" name="cPk" value="<%= java.net.URLEncoder.encode(cPk, "UTF-8") %>">
0
 
LVL 14

Expert Comment

by:sudhakar_koundinya
ID: 12256139
Hello  jmc430,

With out your responses it is difficult to analyse your problem. Let us know if any of the suggestions helped you

Best Regards
Sudhakar  
0
 

Author Comment

by:jmc430
ID: 12311897
Hi .. thanks for all of your help.

=)
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 12311947
8-)
0
 
LVL 14

Expert Comment

by:sudhakar_koundinya
ID: 12312782
:-)
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Java contains several comparison operators (e.g., <, <=, >, >=, ==, !=) that allow you to compare primitive values. However, these operators cannot be used to compare the contents of objects. Interface Comparable is used to allow objects of a cl…
Introduction This article is the last of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article covers our test design approach and then goes through a simple test case example, how …
Viewers learn about the third conditional statement “else if” and use it in an example program. Then additional information about conditional statements is provided, covering the topic thoroughly. Viewers learn about the third conditional statement …
Viewers will learn about arithmetic and Boolean expressions in Java and the logical operators used to create Boolean expressions. We will cover the symbols used for arithmetic expressions and define each logical operator and how to use them in Boole…

696 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question