on ‎2021 Nov 10 6:06 PM
Hi Experts -
I'm trying to increment a local variable value by 1, but when I read the header value, it maps to a String "value", then I'm trying to cast it to an Integer with the statement:
counter_var = Integer.parseInt(value)
but receiving a Java exception:
java.lang.Exception: java.lang.NumberFormatException: For input string
Please help me resolve this issue.
Thank you,
Anirban
import com.sap.gateway.ip.core.customdev.util.Message
import java.util.HashMap
def Message processData(Message message) {
//Headers
def map = message.getHeaders()
def value = map.get("INCREMENT")
if(value == null)
{
def counter_var = 0
}
else
{
counter_var = Integer.parseInt(value)
}
message.setHeader("INCREMENT", counter_var + 1)
return message;
}
Request clarification before answering.
Hi amallick,
import com.sap.gateway.ip.core.customdev.util.Message;
import java.util.HashMap;
def Message processData(Message message) {
def map = message.getHeaders()
def value = map.get("INCREMENT");
def counter_var;
if(value == null || value == "")
{
counter_var = 0
}
else
{
if(value.isNumber() == false)
{
//make the counter to zero / raise custom exception / take any other action
}
else
counter_var = Integer.parseInt(value)
}
message.setHeader("INCREMENT", counter_var + 1)
return message;
}
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
| User | Count |
|---|---|
| 15 | |
| 9 | |
| 6 | |
| 4 | |
| 4 | |
| 4 | |
| 3 | |
| 2 | |
| 2 | |
| 2 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.