我是IBM filenet的新手。我刚收到了CMIS filenet的webservice url。
我的要求是使用apache camel路由存储从一个系统获取的PDF文档到filenet。尝试在SOAP UI中导入wsdl,我可以看到一组API,如createDocument,createFolder等。是否有一种简单的方法来测试这些API。首先,至少我想在java中进行简单测试,至少将文档存储在filenet中。请帮助我理解。
答案 0 :(得分:2)
要添加任何类型的文档,您需要将该文档签入FileNet ObjectStore的任何特定文件夹。
为此,您需要一个文档路径或其byteArray来创建要在ObjectStore中插入的fileinputstream。
创建文档的代码,
public static void insertDocument(Connection conn, String domainName) {
// Get domain.
Domain domain = Factory.Domain.fetchInstance(conn, domainName, null);
ObjectStoreSet osColl = domain.get_ObjectStores();
// Get each object store.
Iterator iterator = osColl.iterator();
while (iterator.hasNext()) {
// Get next object store.
ObjectStore objStore = (ObjectStore) iterator.next();
// Get the display name of the object store.
String objStoreName = objStore.get_DisplayName();
System.out.println("Object store name = " + objStoreName);
// Create a document instance.
Document doc = Factory.Document.createInstance(objStore, ClassNames.DOCUMENT);
// Set document properties.
doc.getProperties().putValue("DocumentTitle", "New Document via Java API");
doc.set_MimeType("text/plain"); // if its your pdf then set mimetype for PDF
doc.save(RefreshMode.NO_REFRESH);
// Check in the document.
doc.checkin(AutoClassify.DO_NOT_AUTO_CLASSIFY, CheckinType.MAJOR_VERSION);
doc.save(RefreshMode.NO_REFRESH);
// File the document.
Folder folder = Factory.Folder.getInstance(objStore, ClassNames.FOLDER, new Id("{42A3FC29-D635-4C37-8C86-84BAC73FFA3F}")); // id of folder to which you want to store document.
ReferentialContainmentRelationship rcr = folder.file(doc, AutoUniqueName.AUTO_UNIQUE, "New Document via Java API",
DefineSecurityParentage.DO_NOT_DEFINE_SECURITY_PARENTAGE);
rcr.save(RefreshMode.NO_REFRESH);
}
}
答案 1 :(得分:0)
为了对CMIS进行故障排除,我通常会按照下面为您编写的一般步骤进行操作。说这个,我强烈建议你为你的每个操作创建单元测试,我保证会为你节省大量的时间和精力
请求应该具有Content-Type:application / atom + xml; type = entry,以及cmisra:object元素中的属性cmis:name和cmis:objectTypeid。
一个。 http://www.fiddler2.com/fiddler2/ 湾http://chemistry.apache.org/java/download.html