我在Spring 3.1應用程序中工作,我需要找到位於Alfresco倉庫中的String模板文檔。我已經可以使用OpenCMIS在戶外創建一個文件,但我無法弄清楚如何找到一個模板,所以如果有人知道如何做或者給我一個例子,請告訴我,謝謝!如何在Spring應用程序中使用OpenCMIS在Alfresco中查找模板?
0
A
回答
1
您可以使用多種選項。首先,您需要有一個唯一標識您的文檔的標準。下面我會展示一些,希望你的案例落在他們中的一個,或者他們會激勵你尋求適當的解決方案。以下使用僞代碼,請參閱OpenCMIS dev guide以使用Java客戶端API。
BY ID
一旦創建通過CMIS文檔,你得到它的唯一的ID,你可以在你的應用程序供以後檢索存儲。
Map<String, Object> templateProperties = createDocumentProperties();
Folder folder = getTemplatesFolder();
ObjectId templateId = createTemplateIn(folder);
storeTemplateId(templateId.getId(), templateProperties); // persist the ID
...
// later on
...
String id = getTemplateId(); // retrieve the ID
Session session = openCMISSession();
Document template = (Document)session.getObject(id);
按路徑
前面的例子類似,你將不得不注意到您存儲文檔,而不是它的ID,或者有辦法通過手工構建的路徑。
String path = getTemplatePath(); // either recover it from DB or construct a path
Document template = (Document)session.getObjectByPath(path);
地產價值
比方說,你可以在一個模板文件,可以讓您輕鬆事後檢索它使用特定的元數據字段(例如,您創建了您的使用情況下,一些特定Alfresco metadata model)。
String meta = TemplateProperties.TEMPLATE_ID; // e.g. my:templateId
String type = TemplateProperties.TEMPLATE_TYPE; // e.g. my:template
String templateMeta = "TEMPLATE1";
Map<String, Object> templateProperties = createDocumentProperties();
templateProperties.put(meta, templateMeta);
templateProperties.put(PropertyIds.OBJECT_TYPE_ID, type);
createTemplate(templateProperties);
...
// later on
...
String type = TemplateProperties.TEMPLATE_TYPE; // e.g. my:template
String meta = TemplateProperties.TEMPLATE_ID;
String tplId = "TEMPLATE1";
String query = String.format("SELECT * FROM % WHERE % = '%'", type, meta, tplId);
ItemIterable<QueryResult> i = session.query(query, false);
QueryResult qr = i.iterator().next(); // let's assume we have one single match
String templateId = qr.getPropertyByQueryName("cmis:objectId").getFirstValue()
Document template = (Document)session.getObject(templateId);
按查詢
以前的做法是不是真的綁按屬性名稱進行搜索,並可以很容易地擴展到使用任何類型的查詢識別你的模板。查看Alfresco的CMIS query language實現細節頁面,瞭解更多查詢存儲庫的方法。
相關問題
- 1. 如何在Spring應用程序中使用響應式html模板?
- 2. 在Spring Security應用程序中使用其餘模板註銷
- 3. 如何在Rails應用程序中使用HTML模板
- 4. 使用OpenCMIS獲得Alfresco擴展屬性
- 5. 在不同的應用程序模板中調用應用程序模板
- 6. 在Spring應用程序中從FreeMarker獲取模板文本
- 7. 如何使用SNMP4J查找Spring Web應用程序的帶寬
- 8. 如何在django應用程序中訪問angularjs中的模板?
- 9. 如何在Windows應用程序中使用C#在Excel中查找RowID?
- 10. 如何在Catalyst應用程序中的模板Tookit模板中定義常量?
- 11. 在grails應用程序中找不到模板
- 12. 如何在Spring webflux應用程序中使用Spring WebSessionIdResolver和Spring Security 5?
- 13. 如何在Spring MVC應用程序中使用Solr
- 14. 如何在大型應用程序中使用Spring註釋?
- 15. 如何在Clojure應用程序中使用Spring Bean?
- 16. 如何在Spring Boot應用程序中使用lombok.Data註釋?
- 17. 如何在Spring Boot應用程序中使用Angular2 PathLocationStrategy?
- 18. 如何在Spring應用程序中使用Jquery Popup窗口?
- 19. 如何在JUnitTests中使用ObjectMapper - Spring Boot應用程序
- 20. 如何在Spring應用程序中使用多個控制器?
- 21. 如何在Spring-JQuery應用程序中使用ColorBox示例?
- 22. 如何在Spring + JSF應用程序中使用JSF註釋
- 23. 如何在我的應用程序j2ee中使用Fileupload with spring
- 24. 如何使用Oracle DB在Spring/mybatis應用程序中設置默認模式?
- 25. 如何在普通Web應用程序中使用Spring Roo域模型
- 26. 遠程Web腳本在Android應用程序中調用Alfresco。
- 27. 在WPF應用程序中提供模板功能 - 如何?
- 28. 如何在複雜的AngularJS應用程序中加載模板
- 29. 如何在「DataBound應用程序」模板中製作過濾器
- 30. 如何在Rails應用程序中創建記錄的「模板」?
感謝兄弟爲您解釋,這就是我想要做的..現在,我有文件,你會知道我應該使用什麼會議對象的方法,所以我可以檢索文件的格式爲字符串模板可以理解? –
你的意思是[StringTemplate](http://www.stringtemplate.org/)?這可能值得一個單獨的問題,因爲這是更多的東西的主題。 – skuro
好吧,我會打開另一個問題,並感謝你的迴應,歡呼! –