説明
ドキュメントワークスペースの getdwsdata アクションなど、SharePoint が Web サービスアクションとして表示される機能を呼び出します。
カテゴリ
Extensibility tags、MS Office の統合のタグ
シンタックス
<cfsharepoint action="webservice action" params="parameter structure" domain="domain name" name ="result variable name" password="connection password" userName="user ID" wsdl="WSDL file path"> or <cfsharepoint action="webservice action" params="parameter structure" login = "credentials structure" name ="result variable name" wsdl="WSDL file path">
NTLM 属性を使用する場合
<cfsharepoint authType="NTLM" action="webservice action" params="parameter structure" domain="domain name" ntlmdomain="domain where user is registered" workstation="workstation name" name="result variable name" password="connection password" username="user ID" wsdl="WSDL file path">
login 属性を使用する場合、NTLM 属性を login 構造体に渡す必要があります。次に例を示します。
<cfscript> loginStruct = {domain="myDomain", username="userName", password="pa$$w0rd",authtype="ntlm", ntlmdomain="myNTLMDomain"}; cfsharepoint(action="getlistcollection", login=loginStruct, name="myResult"); writeDump(myResult); </cfscript>
このタグの属性は attributeCollection 属性で指定でき、その値は構造体になります。attributeCollection 属性で構造体の名前を指定し、タグの属性名を構造体のキーとして使用します。
履歴
Adobe ColdFusion(2016 リリース):authType、ntlmDomain および workstation 属性が追加されました。
ColdFusion 9: タグが追加されました。
属性
属性 |
必須/オプション |
デフォルト |
説明 |
---|---|---|---|
action |
必須 |
|
Web サービスアクションの名前です。指定できるサービスアクションのリストについては、「使用方法」を参照してください。 |
authType |
オプション |
|
使用する認証タイプ。NTLM または BASIC を使用できます。 |
domain |
オプション |
|
SharePoint サーバーへの 接続に 必要なドメイン名です。login 属性を指定しない場合は必須です。 |
login |
オプション |
|
サービスに渡されるユーザー、パスワードおよびドメインログイン資格情報を含む構造体です。 domain 、password および userName 属性を指定しない場合、 domain 、password および userName のエントリを持つログイン構造体を指定します。 |
name |
オプション |
|
SharePoint サービスによって返されるデータを配置する結果変数の名前です。 |
ntlmdomain |
authType=NTLM の場合 ntlmdomain は必須です。 |
|
ユーザーが登録されるドメイン。 注意:ユーザーがドメインに属している場合は、ntlmDomain 属性が必須です。ユーザーがドメインに属していない場合、ntlmDomain 属性はオプションです。 |
params |
オプション |
|
サービスに渡されるパラメーターの名前および値を含む構造体です。 |
password |
オプション |
|
SharePoint サーバーへの 接続に 必要なパスワードです。login 属性を指定しない場合は必須です。 |
userName |
オプション |
|
SharePoint サーバーへの 接続に 必要なユーザー名です。login 属性を指定しない場合は必須です。 |
wsdl |
オプション |
|
サービスの wsdl ファイルへのパスです。サポート対象のアクションのリストにないアクションを呼び出す場合に必要となります。詳細については、「使用方法」を参照してください。 |
workstation |
オプション |
|
クライアントマシンのホスト名。 |
使用方法
cfsharepoint タグは、Microsoft SharePoint Web サービスを呼び出します。数多くの SharePoint Web サービスアクションを呼び出すには、action 属性にアクション名を指定し、params 属性の Web サービスパラメーターを渡します。cfsharepoint タグで直接サポートされていないサービスおよびメソッドにアクセスするには、wsdl 属性にサービス WSDL URL を指定します。
cfsharepoint タグは、基本認証のみを使用するサービスとともに使用できます。
サービスおよびアクションを要求するには、次の表にリストされている action 属性値を使用します。通常、これらの属性値は、SharePoint アクション名と同じです。「注意」に、複数のサービスが同じアクション名を持ち、アクション名と属性値が異なる場合が示されています。
Web サービスアクションパラメーターについては、http://msdn.microsoft.com/ja-jp/library/dd878586(v=office.12).aspx を参照してください。また、http://server_name/_vti_bin/WebServiceName?wsdl の Web サービス WSDL からパラメーターを判別することもできます。
一部の Sharepoint 操作では、WSDL は out パラメーターを含みます。cfsharepoint タグでは、input および output パラメーターは、input および output パラメーターのキー値ペアを含む構造体である param 属性で渡されます。
個々の out パラメーターの Sharepoint Web サービス応答は、cfsharepoint param 属性として渡される構造体に設定されます。これをタグの結果属性の一部として使用することはできません。
cfsharepoint タグが SharePoint サーバーからの結果を受け取り、終了したときに、name 属性で指定されている構造体に応答が含まれます。この構造体には、値 Success または Failure を含む ResultFlag エントリも含まれます。Axis Fault がないか、または応答でエラーが戻された場合、エントリの値は Success になります。その他の場合、この値は Failure になります。ドキュメントワークスペース
cancreatedwsurl |
deletedwsfolder |
renamedws |
createdws |
finddwsdoc |
updatedwsdata |
createdwsfolder |
getdwsdata |
|
deletedws |
removedwsuser |
|
createdwsfolder および deletedwsfolder アクション属性値は、ドキュメントワークスペースサービスの createfolder および deletefolder アクションに対応しています。
イメージング
delete |
getitemsbyids |
upload |
download |
listpicturelibrary |
|
getimaginglistitems |
rename |
|
getimaginglistitems アクション属性値は、イメージングサービスの getlistitems アクションに対応しています。
リスト
addattachment |
getattachmentcollection |
updatelist |
addlist |
getlist |
updatelistitems |
deleteattachment |
getlistcollection |
|
deletelist |
getlistitems |
|
search または spsearch
spsearch/search is not present in Windows Sharepoint Services 2.0.
Windows SharePoint Services 3.0 では、アクション属性で次のいずれかのアクションが指定されている場合、spsearch.asmx Web サービスを使用して、検索が行われます。Microsoft Office SharePoint Portal Server 2003 または Microsoft Office SharePoint Server 2007 では、search.asmx を使用して検索が行われます。Windows Sharepoint Services 2.0 では、例外がスローされます。
query |
registration |
queryex |
status |
UserGroup
addgrouptorole |
getgroupcollection |
removerole |
addrole |
getrolecollection |
removeusercollectionfromgroup |
addusercollectiontogroup |
getusercollectionfromrole |
removeuserfromgroup |
addusercollectiontorole |
getusercollectionfromrole |
|
addusertogroup |
getuserinfo |
|
ビュー
addview |
getview |
updateview |
deleteview |
getviewcollection |
|
データ型の変換
一部の Web サービスアクションには、ColdFusion データ型とは直接対応していない Microsoft データ型のパラメータが必要となります。cfsharepoint タグは、Microsoft データ型と ColdFusion で内部的に使用されている最適な Java データ型を自動的に変換します。次の表に、変換をリストし、対応する ColdFusion のデータ型を示します。
SharePoint のデータ型 |
ColdFusion の Java データ型 |
---|---|
XmlNode |
XMLNodeList:例えば、XML 文字列を XmlParse 関数に渡して作成された ColdFusion XML オブジェクトに対応しています。 |
ArrayOfString |
文字列配列 : 文字列データを含む ColdFusion 配列に対応しています。 |
UnsignedInt |
int: 整数値の ColdFusion 番号に対応しています。 |
ArrayOfUnsignedInt |
int 配列 : 文字列データを含む ColdFusion 配列に対応しています。 |
例
次の例では、リストとビューの操作方法を示します。ここでは指定されていない、SharePoint サーバーのリソースが必要となります。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title>cfsharepoint Views Example</title> </head> <body> <cfoutput> Getting the list collection<br /> <!--- All login information is defined using variables in the Application.cfc file. ---> <cfsharepoint action="getlistcollection" login="#login#" name="result"/> result.ResultFlag: #result.ResultFlag#<br><br> Deleting mycustomlist from the collection, if it exists.<br> <cfloop array=#result.lists# index="list"> <cfif list.Title EQ "mycustomlist"> <cfsharepoint action="deletelist" login="#login#" name="result1" params="#{listname="mycustomlist"}#"/> </cfif> </cfloop> Was anything deleted? <cfif IsDefined("result1")> <b>YES.</b> The result is:</b><br> <cfdump var="#result1#"><br> <cfelse> <b>NO</b> </cfif> Adding a mycustomlist list<br /> <cfsharepoint action="addlist" login="#login#" name="result1" params="#{listname="mycustomlist", description="Adding a list via cfsharepoint", templateid=100}#"/> addlist result.ResultFlag: #result1.ResultFlag#<br><br> <cfset viewFields = xmlparse("<ViewFields> <FieldRef Name='Title'/> <FieldRef Name='ID'/> </ViewFields>")> <cfset query = xmlparse("<Query> <Where> <Lt> <FieldRef Name='ID'/> <Value Type='Counter'>10</Value> </Lt> </Where> <OrderBy> <FieldRef Name='ID'/> </OrderBy> </Query>")> <cfset rowlimit = xmlparse("<RowLimit Paged='True'>50</RowLimit>")> Adding a myview1 view for the mycustomlist list<br /> <cfsharepoint action="addview" login="#login#" name="result" params="#{listName="mycustomlist",viewname="myview1", viewFields="#viewFields#", query="#query#",rowlimit="#rowlimit#", type="grid",makeViewDefault=false}#"/> addview result.ResultFlag: #result.ResultFlag#<br><br> Adding a myview3 view for the mycustomlist list<br /> <cfsharepoint action="addview" login="#login#" name="result" params="#{listName="mycustomlist",viewname="myview3",viewFields="#viewFields#", query="#query#",rowlimit="#rowlimit#",type="grid",makeViewDefault=false}#"/> addview result.ResultFlag: #result.ResultFlag#<br><br> Getting the updated mycustomlist view collection<br> <cfsharepoint action="getviewcollection" login="#login#" name="result" params="#{listName="mycustomlist"}#"/> <b>getviewcollection result</b><br> <cfdump var="#result#"><br /> The names of the collection's views:<br> <cfloop array=#result.views# index=v> <cfoutput>#v.displayname#<br></cfoutput> </cfloop> <br> Deleting the list<br> <cfsharepoint action="deletelist" login="#login#" name="result1" params="#{listname="mycustomlist"}#"/> deletelist result.ResultFlag: #result1.ResultFlag# </cfoutput> </body> </html>