我們需要使用DXL在數據庫中導入SSJS庫。爲此,我們已經寫了一個Java代理和它的代碼是這樣的:使用DXL在數據庫中導入SSJS腳本庫
import lotus.domino.*;
public class JavaAgent extends AgentBase {
private DxlImporter importer = null;
public void NotesMain() {
try {
Session session = getSession();
AgentContext agentContext = session.getAgentContext();
String filename = "C:\\tempssjslib.xml";
Stream stream = session.createStream();
if (stream.open(filename) & (stream.getBytes() > 0)) {
Database importdb = session.getCurrentDatabase();
importer = session.createDxlImporter();
importer.setReplaceDbProperties(true);
importer.setReplicaRequiredForReplaceOrUpdate(false);
importer.setAclImportOption(DxlImporter.DXLIMPORTOPTION_REPLACE_ELSE_IGNORE);
importer.setDesignImportOption(DxlImporter.DXLIMPORTOPTION_REPLACE_ELSE_CREATE);
importer.importDxl(stream, importdb);
}
} catch (Exception e) {
e.printStackTrace();
}
finally {
try {
System.out.println(importer.getLog());
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
文件C:\ tempssjslib.xml包含了我在Domino Designer中創建,然後使用「工具>導出的SSJS庫DXL實用程序>導出程序「(用於測試目的)。但是當我運行這個代理庫的時候,不是得到的數據庫導入。 DxlImporter.getLog()
也沒有錯誤。
我嘗試了與XPages,Form,LotusScript腳本庫類似的過程,併成功地導入它們。但同一個代理不能導入SSJS庫。
有沒有我在代碼中遺漏的東西?我們可以使用DXL在數據庫中導入SSJS庫嗎?
感謝渡輪的確切代碼。它也適用於只包含$ Flags的標籤。 – Naveen 2012-03-28 09:38:09