调用Salesforce Apex Web服务方法时发生Javascript/SOAP错误

调用Salesforce Apex Web服务方法时发生Javascript/SOAP错误,javascript,soap,salesforce,apex,Javascript,Soap,Salesforce,Apex,希望有人能解释一下我的一些用户在Salesforce中看到的一个令人讨厌的错误。我们有一个自定义按钮,用于调用包含对Apex web服务的javascript调用的VF页面。一个特定调用失败,并显示错误消息: faultcode:'soapenv:Client',faultstring:'elements的内容必须由格式良好的字符数据或标记组成' 下面是进行调用的javascript方法: function copyQPP(quoteResult) { var qRecords = n

希望有人能解释一下我的一些用户在Salesforce中看到的一个令人讨厌的错误。我们有一个自定义按钮,用于调用包含对Apex web服务的javascript调用的VF页面。一个特定调用失败,并显示错误消息:

faultcode:'soapenv:Client',faultstring:'elements的内容必须由格式良好的字符数据或标记组成'

下面是进行调用的javascript方法:

function copyQPP(quoteResult) 
{
    var qRecords = new sforce.QueryResultIterator(quoteResult);

    if(qRecords.hasNext())
    {
        $('#StatusMessage').html(' Copying Quotes and Products...');        
        var qRecord = qRecords.next();
        var state = {qRecords : qRecords};          
        var callback = {onSuccess: copyQPPs, onFailure: optyFailure, source: state};
        sforce.apex.execute('OpportunityCopyRenewalService2','copyQuoteFromOpty', {copyType:"COPY", NewOptyId:newOpp ,QuoteId:qRecord.Id}, callback);           
    }
    else
    {
        updateProducts('');
    }
}
下面是正在调用的Apex webservice方法:

webservice static Id copyQuoteFromOpty(String CopyType,Id NewOptyId,Id QuoteId ) {

    Id newQuoteId;
    try {
        newQuoteId=copyRenewQuote(CopyType,NewOptyId,QuoteId, true);
        Id[] PPs=new List<Id>();  
        for (Proposed_Product__c aPP :  [Select Id from Proposed_Product__c where Quote__c=:QuoteId Limit 1000] ) {
            PPs.add(aPP.Id);
        }

        List<Id> PPreturn = copyRenewPPs(CopyType,newQuoteId,NewOptyId,PPs);         
    }

    catch (Exception e){
        system.debug(e);
    }

    System.Debug('****************************************************Exiting copyQuoteFromOpty. Returning Quote ID: ' + newQuoteId);
    return newQuoteId;     
}
正如您从回调定义中看到的,我希望控制转移到copyQPPs函数。相反,当服务方法完成时——并且它成功地完成了,DML不会引发异常——控件将转到optyFailure函数


这只发生在一部分用户身上。与我一起工作的QA分析师使用的是与我使用的IE完全相同的版本:v9.0.8112.16421,但她得到了错误,而我没有。此外,无论她是否在兼容性视图中,都会发生错误。我知道,这只会影响渲染,但我看到了一些奇怪的事情。

我怀疑CopyQuoteFrompty web服务中发生了异常,正在由try-catch块处理。因此,newQuoteId在返回时为null


注释掉try-and-catch以查看实际错误。

我检查了调试日志。控件从不进入Catch块。如果测试仪使用不同的浏览器怎么办?只是想缩小范围。。。