Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
アプリでPDF機能を実装してダウンロードしてみた
Search
balconia.inc
June 29, 2021
Programming
1.1k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
アプリでPDF機能を実装してダウンロードしてみた
balconia.inc
June 29, 2021
More Decks by balconia.inc
See All by balconia.inc
Amazon Connectで自動架電システムを作る
balconia
0
560
UIパッケージをつくってみた
balconia
0
350
Other Decks in Programming
See All in Programming
SREの越境 / SRE Collaboration
y0hgi
2
290
AWSに止められる覚悟してますか?
morizo_1984
2
490
速く作れる。その次は、速く確かめられる開発へ 〜AIネイティブ開発を支える、Shift Down〜 / Can build fast. Next, moving to development where we can verify fast.
rkaga
8
5.2k
Workers Cache を知る
syumai
0
310
JPUG勉強会 OSSデータベースの内部構造を理解しよう(第2回)
oga5
0
280
C#の現在地 進化の歴史と、AI時代の.NET Everywhere
neuecc
5
4.4k
スマートフォンでモールス信号を送受信する 〜スマートフォンのLEDとカメラで作る光通信の設計と実装〜
atsuki_seo
0
210
Intent as Code
shoppingjaws
6
1.1k
FreeBSDでZabbixを動かす
kenkino
0
340
JRuby: Past, Present, and Future
headius
0
210
Starting & Sustaining Code-Based E2E Testing for Non-Coding QA Teams( #jasstniigata )
teyamagu
PRO
1
770
mrbgem 三角測量 開発
ogom
0
150
Featured
See All Featured
Practical Orchestrator
shlominoach
192
12k
Done Done
chrislema
187
17k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.6k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.7k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
330
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
890
A Tale of Four Properties
chriscoyier
163
24k
ラッコキーワード サービス紹介資料
rakko
1
5.1M
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
850
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
780
Information Architects: The Missing Link in Design Systems
soysaucechin
1
1.2k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
270
Transcript
アプリで1%'機能を実装して ダウンロードしてみた。
2 アプリでPDF機能を実装してダウンロードしてみた。 ▪⽬次 1. ⾃⼰紹介 2. 概要 3. Webの実装で躓いた点 4.
他の躓いた点
3 ▪⾃⼰紹介 出⾝は⾹川県 2018年に新卒で⼊社して、現在4年⽬。 主な担当 • Javaを使ったサーバサイドの開発 • Androidアプリの開発など(勉強中) アプリでPDF機能を実装してダウンロードしてみた。
4 ▪概要 ・スマホやWebで帳票データをPDF表⽰する機能の実装 アプリでPDFダウンロード Web画⾯でPDFを表⽰ iOS, Android swift, kotlin Web
HTML, CSS, jQuery サーバ Java, Spring, JasperReport アプリでPDF機能を実装してダウンロードしてみた。
5 ▪Web躓いた点 仕様 Webでは、PDFはダウンロードではなく画⾯に表⽰させたい。 作り SPA、画⾯遷移する時にパスを指定してないので更新したらログ イン画⾯(最初に表⽰させいる画⾯)まで戻ってしまう。 →同⼀タブでPDFを表⽰したら元の画⾯に戻れなくなるため Window.open()使って別タブに表⽰する必要がある。 PDFボタン
帳票画⾯ 帳票PDF 初期画⾯ (ログイン) アプリでPDF機能を実装してダウンロードしてみた。
6 ▪Web躓いた点 Window.open()では、 GETするとリクエストURLにユーザIDがブラウザのアドレスバーに表⽰ されてしまう。 カスタムリクエストヘッダーを送れない。 アプリでPDF機能を実装してダウンロードしてみた。 知らんかった🥺
7 ▪Web躓いた点 GETダメなので、formタグを埋め込んでPOST送信にする必要があった。 formの場合、 コンテントタイプでapplication/jsonがない。 →application/x-www-form-urlencodedを指定。 (サーバサイドではMultiValueMap<String, String>で受け取る。) アプリでPDF機能を実装してダウンロードしてみた。
8 ▪他の躓いた点 サーバ • Jasper Studtoが重たすぎて全然機能しない→jrxmlを直接編集した。 • PDFは⽂字数でのサイズの調整実装した。Javaのserviceクラスから XMLのタグに属性の付与苦労した。 •
GETのURLをLineとかに貼り付けてURLをクリックしたりとかのテス トが⾜りてなかった。 アプリでPDF機能を実装してダウンロードしてみた。
9 ▪他の躓いた点 アプリ • iOS,Android共にファイルダウンロード⽤のhttpClientがなかった。 →両OS共に元々Jsonでの通信のみを想定た作りだった。 • Androidは特に、フォルダへのアクセス権限とか、クッキー情報の受 け渡しの実装が結構⼤変だった。 アプリでPDF機能を実装してダウンロードしてみた。
勉強の材料になるので⼀⼈で黙々と読んでいきたい。
10 結論︓ ファイルのダウンロード系は⼤変。 PDF作るのは根気がいる。 アプリでPDF機能を実装してダウンロードしてみた。
11 以上です︕ アプリでPDF機能を実装してダウンロードしてみた。