SlideShare a Scribd company logo
1 of 15
Download to read offline
Copyright © Virtual Technology, Inc
ReactでPDF帳票を出⼒する
2017/8/24 ⽵嵜 伸⼀郎(@stakezaki)
1
Copyright © Virtual Technology, Inc
⽵嵜 伸⼀郎 (たけざき しんいちろう)
twitter id:stakezaki
(有)バーチャルテクノロジー代表取締役
元⽇本IBM
元株式会社暮らしのデザインCTO
2
Copyright © Virtual Technology, Inc
私達のビジョン
”もうフルスタックエンジニアはいらない。
HTMLとJSの知識さえあればWebサービスを
開発できる。
そのような世界を私たちは⽬指しています。”
3
Copyright © Virtual Technology, Inc
API以外の余計なことは考えたくない
4
適当に分散して勝⼿にスケールすることを期待
これが真のサーバレスではないのか!?
Copyright © Virtual Technology, Inc
vte.cx (ブイテックス)
• http://admin.1.vte.cx
5
2015/12 オープンβ
Copyright © Virtual Technology, Inc
DEMO
6
Copyright © Virtual Technology, Inc
敢えてフロントエンドの世界に⾶び込む
• HTML、CSS、JavaScriptなどのコーディングだ
けで本格的なWebシステムを作れるようにした
• サーバサイドのAPI (API設計とスキーマ)もフロ
ントエンドエンジニアが⾃由に作れるようにした
• JavaScriptのエコシステムを採⽤することでロッ
クインを排除した(独⾃ライブラリを提供しない)
7
Copyright © Virtual Technology, Inc
vte.cx の主な機能
• REST APIを直感的な規約で作成できる
• ユーザ・グループ管理、ACL管理
• ソフトスキーマ
• トランザクション管理
• サーバサイドJavaScript
• EXCEL、PDF帳票出⼒機能
KVS
Web
スマホ
オンライントランザクション処理 データ分析
※2018年リリース予定
Copyright © Virtual Technology, Inc
vte.cxの3つのこだわり
• バックエンドの複雑さを隠蔽
– サーバ構成の都合をクライアントに押し付けない
– Microservicesでありがちな認証などの考慮をクライア
ントにさせない
• Webアプリのことだけに集中させる
– 重要なのはAPIとスキーマ設計(+ACL)
– 静的コンテンツを含めSame Originで管理する
• ローカル開発環境やCI/CD環境を提供
– JavaScriptエコシステムを利⽤したローカル開発環境
– 複数のブランチに対応したサービスを⾃由に作成可能
– CircleCIなどによる⾃動デプロイ
9
Copyright © Virtual Technology, Inc10
• URLをフォルダに⾒⽴てて⾃由に設定・追加可能
• リソースを様々なフォーマットに変換可能
• XML、JSON、MessagePack等などのデータ
• HTMLやCSS、JavaScript、PDF、画像などの静的コンテンツ
REST APIと直感的な規約
Copyright © Virtual Technology, Inc
スキーマ
• シンプルなシンタックス
– 「項⽬名(型)= 正規表現」の形式で記述
– Indexを指定可能
– 正規表現でバリデーション
• ソフトスキーマ
– 項⽬の追加が可能
– 運⽤中でも変更可
11
Copyright © Virtual Technology, Inc
BFF(Backend for Frontend)の導⼊
• クライアント偏重の是正
– ⾮同期コールバック地獄に陥りがちなクライアントより
サーバで処理実⾏した⽅が有利であることに気づく
• Thin Server Architectureを⾒直し
– サーバサイドの開発はやはり必要
– Server Side Javascriptでビジネスロジック記述
– SSR、動的PDF帳票出⼒
• Java8(Nashorn)
– マルチスレッド
– Nodeにおけるイベントループ
の停⽌を回避
12
例えば、
鏡と明細の
マージ編集
Copyright © Virtual Technology, Inc
動的PDF帳票出⼒をReactで
• ReactのSSRでHTMLを⽣成し、それをvte.cxのPDF
変換機能(reflex itext)を使ってPDFにする
13
Reflex iText
(弊社プロダクト)
Copyright © Virtual Technology, Inc
9/20 勉強会#2やります!
https://vtecx.connpass.com/event/65163/
14
React vtecxで検索!
Copyright © Virtual Technology, Inc15
support@virtual-tech.net
パートナー募集中!

More Related Content

More from Shinichiro Takezaki (14)

Web study20171007
Web study20171007Web study20171007
Web study20171007
 
React vtecx20170920
React vtecx20170920React vtecx20170920
React vtecx20170920
 
React vtecx20170822
React vtecx20170822React vtecx20170822
React vtecx20170822
 
Builderscon Tokyo 2017
Builderscon Tokyo 2017 Builderscon Tokyo 2017
Builderscon Tokyo 2017
 
Enterpriseapi20160210
Enterpriseapi20160210Enterpriseapi20160210
Enterpriseapi20160210
 
Vtecx20151216 2
Vtecx20151216 2Vtecx20151216 2
Vtecx20151216 2
 
Vtecx20151216
Vtecx20151216Vtecx20151216
Vtecx20151216
 
