Documentum
データストレージに接続されたJavaFx
プロジェクトで作業しています。そして、私はファイルを移動する方法を設定しようとしている(それをfile1と呼ぶことができる)フォルダに(Folder1と呼ぶことができる)別のフォルダに(それをFolder2と呼ぶことができます)。両方のフォルダが同じキャビネットにあることに言及する価値はあります。私は以下のクラスを実装している:Documentumのあるリポジトリから別のリポジトリへのファイルまたはフォルダの移行
package application;
import com.documentum.com.DfClientX;
import com.documentum.com.IDfClientX;
import com.documentum.fc.client.DfClient;
import com.documentum.fc.client.IDfDocument;
import com.documentum.fc.client.IDfFolder;
import com.documentum.fc.client.IDfSession;
import com.documentum.fc.common.DfException;
import com.documentum.fc.common.DfId;
import com.documentum.operations.IDfMoveNode;
import com.documentum.operations.IDfMoveOperation;
public class Migrate {
public Migrate(){}
public String move (IDfSession mySession,String docId, String destination){
String str ="";
try{
IDfClientX clientx = new DfClientX();
IDfMoveOperation mo = clientx . getMoveOperation();
IDfFolder destinationDirectory = mySession . getFolderByPath(destination);
//Here is the line that causes error
mo.setDestinationFolderId(destinationDirectory . getObjectId());
IDfDocument doc = (IDfDocument) mySession . getObject(new DfId(docId));
IDfMoveNode node = (IDfMoveNode)mo.add(doc);
if (mo.execute()) {
str= "Move operation successful . ";
}
else {
str = "Move operation failed . ";
}
}catch(DfException e){
System.out.println(e.getLocalizedMessage());
}
return str;
}
}
の代わりに、DOCID私は移動することを希望していたファイルのr_object_idを通過していますが、私は次のエラーを取得:
com.documentum.fcを.client.DfFolder ___ PROXYは com.documentum.fc.client.IDfDocument
にキャストすることはできません私のミスがどこにあるいずれか知っていますか?それとも私はどこで間違っているのですか?
もう一度質問したいと思います。私が定義した "目的地"と呼ばれるパラメータに関しては、目的地のフォルダのパスを正しく渡す必要がありますか? –
私はどのように移動機構が動作するのか分かりませんが、確かに、あなたはあなたのオブジェクトを移動させたいところを指定する必要があります。 – Miki