2

Java アプリケーションと Rally WS API (XML) を使用して、HierarchicalRequirement オブジェクトの属性のサブサイトのみを返すクエリを作成したいと考えています。

私が書いたものは次のとおりです。

 QueryResult result = new QueryResult();
 result = service.query(ws, resultType, query, null, false, 0, 100);

ここで、resultType = HierarchicalRequirement e クエリは

(Project.Name = "サンプル プロジェクト")& fetch="Name,FormattedID"

何か間違ったことをしていますか、それともサポートされている機能ではありませんか?

ありがとう

4

1 に答える 1

0

Fetchパラメーターがない限り、SOAPの動作はRESTとは少し異なります。Rallyから返されたオブジェクトをデータフィールドで完全にハイドレイトするか、そうでないかのどちらかです。クエリの関数プロトタイプは次のようになります。

    queryResult = rallyService.query(workspace, artifactType, queryString, order, 
                    fetchFullObjects, start, pageSize);

したがって、クエリで、fetchFullObjectsに「false」を指定しました。オブジェクトシェルのみをフェッチしているため、これはデータ転送の点で確かにより効率的です。返された特定のオブジェクトをデータでハイドレイトしたい場合は、そのオブジェクトに対して追加のservice.read()を実行できます。

    DomainObject myObject = (DomainObject) queryResult.Results[0];
    DomainObject myFullObject = service.read(myObject);

fetchFullObject = true;または、シリアル化されてクライアントに返されるデータの量に関して、パフォーマンスに影響があることを認識して設定することもできます。

そこから、オブジェクトのgetメソッドを使用して、そのフィールドからデータを引き出すことができます。

于 2012-08-03T14:27:08.770 に答える