Vtecxlt20151201
Vtecxlt20151201Vtecxlt20151201
Vtecxlt20151201
 
Angularreflex20141210
Angularreflex20141210Angularreflex20141210
Angularreflex20141210
 
No nosql20130424
No nosql20130424No nosql20130424
No nosql20130424
 
BPStudy20121221
BPStudy20121221BPStudy20121221
BPStudy20121221
 
Gaeja20121130
Gaeja20121130Gaeja20121130
Gaeja20121130
 
Reflex works20120818 1
Reflex works20120818 1Reflex works20120818 1
Reflex works20120818 1
 
Groovyコンファレンス
GroovyコンファレンスGroovyコンファレンス
Groovyコンファレンス
 

Java scripters20170824

  • 1. Copyright © Virtual Technology, Inc ReactでPDF帳票を出⼒する 2017/8/24 ⽵嵜 伸⼀郎(@stakezaki) 1
  • 2. Copyright © Virtual Technology, Inc ⽵嵜 伸⼀郎 (たけざき しんいちろう) twitter id:stakezaki (有)バーチャルテクノロジー代表取締役 元⽇本IBM 元株式会社暮らしのデザインCTO 2
  • 3. Copyright © Virtual Technology, Inc 私達のビジョン ”もうフルスタックエンジニアはいらない。 HTMLとJSの知識さえあればWebサービスを 開発できる。 そのような世界を私たちは⽬指しています。” 3
  • 4. Copyright © Virtual Technology, Inc API以外の余計なことは考えたくない 4 適当に分散して勝⼿にスケールすることを期待 これが真のサーバレスではないのか!?
  • 5. Copyright © Virtual Technology, Inc vte.cx (ブイテックス) • http://admin.1.vte.cx 5 2015/12 オープンβ
  • 6. Copyright © Virtual Technology, Inc DEMO 6
  • 7. Copyright © Virtual Technology, Inc 敢えてフロントエンドの世界に⾶び込む • HTML、CSS、JavaScriptなどのコーディングだ けで本格的なWebシステムを作れるようにした • サーバサイドのAPI (API設計とスキーマ)もフロ ントエンドエンジニアが⾃由に作れるようにした • JavaScriptのエコシステムを採⽤することでロッ クインを排除した(独⾃ライブラリを提供しない) 7
  • 8. Copyright © Virtual Technology, Inc vte.cx の主な機能 • REST APIを直感的な規約で作成できる • ユーザ・グループ管理、ACL管理 • ソフトスキーマ • トランザクション管理 • サーバサイドJavaScript • EXCEL、PDF帳票出⼒機能 KVS Web スマホ オンライントランザクション処理 データ分析 ※2018年リリース予定
  • 9. Copyright © Virtual Technology, Inc vte.cxの3つのこだわり • バックエンドの複雑さを隠蔽 – サーバ構成の都合をクライアントに押し付けない – Microservicesでありがちな認証などの考慮をクライア ントにさせない • Webアプリのことだけに集中させる – 重要なのはAPIとスキーマ設計(+ACL) – 静的コンテンツを含めSame Originで管理する • ローカル開発環境やCI/CD環境を提供 – JavaScriptエコシステムを利⽤したローカル開発環境 – 複数のブランチに対応したサービスを⾃由に作成可能 – CircleCIなどによる⾃動デプロイ 9
  • 10. Copyright © Virtual Technology, Inc10 • URLをフォルダに⾒⽴てて⾃由に設定・追加可能 • リソースを様々なフォーマットに変換可能 • XML、JSON、MessagePack等などのデータ • HTMLやCSS、JavaScript、PDF、画像などの静的コンテンツ REST APIと直感的な規約
  • 11. Copyright © Virtual Technology, Inc スキーマ • シンプルなシンタックス – 「項⽬名(型)= 正規表現」の形式で記述 – Indexを指定可能 – 正規表現でバリデーション • ソフトスキーマ – 項⽬の追加が可能 – 運⽤中でも変更可 11
  • 12. Copyright © Virtual Technology, Inc BFF(Backend for Frontend)の導⼊ • クライアント偏重の是正 – ⾮同期コールバック地獄に陥りがちなクライアントより サーバで処理実⾏した⽅が有利であることに気づく • Thin Server Architectureを⾒直し – サーバサイドの開発はやはり必要 – Server Side Javascriptでビジネスロジック記述 – SSR、動的PDF帳票出⼒ • Java8(Nashorn) – マルチスレッド – Nodeにおけるイベントループ の停⽌を回避 12 例えば、 鏡と明細の マージ編集
  • 13. Copyright © Virtual Technology, Inc 動的PDF帳票出⼒をReactで • ReactのSSRでHTMLを⽣成し、それをvte.cxのPDF 変換機能(reflex itext)を使ってPDFにする 13 Reflex iText (弊社プロダクト)
  • 14. Copyright © Virtual Technology, Inc 9/20 勉強会#2やります! https://vtecx.connpass.com/event/65163/ 14 React vtecxで検索!
  • 15. Copyright © Virtual Technology, Inc15 support@virtual-tech.net パートナー募集中!