WSDL4J、JDOM、Castor ライブラリを利用して wsdl ファイルを解析しました。これで、複雑な型を取得できますが、そのシーケンス内の要素にアクセスできません。
<xs:element name="AddInstanceGroupsResult">
<xs:complexType>
<xs:annotation>
<xs:documentation><![CDATA[
<p>Output from an AddInstanceGroups call.</p>
]]></xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="JobFlowId" type="tns:XmlStringMaxLen256" minOccurs="0">
<xs:annotation>
<xs:documentation><![CDATA[
<p>The job flow ID in which the instance groups are added.</p>
]]></xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="InstanceGroupIds" type="tns:InstanceGroupIdsList" minOccurs="0">
<xs:annotation>
<xs:documentation><![CDATA[
<p>Instance group IDs of the newly created instance groups.</p>
]]></xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
たとえば、複合型として AddInstanceGroupsResult に到達できますが、その中の基本要素 (JobFlowId および InstanceGroupIds) を取得できません。
case Structure.MODELGROUP:
Group modelGroup = (Group)ct;
ContentModelGroup contentModel = modelGroup.getContentModelGroup();
int count = contentModel.getParticleCount();
for (int n=0; n< count; n++){
ElementDecl elementDecl2 = (ElementDecl)contentModel.getParticle(n);
result.add(elementDecl2.getName());
resultLong.add(parseParameterName(elementDecl2.getName()));
resultType.add(elementDecl2.getType().getName());
}
助言がありますか?ありがとう..