Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/194.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 位于com.paypal.core.soap.merchantallPreHandler.processPayLoadForFormatting的PatternSyntaxException_Java_Android_Paypal Sandbox_Paypal - Fatal编程技术网

Java 位于com.paypal.core.soap.merchantallPreHandler.processPayLoadForFormatting的PatternSyntaxException

Java 位于com.paypal.core.soap.merchantallPreHandler.processPayLoadForFormatting的PatternSyntaxException,java,android,paypal-sandbox,paypal,Java,Android,Paypal Sandbox,Paypal,我在android gradle项目中使用maven的merchant sdk java进行快速结账集成,我收到以下错误: 08-10 15:42:30.233 26631-26731/com.spec.paypalpoc W/System.err﹕ java.util.regex.PatternSyntaxException: Syntax error in regexp pattern near index 15: 08-10 15:42:30.234 26631-26731/com.spe

我在android gradle项目中使用maven的merchant sdk java进行快速结账集成,我收到以下错误:

08-10 15:42:30.233 26631-26731/com.spec.paypalpoc W/System.err﹕ java.util.regex.PatternSyntaxException: Syntax error in regexp pattern near index 15:
08-10 15:42:30.234 26631-26731/com.spec.paypalpoc W/System.err﹕ (?<!{[01]{1})}
08-10 15:42:30.234 26631-26731/com.spec.paypalpoc W/System.err﹕ ^
08-10 15:42:30.234 26631-26731/com.spec.paypalpoc W/System.err﹕ at java.util.regex.Pattern.compileImpl(Native Method)
08-10 15:42:30.237 26631-26731/com.spec.paypalpoc W/System.err﹕ at java.util.regex.Pattern.compile(Pattern.java:411)
08-10 15:42:30.237 26631-26731/com.spec.paypalpoc W/System.err﹕ at java.util.regex.Pattern.(Pattern.java:394)
08-10 15:42:30.237 26631-26731/com.spec.paypalpoc W/System.err﹕ at java.util.regex.Pattern.compile(Pattern.java:381)
08-10 15:42:30.237 26631-26731/com.spec.paypalpoc W/System.err﹕ at java.lang.String.replaceAll(String.java:1600)
08-10 15:42:30.237 26631-26731/com.spec.paypalpoc W/System.err﹕ at com.paypal.core.soap.MerchantAPICallPreHandler.processPayLoadForFormatting(MerchantAPICallPreHandler.java:466)
08-10 15:42:30.237 26631-26731/com.spec.paypalpoc W/System.err﹕ at com.paypal.core.soap.MerchantAPICallPreHandler.getPayLoadUsingSOAPHeader(MerchantAPICallPreHandler.java:447)
08-10 15:42:30.237 26631-26731/com.spec.paypalpoc W/System.err﹕ at com.paypal.core.soap.MerchantAPICallPreHandler.getPayLoad(MerchantAPICallPreHandler.java:317)
08-10 15:42:30.237 26631-26731/com.spec.paypalpoc W/System.err﹕ at com.paypal.core.BaseService.call(BaseService.java:264)
08-10 15:42:30.237 26631-26731/com.spec.paypalpoc W/System.err﹕ at urn.ebay.api.PayPalAPI.PayPalAPIInterfaceServiceService.setExpressCheckout(PayPalAPIInterfaceServiceService.java:2196)
08-10 15:42:30.237 26631-26731/com.spec.paypalpoc W/System.err﹕ at urn.ebay.api.PayPalAPI.PayPalAPIInterfaceServiceService.setExpressCheckout(PayPalAPIInterfaceServiceService.java:2148)
08-10 15:42:30.233 26631-26731/com.spec.paypalpoc W/System.err﹕ java.util.regex.PatternSyntaxException:索引15附近的regexp模式中出现语法错误:
08-10 15:42:30.234 26631-26731/com.spec.paypalpoc W/System.err﹕ (?
所以基本上当我研究这个方法时:

/**
     * Process the payload before using message formatting
 */
private String processPayLoadForFormatting(String payLoad) {
    Matcher match = REGEX_PATTERN.matcher(payLoad);
    StringBuffer sb = new StringBuffer();
    while (match.find()) {
        match.appendReplacement(sb, "'" + match.group());
    }
    match.appendTail(sb);

    // Fix json strings in element values by replacing {
    // by '{' and matching } by '}'
    return sb.toString().replaceAll("(?<!\\{[01]{1})}", "'}' ")
            .replaceAll("\\{(?![01]})", "'{' ");
}
/**
*在使用消息格式化之前处理有效负载
*/
私有字符串处理PayloadForFormatting(字符串负载){
Matcher match=REGEX_PATTERN.Matcher(有效载荷);
StringBuffer sb=新的StringBuffer();
while(match.find()){
match.appendReplacement(sb,“”+match.group());
}
匹配(某人);
//通过替换{
//通过“{”和通过“}”匹配}

return sb.toString().replaceAll(“(?我面临同样的问题。请帮助我。我面临同样的问题。请帮助我。
return sb.toString().replaceAll("(?<!\\{[01]{1})}", "'}' ")
                .replaceAll("\\{(?![01]})", "'{' ");