次のように、 nodeRef の文字列表現をパラメーターとしてリポジトリに渡そうとしています。
url: Alfresco.constants.PROXY_URI + "synapture/commande/commande-get/" + new Alfresco.util.NodeRef(commandeObj.commandeNodeRef)
ただし、デバッガーを見てurl.templateArgs. リポジトリ側では、ワークスペースの後の最初の「/」が削除されます。
次のように、 nodeRef の文字列表現をパラメーターとしてリポジトリに渡そうとしています。
url: Alfresco.constants.PROXY_URI + "synapture/commande/commande-get/" + new Alfresco.util.NodeRef(commandeObj.commandeNodeRef)
ただし、デバッガーを見てurl.templateArgs. リポジトリ側では、ワークスペースの後の最初の「/」が削除されます。
actions.js (Web クライアント JavaScript ファイル) を見ると、次のように表示されます。
var jsNode = record.jsNode,
nodeRef = jsNode.isLink ? jsNode.linkedNode.nodeRef : jsNode.nodeRef,
strNodeRef = nodeRef.toString()........
URL はアクションで使用されます: documentDetailsUrl: fnPageURL("document-details?nodeRef=" + strNodeRef),
オブジェクト recordd.jsNode は別の場所で定義されています。
record.jsNode = new Alfresco.util.Node(response.json.item.node);
したがって、おそらくあなたのケースでは次のことができます: 1. 新しく作成された Alfresco.Util.NodeRef オブジェクトに toString() を追加するだけです。2. それが機能しない場合は、Alfresco.util.Node を作成し、toString() を実行します。
入力 auf Alfresco.util.NodeRef は NodeRef-Format の文字列である必要があります。 NodeRef-Format の文字列の場合、次のコードがその役割を果たします (「.uri」を追加して、NodeRef を URI 形式で取得します)。
url: Alfresco.constants.PROXY_URI + "synapture/commande/commande-get/" + new Alfresco.util.NodeRef(commandeObj.commandeNodeRef).uri
Backend-Webscript (*desc.xml) は次のように定義する必要があります (ちなみに、これは適切な RESTful URL ではありません ;-)):
synapture/commande/commande-get/{store_type}/{store_id}/{id}
バックエンド Webscript 内:
var storeType = url.templateArgs.store_type,
storeId = url.templateArgs.store_id,
id = url.templateArgs.id,
nodeRef = storeType + "://" + storeId + "/" + id,
node = utils.getNodeFromString(nodeRef);