Share Point Server上にフォルダを作成するサンプル
Share Point Server上の指定したサイト以下にフォルダを作成するサンプルです。例によってWebサービスを利用しています。
- WSSクラスは別ファイルに分離しました。
- 基本的には昨日の実装と同じですが、「XSD:: Charset.encoding="UTF8"」の設定を追加しています。
- 指定しない場合、リクエストやレスポンスに日本語が含まれていた場合、よくわからないエラーになります。
- 基本的には昨日の実装と同じですが、「XSD:: Charset.encoding="UTF8"」の設定を追加しています。
- 作成するフォルダは、「サイト」からの相対URL(例:"Shared Documents/テストフォルダ")で指定します。
- 「共有ドキュメント」は内部的には「Shared Documents」となっているようなので注意。
require 'wss' home = WSS.new( "SharePointServerのホスト名", ポート, "<ユーザー名>", "<パスワード>" ) dws = home.service(:Dws, "サイトのパス 例) sites/foo") result = dws.createFolder( { "url"=>"Shared Documents/テストフォルダ" }) p result.createFolderResult
wss.rbは以下です。
require 'rubygems' require 'httpclient' require 'soap/wsdlDriver' XSD:: Charset.encoding="UTF8" class WSS def initialize( host, port, user, pass ) @host = host @port = port @user = user @pass = pass end def service( name, target ) wsdl = "http://#{@host}:#{@port}/#{target}/_vti_bin/#{name}.asmx?WSDL" driver = SOAP::WSDLDriverFactory.new(wsdl).create_rpc_driver driver.options["protocol.http.basic_auth"] << ["http://#{@host}:#{@port}",@user,@pass] return driver end end