O slideshow foi denunciado.
Seu SlideShare está sendo baixado. ×

WagbyR920ReleaseNote.pptx

Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Carregando em…3
×

Confira estes a seguir

1 de 36 Anúncio

Mais Conteúdo rRelacionado

Semelhante a WagbyR920ReleaseNote.pptx (20)

Mais de Yoshinori Nie (18)

Anúncio

Mais recentes (20)

WagbyR920ReleaseNote.pptx

  1. 1. Wagby R9.2 Release Note 2023.1.30 (株)ジャスミンソフト
  2. 2. Java 17 対応 / Java 8,9,10 はサポート対象 外 Wagby R8.x Wagby R9.0.0 〜 R9.1.x Wagby R9.2.0〜 Java 8 〜 15 Java 8 〜 15 Java 11 〜 Java8ではDesignerの起動ができない。 Java 17 以降でビルド&実行したときは OpenJDK Nashorn 利用 初期値は Java 8 (1.8) 初期値は Java 11 (11) 1.8/9/10指定不可 ※ スクリプト互換性あり。 重要 Java8で運用する場合、R9.1.xを引き続きご利用ください。(注:Springをはじめとする多くのOSSがJava8のサポートを終了します。) ※ この対応にあわせて、R9.2.0以降はWagby本体もJava11でコンパイルしています。(それまではJava8でコンパイルしていました。) 旧リポジトリ読み 込みで、1.8は11 に変更されます。 2025.1 EOL 2025.1 EOL
  3. 3. 新しい機能
  4. 4. ガントチャート https://wagby.com/manual9/operation-scheduleview.html
  5. 5. タイムライン https://wagby.com/manual9/operation-scheduleview.html
  6. 6. 複合キーの強化 https://wagby.com/wdn9/complexkey-n1.html R9.0/R9.1では、スクリプトで代用していた。 MODEL1.PKEY1 = MODEL1.ITEM1PKEY1; MODEL1.PKEY2 = MODEL1.ITEM1PKEY2; 入力専用項目であり、実際の値は 「モデルAの主キー1」「モデルAの 主キー2」項目の値を使う。
  7. 7. PDF埋め込み表示 https://wagby.com/manual9/modelitem-file.html スクロールバーを使って全体を閲覧 することもできます。
  8. 8. 繰り返しコンテナのソートアイコンの変更 https://wagby.com/manual9/container-sort.html 用途は同じ、アイコンのみ変更され ました。
  9. 9. 検索制御 > 文字列のAND/OR検索の仕様 https://wagby.com/manual9/condition-AND_OR.html R9.1.xまで、複数の単語で検索する場合は半角スペースを区切り文字としていました。 R9.2.0より、全角スペースも区切り文字として認識します。 全角スペースを入力 ※ 全角スペースそのものや、全角スペース込みで検索したい場合は二重引用符で括ってください。例 “鈴木 太郎”
  10. 10. 検索制御 > 値変更時に画面を再描画する https://wagby.com/manual9/condition-reload.html 入力画面では再描画させるが、検索画面では再描画させない、といった細かい 制御ができるようになる。
  11. 11. カレンダビュー > 日時の自動セット https://wagby.com/manual9/operation-calendarview-dj.html#allday 登録時に「終日」をチェックすると、開始日時と終了日時を自動セットする。
  12. 12. カレンダビュー > 検索画面へ遷移するボタン https://wagby.com/manual9/operation-calendarview-dj.html#item-1-10 カレンダビューから検索画面へ。これまでは「パンくず」を使って遷移していました。
  13. 13. メール送信 > 送信前に確認ダイアログを出す https://wagby.com/manual9/mail-sendbymanual.html#item-1-15
  14. 14. ワークフロー> 処理者の表示 https://wagby.com/manual9/workflow-run.html#username R9.0.0〜R9.1.x R9.2.0〜 ※ この対応で、システムモデル「保留フロー状態 (jfcsuspendworkstate)」に「申請者名(createuserName)」を追加しました。 DB保存なし項目なので、テーブル定義に変更はありません。
  15. 15. レイアウト> ピクセル指定 https://wagby.com/manual9/layout-basic.html#settingpx ※ 表示幅をピクセル指定することで、ウィンドウサイズを変えてもリサイズされなくなります。 CSSレイアウトのみ
  16. 16. レイアウト> 初期化 https://wagby.com/manual9/layout-basic.html#item-1-9 レイアウト初期化ボタンにより、これまでのレイアウトをいったんリセットすることができます。
  17. 17. その他 • リッチテキストエリアの幅、高さの指定を親子同時更新画面にも適用する。 • “親キー以外の値を用いて子モデル一覧表示を行う” 機能を無効化できる設定を用意する。 https://wagby.com/wdn9/foreignkey-alternatecond.html#off • 関数 URLENCODE を提供する。 • 関数 WEBAPI を提供する。 • スクリプトで日付時刻型関数の引数に null を指定した時、型のあいまいさによる実行時エ ラーを防ぐ処理を含める。 • マイグレート処理 (migrate_db) でインデックスの削除と作成を行えるようにする。
  18. 18. スクリプト
  19. 19. ヘルパ > コピー https://wagby.com/wdn9/operation-script-pkey-eda.html コピー登録時に枝番を付与する処理 をスクリプトで記述したサンプル。 標準機能よりも、さらに細かい制御 を行えるようになります。
  20. 20. ヘルパ > アップロード更新 (1件処理後) https://wagby.com/wdn9/inoutcsv-uploadscript.html#helper 読み込んだヘッダ部および行を、文字配 列として参照することができます。 (注:読み込み専用) var header = p.request.getAttribute("DbUploadUpdate_header"); var data = p.request.getAttribute("DbUploadUpdate_data"); print(Packages.java.util.Arrays.asList(header)); print(Packages.java.util.Arrays.asList(data));
  21. 21. ジョブ > ジョブ実行前・後のスクリプト https://wagby.com/wdn9/operation-script-sys.html#job ジョブ実行の前に起動するスクリプト、 ジョブ実行の後に起動するスクリプトを それぞれ指定できます。 ※ スクリプトは Designer で作成することはできません。直接 WEB-INF/script/__job フォルダ以下に保存してください。
  22. 22. アプリケーション起動時のスクリプト https://wagby.com/wdn9/operation-script-sys.html#init 起動時のスクリプトはジョブとして1 回だけ実行されます。ジョブを実行 するアカウントの権限が適用されま す。
  23. 23. ログオン・ログオフ時のスクリプト https://wagby.com/wdn9/operation-script-sys.html#logon ログオンスクリプトは return で遷移先 画面を指定できます。メニュー以外の 画面へ遷移させる制御が可能です。 ログオフスクリプトはログオフ 操作およびセッションタイムア ウト時に呼び出されます。
  24. 24. スクリプト文法の拡張 let x = 0; print(x); // 0が表示 let x = 1; // 同じ関数内で同名の変数宣言はエラー Java 17 以降 let const CONST_VALUE = 100;// 変更できない定数 print("CONST_VALUE="+CONST_VALUE); let letValue = CONST_VALUE + 1; print("letValue="+letValue); var varValue = letValue + 1; print("varValue="+varValue); const let x = 0; print(x); //0が表示 { let x = 1;// スコープ内で別扱い print(x);//1が表示 } print(x);//0が表示 let wdays = ['日', '月', '火', '水', '木', '金', '土']; for (let day of wdays) { print(${day}+"曜日"); } for…of ※ これらの構文を使った場合、Java 11 では運用することができません。
  25. 25. 運用
  26. 26. Tomcatパラメータ設定の拡張 https://wagby.com/manual9/env-server.html HTTPヘッダの最大サイズ ログに “java.lang.IllegalArgumentException: リクエスト ヘッダが長すぎます” と出力されている場合に変更してく ださい。 リクエストパラメータの最大値 ログに “単独のリクエス ト ([20,000]) のリクエストパラ メーター (GET および POST) の数が上限値を 超えていま す。” と出力されている場合に変更してください。 POSTの最大サイズ 上のリクエストパラメータ変更とあわせてください。
  27. 27. コンソールログの表示 これまでは Tomcat を実行しているコンソールを直接、閲覧する必要がありました。ブラウザだけで確認できるようになります。 ※ 対象時刻の5秒前からのログを最大1,000件表示します。 ※ 対象は system.log です。catalina.out ではありません。 ※ ログローテートされたものは対象外です。 ※ ログ閲覧の権限がないユーザアカウントでは、本機能は利用できません。(通常はシステム管理者です。)
  28. 28. その他 • モデルを指定したインポートで、そのモデルが全文検索を使っていなければ、インポート後 の全文検索インデックスの再作成と最適化処理を行わないようにする。 • プリンシパル変更でjuserのインポートを行うと全文検索インデックス再作成が行われて時間がかかる、という問題の改善を図る。 • Tomcat起動時の compressableMimeType 警告メッセージを出力させない。 • キャッシュライブラリ ehcache が net.sf.ehcache.pool.sizeof.ObjectGraphWalker checkMaxDepth という警告を出すことを抑制する。 • アプリケーションの実行時エラーで「内部エラーが発生しました」というページに遷移した とき、この画面からTomcatコンソールに出力されているエラーメッセージ (system.log) を 直接、閲覧できるようにする。
  29. 29. セキュリティ強化
  30. 30. HTTPヘッダ>Strict-Transport-Security Strict-Transport-Security: max-age=31536000 ; includeSubDomains https://wagby.com/wdn9/secparams.html#httpheader 標準ON Strict-Transport-Security ヘッダを設定することで HSTS (HTTP Strict Transport Security) が有効になり ます。これによってブラウザからサイトへの接続試行を HTTPS へ制限します。つまり HSTS では 「HTTP による通信」が行われなくなるため、中間者攻撃による盗聴と通信改ざんのリスクが軽減され ます。 ※ 標準でONですが、https 通信時のみ有効になります。ローカルテスト環境で http 通信を使う場合は影響ありません。 ※ application.properties の設定で、この動作をOFFとすることもできます。
  31. 31. HTTPヘッダ>Content-Security-Policy Content-Security-Policy: default-src 'self' 'unsafe-inline' 'unsafe-eval' https://wagby.com/wdn9/secparams.html#httpheader 標準OFF すべてのレスポンスに Content-Security-Policy(CSP) を適切なパラメタとともに付与することで、クロス サイトスクリプティング脆弱性のリスクを低減できるようになります。 ※ 標準でOFFです。application.propertiesの設定でONにすることができます。 ※ この設定があるとポートレットが外部の JavaScript を実行するような動作ができません。出力値を変更する場合、アプリケーション の動作上の制約にならないかどうかを検討の上、変更を行ってください。
  32. 32. HTTPヘッダ>Referrer-Policy https://wagby.com/wdn9/secparams.html#httpheader 標準ON ブラウザの Referrer を介し、ページの URL が外部サイトに共有されます。Wagbyの標準は「外部サイ トに Referrer を提供しない (same-origin)」です。 ※ 挙動を変更することもできます。 •NO_REFERRER •NO_REFERRER_WHEN_DOWNGRADE •ORIGIN •ORIGIN_WHEN_CROSS_ORIGIN •SAME_ORIGIN (標準) •STRICT_ORIGIN •STRICT_ORIGIN_WHEN_CROSS_ORIGIN •UNSAFE_URL
  33. 33. Referrer チェック https://wagby.com/wdn9/secparams.html#httpheader Referrerが正しいリンク元かを確認し、正しい場合のみ処理を実行するという制御を有効にします。 具体的にはReferrerの先頭部分が、指定した文字列であるかどうかをチェックします。異なる場合はエ ラー画面に遷移します。 ※ application.propertiesに「正しいリンク元」を設定します。 標準OFF wagby.checkreferrer.url=http://localhost:8921/wagby/ wagby.checkreferrer.acceptempty=false wagby.checkreferrer.excludepath=
  34. 34. ライブラリのアップデート • Tomcat を 9.0.70 にバージョンアップする。 • Hibernate を 5.1 系から 5.6.5 Final にバージョンアップする。 • Spring framework を 5.2 系から 5.3.20 にバージョンアップする。 • Spring boot を 2.2 系から 2.6.3 にバージョンアップする。 • Spring security を 5.2 系から 5.8.1 にバージョンアップする。 • Spring batch を 2.12 系から 2.13.1 にバージョンアップする。 • Thymeleaf を 3.0.11 から 3.0.15 にバージョンアップする。 • Apache Ant を 1.9.14 から 1.10.12 にバージョンアップする。 • Apache Tika を 2.2.1 から 2.4.1 にバージョンアップする。 • Apache POI を 4.1.2 から 5.2.2 にバージョンアップする。 • … R9.2系は、Spring/Hibernateを中 心に、セキュリティ脆弱性に対 応していきます。 ところで、これらのOSSはJava 8対応版を終了しつつあります。 しかし R9.0.0〜R9.1.xはJava 8 対応を継続するため、ライブラ リのバージョンアップは行わな い(行えない)時期がきます。 R9.0.0〜R9.1.xの継続利用は可 能ですが、今後、脆弱性は残っ たままになる可能性があること に留意してください。
  35. 35. 移行時の注意点
  36. 36. R9.2.0へのバージョンアップ • Java は 11 以上を利用してください。 • スクリプトおよびJavaカスタマイズコードの変更が必要場合。 • commons-lang.jar を使っているところはcommons-lang3.jarを使うように修正。 • commons-httpclient.jarは同梱されていません。Apache HttpComponetを利用するように書き換えるか、手 動でcommons-httpclient.jarをlibフォルダに配置してください。[注:脆弱性の懸念あり] • Hibernate バージョンアップにより、次のデータベース設定が追加されています。 • PostgreSQL 10 and later • SQLServer 2016 and later • MySQL利用時、日付時刻型が datetime から datetime(6) に変更されています。ただしWagbyは ミリ秒を扱っていないためデータ移行での影響はありません。 https://wagby.com/migration/migration_r9_2_0.html#customize

×