そのため、現在取り組んでいるプロジェクトでAlfrescoを使用しています。このプロジェクトの最新の要件のひとつは、Oracleデータベースからシーケンス番号を取得し、Alfrescoのスペース内にカスタムプロパティを設定することです。
var conObj = new ActiveXObject('ADODB.Connection');
var connectionString = "Provider=OraOLEDB.Oracle;Data Source=(DESCRIPTION=(CID=GTU_APP)(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=IP ADDRESS)(PORT=XXXX)))(CONNECT_DATA=(SID=your_SID)(SERVER=DEDICATED)));User Id=username;Password=pwd;"
conObj.Open(connectionString);
var rs = new ActiveXObject("ADODB.Recordset");
var caseID;
sql = "INSERT INTO case(mod_dt,mod_user) values(sysdate,’user’) RETURNING id"
rs.Open(sql, conObj);
caseID = rs(0);
logger.log("The new case id is: " + caseID);
rs.close;
しかし、これは次のように戻ってきました。
Caused by: org.mozilla.javascript.EcmaError: ReferenceError: "ActiveXObject" is not defined. (workspace://SpacesStore/b3145512-e54d-4d9e-9655-0b6ae678e39b#141)
そのため、AlfrescoのJavascriptAPIにはJavascriptの全機能が備わっていないことに気づきました。独自のJavaクラスを作成し、Alfresco javascript内からそれらを呼び出すことについて何か読んだことがありますが、良い例は見当たりませんでした。誰かがこれを経験したことがありますか、またはAlfresco Javascript内から呼び出すJavaクラスを作成する簡単な例を示すことができますか?