2016-07-06 18 views
0

APIを使用してSoftLayer VMを注文しています。また、ユーザーのメタデータ値を設定します。 私は様々なAPIを呼び出すために "softlayer-api-client-0.2.2.jar"を使用しています。SoftLayer APIエラー - setUserMetadataが実装されていません

setUserMetadataは正常に機能していました。しかし、数日以来それは失敗しています。 このAPIは最近変更されましたか?上記のjarファイルのバージョンは正しいですか?

setUserMetadata APIは、エラーの下に与えている - スレッド "スレッド2" com.softlayer.api.ApiException $内部で

例外:SoftLayer_Virtual_Guest_Strategy_Behavior_Standard :: setUserMetadataは実装されていません(コード:SoftLayer_Exception_NotImplemented、状態:500)。

この問題を解決するのに役立ちます。ありがとう!

答えて

0

私のご迷惑をおかけしますが、SoftLayer API Client for Javaからユーザのメタデータを設定することができます。ここではJavaスクリプトを試してみてください。クライアントからmasterブランチを使用するようにしてください。

スクリプト:

package com.softlayer.api.VirtualGuest; 

import com.softlayer.api.ApiClient; 
import com.softlayer.api.RestApiClient; 
import com.softlayer.api.service.virtual.Guest; 
import java.util.ArrayList; 
import java.util.List; 
/** 
* This script sets the data that will be written to the configuration drive. 
* 
* Important Manual Page: 
* http://sldn.softlayer.com/reference/services/SoftLayer_Virtual_Guest/setUserMetadata 
* 
* @license <http://sldn.softlayer.com/article/License> 
* @authon SoftLayer Technologies, Inc. <[email protected]> 
* @version 0.2.2 (master branch) 
*/ 
public class SetUserMetadata { 
    /** 
    * This is the constructor, is used to set user metadata   
    */ 
    public SetUserMetadata() { 
     // Declare your SoftLayer username and apiKey 
     String username = "set me"; 
     String apiKey = "set me"; 

     // Create client 
     ApiClient client = new RestApiClient().withCredentials(username, apiKey); 
     Guest.Service guestService = Guest.service(client, new Long(206659875)); 

     // Setting the medatada 
     String metadataTest = "test1RcvRcv"; 
     List<String> metadata = new ArrayList<String>(); 
     metadata.add(metadataTest); 

     try { 
      boolean result = guestService.setUserMetadata(metadata); 
     } catch (Exception e) { 
      System.out.println("Error: " + e); 
     } 
    } 

    /** 
    * This is the main method which makes use of SetUserMetadata method. 
    * 
    * @param args 
    * @return Nothing 
    */ 
    public static void main(String[] args) { 
     new SetUserMetadata(); 
    } 
} 

参考文献:

関連する問題