0

这些说明中所述,我下载了我的组织的enterprise.wsdl文件,wsc-23.jarWeb 服务连接器下载页面下载,并从包含两个下载文件的目录中运行以下命令:

java -classpath wsc-23.jar com.sforce.ws.tools.wsdlc enterprise.wsdl enterprise.jar

这产生了这个输出:

[WSC23][wsdlc.run:348]Created temp dir: C:\Users\myName\AppData\Local\Temp\wsd
lc-temp-215798849-dir
[WSC23][wsdlc.<init>:110]Generating Java files from schema ...
[WSC23][wsdlc.<init>:110]Generated 290 java files.
[WSC23][wsdlc.compileTypes:298]Compiling to target default...
cannot find symbol
  symbol:   class RecordType
  location: package com.sforce.soap.enterprise.sobject
cannot find symbol
  symbol:   class RecordType
  location: package com.sforce.soap.enterprise.sobject
cannot find symbol
  symbol:   class RecordType
  location: package com.sforce.soap.enterprise.sobject
cannot find symbol
  symbol:   class RecordType
  location: package com.sforce.soap.enterprise.sobject
cannot find symbol
  symbol:   class RecordType
  location: package com.sforce.soap.enterprise.sobject
Error: Compilation failed

为什么类RecordType导致编译失败?

4

1 回答 1

2

作为我们在上面评论中讨论的问题的解决方法,尝试手动将RecordType复杂类型添加到您的 WSDL。这是它的样子:

<complexType name="RecordType">
    <complexContent>
        <extension base="ens:sObject">
            <sequence>
            <element name="BusinessProcessId" nillable="true" minOccurs="0" type="tns:ID"/>
            <element name="CreatedBy" nillable="true" minOccurs="0" type="ens:User"/>
            <element name="CreatedById" nillable="true" minOccurs="0" type="tns:ID"/>
            <element name="CreatedDate" nillable="true" minOccurs="0" type="xsd:dateTime"/>
            <element name="Description" nillable="true" minOccurs="0" type="xsd:string"/>
            <element name="DeveloperName" nillable="true" minOccurs="0" type="xsd:string"/>
            <element name="IsActive" nillable="true" minOccurs="0" type="xsd:boolean"/>
            <element name="IsPersonType" nillable="true" minOccurs="0" type="xsd:boolean"/>
            <element name="LastModifiedBy" nillable="true" minOccurs="0" type="ens:User"/>
            <element name="LastModifiedById" nillable="true" minOccurs="0" type="tns:ID"/>
            <element name="LastModifiedDate" nillable="true" minOccurs="0" type="xsd:dateTime"/>
            <element name="Localization" nillable="true" minOccurs="0" type="tns:QueryResult"/>
            <element name="Name" nillable="true" minOccurs="0" type="xsd:string"/>
            <element name="NamespacePrefix" nillable="true" minOccurs="0" type="xsd:string"/>
            <element name="SobjectType" nillable="true" minOccurs="0" type="xsd:string"/>
            <element name="SystemModstamp" nillable="true" minOccurs="0" type="xsd:dateTime"/>
            </sequence>
        </extension>
    </complexContent>
</complexType>

正如我上面提到的,这听起来像是 WSDL 生成中的一个错误,所以我建议也向 SFDC Support 提交一张票。

于 2013-04-18T18:24:10.980 回答