Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Alfresco勉強会#42 JavaScript Consoleをプログラムから使用する
Search
Jun TERASHITA
February 21, 2018
Technology
500
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Alfresco勉強会#42 JavaScript Consoleをプログラムから使用する
第42回Alfresco勉強会で発表した内容です。管理ツールのUIからそのまま使っても十分便利なJavaScript Consoleをプログラムから使用する方法をご紹介しました。
Jun TERASHITA
February 21, 2018
More Decks by Jun TERASHITA
See All by Jun TERASHITA
Alfresco勉強会#40 Alfrescoに大量のコンテンツを”なるべく簡単に”投入する方法
terajun
0
3.5k
Alfresco勉強会#39 Alfresco 5.2の新機能のご紹介
terajun
0
4.2k
Other Decks in Technology
See All in Technology
AIで実装は速くなった。なのにプロダクトは速くならない。職能の壁を越えて価値のフローを設計する
nwiizo
7
7.5k
Webとヘルスデータ
yukukotani
1
200
TinyGo 開発サイクルを高速化する:Go で作るエミュレータ入門
zozotech
PRO
1
130
OpenTelemetry eBPF Instrumentationの舞台裏 / Behind the Scenes of OpenTelemetry eBPF Instrumentation
ymotongpoo
3
370
GoCon2026 - Open Source, Open World
sanposhiho
2
570
#jawssonic2026 あの時代が悪かった ~動かなかったSageMakerと共に迎えたイベント当日~
ktkn1129
0
140
AI時代におけるプロダクト横断勉強会の設計
zozotech
PRO
0
170
Nav2、Nav3 ... はたまた自作?〜 作って理解する Nav3 の設計意図 〜 / Nav2, Nav3 ... or Build Your Own? — Understanding Nav3's design intent by building it from scratch
yanzm
0
260
「図書館」という名前のままでいいのか -Code4Lib JAPANカンファレンス2026 アンカンファレンス報告- / Code4Lib JAPAN Conference 2026: Unconference Report
ykiyota
0
120
2026/09/10 Spring_Bootから_Jakarta_EE_MicroProfileへの移行
megascus
0
240
Multica × 長期記憶:40個のミニプロジェクト管理
eiei114
1
210
AI時代のAPI品質を支えるガードレール / API Guardrails for API quality in the AI era
yokawasa
1
170
Featured
See All Featured
A Soul's Torment
seathinner
7
3.6k
From π to Pie charts
rasagy
0
360
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
290
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2.1k
Designing Experiences People Love
moore
143
24k
Chasing Engaging Ingredients in Design
codingconduct
0
300
Git: the NoSQL Database
bkeepers
PRO
432
67k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
190
Skip the Path - Find Your Career Trail
mkilby
1
220
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.6k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.9k
Transcript
݄ +VO5FSBTIJUB ୈճ"MGSFTDPษڧձ +BWB4DSJQU$POTPMFΛϓϩάϥϜ͔Β༻͢Δ
ൃද༰ αʔόαΠυͷ+BWB4DSJQUΛ։ൃ͢Δ࣌ʹඇৗʹศརͳ"MGSFTDPͷ +BWB4DSJQU$POTPMFΛϓϩάϥϜ͔Β͏ํ๏Λ͝հ͠·͢
+BWB4DSJQU$POTPMFͱʁ w "MGSFTDPͷαʔόαΠυ+BWB4DSJQUΛ։ൃ͢Δ࣌ʹཱͭඇৗʹศརͳπʔϧ w Πϯετʔϧํ๏͍ํʹ͍ͭͯաڈͷษڧձࢿྉΛ͝ࢀর͍ͩ͘͞ IUUQMBCPCMPHBFHJGKQBMGSFTDPKBWBTDSJQUDPOTPMFBEEPOIUNM
ϓϩάϥϜ͔Β+BWB4DSJQUΛ࣮ߦͤͯ݁͞ՌΛड͚औΓ͍ͨ w ಈ࡞֬ೝ͠ͳ͕Β+BWB4DSJQUΛͤ͞Δ·Ͱͷؒཧπʔϧͷ6*Ͱे w ͨ͠+BWB4DSJQUΛͬͯϓϩάϥϜ͔Βૢ࡞Ͱ͖ΔΑ͏ʹͳΕͬͱศརͳͣ w 4IBSFͷཧπʔϧͷ6*ը໘͔Βೖྗͨ͠ίʔυ֤छύϥϝʔλΛೖΕͨϦΫΤετΛ
"MGSFTDP1MBUGPSNʹ1045ͯ͠8FC4DSJQUΛୟ͍͍ͯΔ͚ͩͳͷͰɺͦͷ෦Λସͯ͋͛͠ ΕΑ͍
+BWB4DSJQUΛ࣮ߦ͍ͯ͠Δ෦ͷ8FC4DSJQU w 63-ɿIUUQMPDBMIPTUBMGSFTDPTFSWJDFEFGNFKTDPOTPMFFYFDVUF 1045͢Δ+40/ આ໌ TDSJQU ࣮ߦ͍ͨ͠+BWB4DSJQU
SVOBT +BWB4DSJQUͷ࣮ߦϢʔβ USBOTBDUJPO SFBEPOMZ·ͨSFBEXSJUF UFNQMBUF ݁ՌΛܗ͍ͨ͠߹ʹ༻͢ΔʢۭͰΑ͍ʣ EPDVNFOU/PEF3FG /PEF3FGΛࢦఆ͢Δͱ+BWB4DSJQUͷதͰEPDVNFOUͱ͍͏ 4DSJQU/PEFͱͯ͠ࢀরͰ͖ΔʢۭͰΑ͍ʣ TQBDF/PEF3FG /PEF3FGΛࢦఆ͢Δͱ+BWB4DSJQUͷதͰTQBDFͱ͍͏ 4DSJQU/PEFͱͯ͠ࢀরͰ͖ΔʢۭͰΑ͍ʣ VSMBSHT ΫΤϦύϥϝʔλͷܗͰࢦఆ͢Δͱ+BWB4DSJQUͷதͰBSHTύ ϥϝʔλ໊ͱͯ͠ࢀরͰ͖ΔʢۭͰΑ͍ʣ
8FC4DSJQUʹ+BWB4DSJQUΛ1045࣮ͯ͠ߦͤ͞Δ w 3VCZͰ1ZUIPOͰͳΜͰΑ͍ͷͰ+BWB4DSJQUϑΝΠϧΛ8FC4DSJQUʹ1045ͯ݁͠ՌΛ ड͚औΔεΫϦϓτΛ࡞͢ΕΑ͍ w 3VCZͷྫɿ+BWB4DSJQUͷϑΝΠϧ໊ͱ࣮ߦϢʔβΛҾͰ༩͑Δ require
'json' require 'net/https' ALFRESCO_ADDRESS="http://localhost:8080/alfresco/service/de/fme/jsconsole/execute" def exec_js_console if ARGV.length < 2 abort "specify js script file and running user" end js_file_name = ARGV[0] #Ҿ͔ΒJavaScriptͷϑΝΠϧ໊Λऔಘ running_user = ARGV[1] #Ҿ͔Β࣮ߦϢʔβΛऔಘ #build json post_json_hash = {} post_json_hash["template"] = "" post_json_hash["transaction"] = “readonly" post_json_hash["urlargs"] = "" post_json_hash["documentNodeRef"] = "" post_json_hash["spaceNodeRef"] = "" post_json_hash["runas"] = running_user ʻ࣍ϖʔδʹଓ͘ʼ
8FC4DSJQUʹ+BWB4DSJQUΛ1045࣮ͯ͠ߦͤ͞Δʢଓ͖ʣ ʻલϖʔδ͔Βͷଓ͖ʼ #read js file and set
to script (with escape) File.open(js_file_name) do |file| post_json_hash["script"] = file.read #ࢦఆͨ͠JavaScriptͷίʔυΛ֨ೲ end #post it to alfresco uri = URI.parse(ALFRESCO_ADDRESS) http = Net::HTTP.new(uri.host, uri.port) req = Net::HTTP::Post.new(uri.path) req.basic_auth "admin", "admin" req["Content-Type"] = "application/json" req.body = JSON.generate(post_json_hash) res = http.request(req) resultJson = JSON.parse(res.body) puts resultJson[“printOutput"] #݁Ռ֬ೝͷͨΊϨεϙϯεϘσΟͷprintOutputΛग़ྗ end exec_js_console
ʢσϞʣ
+BWB4DSJQU$POTPMFͷ%FGBVMU%FNP4DSJQUΛ࣮ߦͯ͠ΈΔ w ཧπʔϧ͔Β+BWB4DSJQU$POTPMFΛ։͖ɺʮ-PBE4DSJQUʯ͔Βʮ%FGBVMU%FNP4DSJQUʯ Λબͯ͠ʮ&YFDVUFʯΛΫϦοΫ ˠ݁Ռ͕ͳ͘දࣔ͞ΕΔ͜ͱΛ֬ೝ͢Δ w ͜ͷεΫϦϓτΛEFGBVMU@EFNP@TDSJQUKTͱͯ͠લड़ͷ3VCZͷεΫϦϓτͱಉ͡σΟϨΫτ
Ϧʹอଘ͢Δ w ҎԼͷίϚϯυΛ࣮ߦ $ ruby exec_js_console.rb default_demo_script.js admin
·ͱΊ w+BWB4DSJQU$POTPMFΛϓϩάϥϜ͔Β͏ํ๏Λ͝հ͠·ͨ͠ wςετͷࣗಈԽσʔλೖɺόονॲཧɺ͍Ζ͍ΖԠ༻Ͱ͖Δͱࢥ͏ͷͰ ͥͻ͓ࢼ͍ͩ͘͠͞
None