Über die Schnittstelle createRequirements werden neue Anforderungen erstellt. Die HTTP-Antwort des Aufrufs enthält die XML-Struktur der geänderten Anforderungen. Sie können die Kennungen der neuen Knoten der aktualisierten XML-Anforderungsstruktur entnehmen.
Die folgende Tabelle enthält die Parameter der Schnittstelle createRequirements.
Schnittstellen-URL | Parameter | Beschreibung |
---|---|---|
http://<front-end URL>/servicesExchange?hid=createRequirements |
sid | Webdienst-Token oder Sitzungs-ID für die Benutzerauthentifizierung. Sie können das Webdienst-Token auf der Einstellungsseite der Silk Central-Benutzeroberfläche generieren. Um auf diese Seite zuzugreifen, zeigen Sie mit dem Mauszeiger auf den Benutzernamen im Menü Silk Central und wählen Sie Benutzereinstellungen. Sie können die Sitzungs-ID abrufen, indem Sie die Methode logonUser für einen der verfügbaren Webdienste aufrufen. |
parentNodeID | ID des Containers, dem die neue Anforderung in der Anforderungshierarchie hinzugefügt wird. |
Beispiel: http://<front-end URL>/servicesExchange?hid=createRequirements&parentNodeID=<id>&sid=<webServiceToken>
Die Definitionsdatei für das XML-Schema, mit der überprüft wird, ob Anforderungen über den URL des Front-End-Servers http://<Host>/silkroot/xsl/requirements.xsd heruntergeladen oder aus dem Installationsordner <Silk Central-Installationsordner>/wwwroot/silkroot/xsl/requirements.xsd des Front-End-Servers kopiert werden können.
Im folgenden Quelltext werden die Anforderungen mithilfe von Apache HttpClient erstellt.
import org.apache.commons.httpclient.*; // Apache HttpClient String webServiceToken = "e39a0b5b-45db-42db-84b2-b85028d954d5"; URL service = new URL("http", mWebServiceHelper.getHost(), mWebServiceHelper.getPort(), String.format("/servicesExchange?hid=%s&sid=%s&parentNodeID=%d", "createRequirements", webServiceToken, PARENT_NODE_ID)); HttpClient client = new HttpClient(); PostMethod filePost = new PostMethod(service.toExternalForm()); String xmlFile = loadRequirementsUtf8("requirements.xml"); StringPart xmlFileItem = new StringPart("requirements", xmlFile, "UTF-8"); xmlFileItem.setContentType("text/xml"); Part[] parts = {xmlFileItem}; filePost.setRequestEntity(new MultipartRequestEntity(parts, filePost.getParams())); client.getHttpConnectionManager().getParams().setConnectionTimeout(60000); int status = client.executeMethod(filePost); System.out.println(filePost.getStatusLine());
Pro Anfrage kann nur ein Anhang hochgeladen werden. Apache HttpComponents können Sie von http://hc.apache.org/downloads.cgi herunterladen. Die erforderlichen Bibliotheken entnehmen Sie der Dokumentation der Komponente.
Der folgende Code zeigt ein Beispiel einer Anforderung, die mithilfe der Dienste createRequirements, updateRequirements und updateRequirementsByExtId in Silk Central hochgeladen werden kann.
<?xml version="1.0" encoding="UTF-8"?> <Requirement id="0" name="name" xmlns="http://www.borland.com/RequirementsSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://<front-end URL>/silkroot/xsl/requirements.xsd"> <ExternalId>myExtId1</ExternalId> <Description>Description</Description> <Priority value="Low" inherited="false"/> <Risk value="Critical" inherited="false"/> <Reviewed value="true" inherited="false"/> <Property inherited="false" name="Document" type="string">MyDocument1.doc</Property> <Requirement id="1" name="name" /> <Requirement id="2" name="name1"> <Requirement id="3" name="name" /> <Requirement id="4" name="name1"> <Requirement id="5" name="name" /> <Requirement id="6" name="name1"> <ExternalId>myExtId2</ExternalId> <Description>Another Description</Description> <Priority value="Medium" inherited="false"/> <Risk value="Critical" inherited="false"/> <Reviewed value="true" inherited="false"/> <Property inherited="false" name="Document" type="string">MyDocument2.doc</Property> </Requirement> </Requirement> </Requirement> </Requirement>