Service Virtualization

  • 1.  IllegalArgumentException: URLDecoder

    Posted Apr 03, 2019 05:25 AM

    Hi All,

     

    For few of the deployed services, in VSE logs, we observed that the below error is occurring frequently. Please help me how to resolve this :

     

    2019-04-03 08:39:17,468Z (10:39) [<Service Name> [VS_<Service Name>_Run]/5] ERROR com.itko.util.HtmlUtils - java.lang.IllegalArgumentException: URLDecoder: Illegal hex characters in escape (%) pattern - For input string: " p"
    java.lang.IllegalArgumentException: URLDecoder: Illegal hex characters in escape (%) pattern - For input string: " p"
    at java.net.URLDecoder.decode(URLDecoder.java:194)
    at com.itko.util.HtmlUtils.encodeDecodeString(HtmlUtils.java:398)
    at com.itko.util.HtmlUtils.encodeDecodeString(HtmlUtils.java:364)
    at com.itko.util.HtmlUtils.encodeDecodeString(HtmlUtils.java:359)
    at com.itko.util.HtmlUtils.encodeDecodeString(HtmlUtils.java:343)
    at com.itko.util.Parameter.toString(Parameter.java:410)
    at com.itko.util.ParameterList.toArgumentString(ParameterList.java:1333)
    at com.itko.util.ParameterList.toArgumentString(ParameterList.java:1296)
    at com.itko.util.ParameterList.toString(ParameterList.java:1284)
    at java.lang.String.valueOf(String.java:2994)
    at java.lang.StringBuilder.append(StringBuilder.java:131)
    at com.itko.lisa.vse.stateful.model.Request.toString(Request.java:709)
    at com.itko.lisa.vse.stateful.model.Request.getPropertyText(Request.java:732)
    at com.itko.util.properties.PropertyUtils.getStringForProperty(PropertyUtils.java:47)
    at com.itko.lisa.history.NodeExecHistory.processProp(NodeExecHistory.java:669)
    at com.itko.lisa.history.NodeExecHistory.notifyPropUsed(NodeExecHistory.java:566)
    at com.itko.lisa.history.CycleExecHistory.notifyPropUsed(CycleExecHistory.java:633)
    at com.itko.lisa.test.TestExec.getStateObject(TestExec.java:1374)
    at com.itko.lisa.test.TestExec.getStateObject(TestExec.java:1388)
    at com.itko.lisa.test.FilterBaseImpl.getValueToFilter(FilterBaseImpl.java:407)
    at com.itko.lisa.vse.stateful.common.DataProtocolFilter.subPostFilter(DataProtocolFilter.java:213)
    at com.itko.lisa.test.FilterBaseImpl.subFilter(FilterBaseImpl.java:148)
    at com.itko.lisa.test.FilterBaseImpl.postFilter(FilterBaseImpl.java:122)
    at com.itko.lisa.test.TestNode.doFilters(TestNode.java:1554)
    at com.itko.lisa.test.TestNode.doPostFilters(TestNode.java:1503)
    at com.itko.lisa.test.TestNode.executeNode(TestNode.java:998)
    at com.itko.lisa.test.TestCase.execute(TestCase.java:1297)
    at com.itko.lisa.test.TestCase.execute(TestCase.java:1198)
    at com.itko.lisa.test.TestCase.executeNextNode(TestCase.java:1183)
    at com.itko.lisa.test.TestCase.executeTest(TestCase.java:1124)
    at com.itko.lisa.coordinator.Instance.run(Instance.java:208)

     

     

    DevTest Version: 10.3

    Protocol used: HTTP/S



  • 2.  Re: IllegalArgumentException: URLDecoder

    Broadcom Employee
    Posted Apr 03, 2019 05:40 AM

    HI Surya

                  From the log file, it appears like a test case was run. Is there a way you can share your test case along with any dependent file so that I can try this locally. PLease indicate Devtest version too.

     

    Thanks

    Sankar



  • 3.  Re: IllegalArgumentException: URLDecoder

    Posted Apr 30, 2019 06:36 AM

    Hi Sankar,

     

    We found that, this issue is due to the "%" symbol sent in the request message to VS. So, is there any way to resolve the issue ?



  • 4.  Re: IllegalArgumentException: URLDecoder

    Broadcom Employee
    Posted Apr 04, 2019 03:52 AM

    Hi,

     

    Please add one line:
    lisa.vse.http.suppress.form.decode=true
    to the local.properties file for VSE.

     

    However, this property changes the behaviors for all the virtual services in one VSE, then it is better to do these steps.
    1. Create one more VSE

     

    2. Add one line
    lisa.vse.http.suppress.form.decode=true
    to the local.properties for the new VSE

     

    3. Deploy the virtual services which have same problems in the current VSE to the new VSE

     

    4. Remove the virtual services which are deployed to the new VSE in step 3 from the old VSE

     

    Thank you,