本ガイドは、iPLAss 3.2 から 4.0 へのアップグレードに関する情報を提供します。
1. 動作環境の変更
iPLAss 4.0 を動作させるためには、以下の環境が必要です。
1.1. iPLAss framework
Java |
Java 21以上 |
APサーバ |
Tomcat 10.1(Servlet 6.0、JSP 3.1以上を実装するWebコンテナ) |
DBサーバ |
Oracle 19c以上、MySQL 8.0以上、PostgreSQL 12以上、SQL Server 2016以上、Amazon Aurora |
1.2. Web Account Manager plugin module
Apache版 |
Apache HTTP Server 2.4 |
IIS版 |
IIS 8.5以上 |
JavaEE版 |
Java 21以上 |
Serverless(JavaScript)版 |
Fetch APIに対応したJavaScriptランタイムが提供されるサーバーレス環境(CDN前段などで動作するエッジ環境) |
2. Java 21 への対応
iPLAss 4.0 では、Java 21 以上が必要です。以下の点に注意してください。
-
削除された機能やAPIを使用していないか確認してください。
-
依存ライブラリがJava 21 以上に対応しているか確認してください。
-
Gradleファイル(build.gradle)でJavaのターゲットバージョンを指定している場合は、Java 21 以上を指定してください。
-
Eclipse WTPプロジェクトのファセット設定で、JavaのバージョンをJava 21以上に変更してください。
3. Jakarta EE 10 への対応
iPLAss 4.0 では、Jakarta EE 10 に準拠しています。それに伴い、以下の変更が必要となります。
-
Gradleファイル(build.gradle)に定義されている Jakarta EE 8 用の依存関係を Jakarta EE 10 用の依存関係に変更する必要があります(推移的に依存しているライブラリにも注意が必要です)。
-
Jakarta EE 9 以降では、
javax
パッケージではなく、jakarta
パッケージを使用するようになりました。プロジェクト内のJava/Groovyコードのimport文をjakarta
パッケージに変更する必要がある可能性があります(GroovyコードはメタデータのXML内にあります)。 -
JSPのタグライブラリのURIを変更する必要があります。例えば、coreタグライブラリのURIは、
http://java.sun.com/jsp/jstl/core
からjakarta.tags.core
に変更する必要があります。 -
web.xmlのXSD(XML Scheme Definition)をJakarta EE 10 用に変更する必要があります。
-
web.xmlに定義されているJAX-RS(Jersey)のServlet定義の
<param-name>
の値をjakarta.ws.rs.Application
に変更する必要があります。 -
Eclipse WTPプロジェクトのファセット設定で、
Dynamic Web Module
のバージョンを6.0
に、Runtimes
をApache Tomcat v10.1
に変更してください。
変更内容の詳細については、スケルトンプロジェクトやサンプルアプリのリポジトリにおいて、Jakarta EE 10 への対応が行われたGitHub Pull Requestを参照してください。
4. 非推奨項目の削除
iPLAss 3.2で非推奨とされていた以下の機能が削除されました。
-
Eclipse Plugin
-
代替として、Gradle Pluginを使用してください。
-
-
Solrを用いた全文検索機能
-
代替として、Luceneもしくは Elasticsearch/OpenSearch を用いた全文検索機能を使用してください。
-
-
EUC(AppConsole)
-
EUC機能は削除されました。代替機能は提供されていません。
-
また、3.2で非推奨だったクラス、メソッド、プロパティの一部は4.0で削除されました。アップグレードする前に、非推奨のメソッドを呼び出していないことを確認してください。
5. 互換性に関する注意事項
iPLAss 4.0 でのすべての変更点の一覧については、以下のリンクを参照してください。
https://github.com/dentsusoken/iPLAss/releases/tag/4.0.0
互換性に関する注意事項は以下の通りです。
5.1. コミュニティ版
-
service-configファイルの記述方法と挙動の改善
-
詳細は、 iPLAss Issues #1612 を参照してください。
-
-
プッシュ通知機能、Firebase Cloud Messaging(FCM)のHTTP v1 APIへの対応
-
詳細は、 iPLAss Issues #1593 を参照してください。
-
-
GEMモジュール、jQueryなどWebJars管理のJavaScriptライブラリのバージョンアップ
-
詳細は、 iPLAss Issues #1412 を参照してください。
-
-
GEMモジュール、StringPropertyEditorのリッチテキストライブラリのデフォルトをQuillに変更
-
詳細は、 iPLAss Issues #1605 を参照してください。
-
-
帳票出力機能、Jxlsのメジャーバージョンアップ
-
詳細は、 iPLAss Issues #1570 を参照してください。
-
-
全文検索機能、Luceneのメジャーバージョンアップ
-
詳細は、 iPLAss Issues #1542 を参照してください。
-
5.2. エンタープライズ版
-
WebJars管理のJavaScriptライブラリバージョンアップ
-
GEMモジュール、MDCモジュール、WAMモジュール内で使用しているWebJars管理のJavaScriptライブラリのバージョンがアップデートされています。アップデート対象のライブラリを使用したカスタムコードを記述している場合は、バージョンアップに伴う変更点を確認してください。
-
GEMモジュール
名前 旧バージョン 新バージョン org.webjars.bower:jQuery-contextMenu → org.webjars.npm:jquery-contextmenu
2.8.0
2.9.2
-
MDCモジュール
名前 旧バージョン 新バージョン org.webjars:pdf-js
4.2.67
4.4.168
org.webjars.npm:js-cookie
3.0.1
3.0.5
org.webjars:bootstrap
5.2.0
5.3.3
-
WAMモジュール
名前 旧バージョン 新バージョン org.webjars:jquery
3.5.1
3.7.1
org.webjars:momentjs → org.webjars.npm:moment
2.29.4
2.30.1
org.webjars:bootstrap
5.2.0
5.3.3
org.webjars:bootstrap-datepicker
1.9.0
1.10.0
org.webjars.npm:popperjs__core
2.11.5
2.11.8
-
-
-
MDCモジュールにおけるBreaking Changes
-
カラースキーム指定方法の変更
-
テーマによるカラー指定は、メタデータとMdcConfigServiceの両方で廃止されました。代替として、テナントのメタデータで画面のカラースキームを指定してください。
カラースキームはMaterial Design 3の配色に準拠しており、4.0から新たにTertiary
、Surface Container
の2つが追加されました。
指定可能なカラースキームの詳細については、カラースキームを参照してください。
-
-
ランタイムライブラリのバージョンアップ
-
MDCモジュール内で使用しているランタイムライブラリのバージョンがアップデートされています。アップデート対象のライブラリを使用したカスタムコードを記述している場合は、バージョンアップに伴う変更点を確認してください。
公開ライブラリ 名前 旧バージョン 新バージョン vue
3.3.13
3.5.10
vuetify
3.4.9
3.7.2
vue-i18n
9.5.0
10.0.3
axios
1.5.1
1.7.7
dayjs
1.11.10
1.11.13
-
-
Vue.jsの公開コンポーネントのインタフェース変更
MBottomAppBar タイプ 名前 4.0での変更点 props
inDialog
削除
props
noElevation
削除
MBottomAppBarIcon タイプ 名前 4.0での変更点 props
hideIcon
削除
props
noRightMargin
削除
slots
default
削除
MSearchCondition タイプ 名前 4.0での変更点 props
showSearchMethodSelectTab
削除
expose
versioned
削除
expose
getSearchConditionSection
削除
expose
searchMethodSelectTabIndex
削除
expose
setSearchMethodSelectTabIndex
削除
MSearchConditionDialog タイプ 名前 4.0での変更点 props
sliderColor
削除
events
change:search-condition
データ型をSearchConditionから{ searchCondition: SearchCondition; immediate: boolean; }に変更
events
do-custom-click-event-handler
削除
MSearchResult タイプ 名前 4.0での変更点 events
do-custom-click-event-handler
削除
-
Javaの公開パッケージクラスのクラス名・パッケージ変更
org.iplass.mtp.mdc.command クラス名 4.0での変更点 org.iplass.mtp.mdc.command.
auth.impersonation.BaseImpersonationCommand削除
org.iplass.mtp.mdc.command.
auth.setting.twostep.BaseTwoStepVerificationSettingCommand削除
org.iplass.mtp.mdc.command.
view.entityview.detail.auditlog.AuditLogDataorg.iplass.mtp.mdc.view.
entityview.detail.auditlog.AuditLogDataにクラス名変更org.iplass.mtp.mdc.command.
view.entityview.detail.auditlog.BaseGetAuditLogCommand削除
org.iplass.mtp.mdc.command.
view.entityview.detail.DeleteCommandorg.iplass.mtp.mdc.command.
view.entityview.detail.delete.DeleteCommandにクラス名変更org.iplass.mtp.mdc.command.
view.entityview.detail.GetVersionCommandorg.iplass.mtp.mdc.command.
view.entityview.detail.version.GetVersionCommandにクラス名変更org.iplass.mtp.mdc.command.
view.entityview.detail.LockCommandorg.iplass.mtp.mdc.command.
view.entityview.detail.lock.LockCommandにクラス名変更org.iplass.mtp.mdc.command.
view.entityview.detailUnlockCommandorg.iplass.mtp.mdc.command.
view.entityview.detail.lock.UnlockCommandにクラス名変更org.iplass.mtp.mdc.command.
view.entityview.search.delete.DeleteConditionCommandorg.iplass.mtp.mdc.command.
view.entityview.search.delete.BatchDeleteBySearchConditionCommandにクラス名変更org.iplass.mtp.mdc.command.
view.entityview.search.delete.DeleteConditionParameterorg.iplass.mtp.mdc.command.
view.entityview.search.delete.BatchDeleteBySearchConditionParameterにクラス名変更org.iplass.mtp.mdc.command.
view.entityview.search.delete.DeleteListCommandorg.iplass.mtp.mdc.command.
view.entityview.search.delete.BatchDeleteBySelectionListCommandにクラス名変更org.iplass.mtp.mdc.command.
view.entityview.search.delete.DeleteListParameterorg.iplass.mtp.mdc.command.
view.entityview.search.delete.BatchDeleteBySelectionListParameterにクラス名変更org.iplass.mtp.mdc.command.
view.entityview.search.delete.DeleteTarget削除
org.iplass.mtp.mdc.command.
view.entityview.search.error.detail.DetailSearchApplicationException
org.iplass.mtp.mdc.command.
view.entityview.search.error.detail.DetailSearchError
org.iplass.mtp.mdc.command.
view.entityview.search.error.detail.DetailSearchValidateErrororg.iplass.mtp.mdc.command.
view.entityview.search.error.DetailSearchErrorに統合org.iplass.mtp.mdc.command.
view.entityview.search.select.SearchSelectListCommandorg.iplass.mtp.mdc.command.
view.entityview.search.select.SearchBatchSelectionListCommandにクラス名変更org.iplass.mtp.mdc.command.
view.entityview.search.select.SearchSelectListParameterorg.iplass.mtp.mdc.command.
view.entityview.search.select.SearchBatchSelectionListParameterにクラス名変更org.iplass.mtp.mdc.command.
view.entityview.search.DetailConditionItem削除
org.iplass.mtp.mdc.command.
view.navigation.fulltext.FullTextSearchContext削除
org.iplass.mtp.mdc.command.
view.navigation.fulltext.FullTextSearchOptionGenerator削除
org.iplass.mtp.mdc.command.
view.navigation.fulltext.FullTextSearchParameterorg.iplass.mtp.mdc.command.
view.navigation.fulltext.NavigationFullTextSearchParameterにクラス名変更org.iplass.mtp.mdc.command.
view.navigation.fulltext.FullTextSearchResponseorg.iplass.mtp.mdc.command.
view.navigation.fulltext.NavigationFullTextSearchResponseにクラス名変更org.iplass.mtp.mdc.command.
view.navigation.fulltext.FullTextSearchResponseGenerator削除
org.iplass.mtp.mdc.tenant クラス名 4.0での変更点 org.iplass.mtp.mdc.tenant.Theme
削除
org.iplass.mtp.mdc.view クラス名 4.0での変更点 org.iplass.mtp.mdc.view.
entityview.detail.copy.CopyEntityController削除
org.iplass.mtp.mdc.view.
entityview.detail.definition.GenerateDetailViewOption削除
org.iplass.mtp.mdc.view.
entityview.detail.definition.MdcDetailViewHandlerGenerator削除
org.iplass.mtp.mdc.view.
entityview.detail.load.LoadEntityController削除
org.iplass.mtp.mdc.view.
entityview.detail.save.SaveEntityController削除
org.iplass.mtp.mdc.view.
entityview.search.definition.element.property.MdcTableTextAlign削除
org.iplass.mtp.mdc.view.
entityview.search.definition.MdcSearchViewHandlerGenerator削除
org.iplass.mtp.mdc.view.
entityview.search.delete.DeleteListController削除
org.iplass.mtp.mdc.view.
entityview.search.delete.DeleteListResult削除
org.iplass.mtp.mdc.view.
entityview.search.search.SearchController削除
org.iplass.mtp.mdc.view.
entityview.search.search.SearchResultorg.iplass.mtp.mdc.view.
entityview.search.search.SearchEntityResultにクラス名変更org.iplass.mtp.mdc.view.
entityview.search.select.SearchSelectListController削除
org.iplass.mtp.mdc.view.
entityview.search.select.SearchSelectListOption削除
org.iplass.mtp.mdc.view.
entityview.search.select.SearchSelectListResultorg.iplass.mtp.mdc.view.
entityview.search.select.SearchEntityForBatchSelectionResultにクラス名変更org.iplass.mtp.mdc.view.
entityview.search.validation.ConditionValidateProcessor削除
org.iplass.mtp.mdc.view.
entityview.search.validation.ConditionValidatorProcessorFactory削除
org.iplass.mtp.mdc.view.
entityview.search.validation.RequiresAtLeastOneFieldValidateProcessor削除
org.iplass.mtp.mdc.view.
entityview.trash.TrashController削除
org.iplass.mtp.mdc.view.entityview.detail.definition.editor パッケージ名 4.0での変更点 org.iplass.mtp.mdc.view.entityview.detail.definition.editor.*
org.iplass.mtp.mdc.view.entityview.definition.editor.detail.*にパッケージ変更
org.iplass.mtp.mdc.view.entityview.search.definition.editor パッケージ名 4.0での変更点 org.iplass.mtp.mdc.view.entityview.search.definition.editor.*
org.iplass.mtp.mdc.view.entityview.definition.editor.search.*にパッケージ変更
org.iplass.mtp.mdc.view.entityview.search.definition.element.section クラス名 4.0での変更点 org.iplass.mtp.mdc.view.entityview.search.definition.element.section.
MdcConditionSortTypeorg.iplass.mtp.mdc.view.entityview.definition.sort.
MdcConditionSortTypeにクラス名変更org.iplass.mtp.mdc.view.entityview.search.definition.element.section.
MdcNullOrderTypeorg.iplass.mtp.mdc.view.entityview.definition.sort.
MdcNullOrderTypeにクラス名変更org.iplass.mtp.mdc.view.entityview.search.definition.element.section.
MdcSortSettingorg.iplass.mtp.mdc.view.entityview.definition.sort.
MdcSortSettingにクラス名変更 -
SearchView定義での一部プロパティの型変更
変更点 クラス名 4.0での変更点 org.iplass.mtp.mdc.view.
entityview.search.definition.MdcSearchViewDefinition一部プロパティの型をMdcSearchCustomSectionからMdcSearchSectionに変更
org.iplass.mtp.mdc.view.
entityview.search.definition.element.section.MdcSearchConditionSectionelementsプロパティの型をMdcSearchConditionPropertyからMdcSearchConditionElementに変更
org.iplass.mtp.mdc.view.
entityview.search.definition.element.section.MdcSearchResultSectionelementsプロパティの型をMdcSearchResultPropertyからMdcSearchResultElementに変更
-
MdcConfigServiceの変更
変更点 タイプ 名前 4.0での変更点 property
themes
削除
property
themeColorSchemes
削除
method
getThemes
削除
method
getThemeColorSchemes
削除
method
getThemeColorScheme
削除
-
ViewManagerとViewDefinitionManagerの分離
変更点 クラス名 4.0での変更点 org.iplass.mtp.mdc.view.
entityview.detail.definition.MdcDetailViewDefinitionManagerorg.iplass.mtp.mdc.view.
entityview.detail.MdcDetailViewManagerに一部の機能を分離org.iplass.mtp.mdc.view.
entityview.search.definition.MdcSearchViewDefinitionManagerorg.iplass.mtp.mdc.view.
entityview.search.MdcSearchViewManagerに一部の機能を分離org.iplass.mtp.mdc.view.
navigation.definition.MdcNavigationDefinitionManagerorg.iplass.mtp.mdc.view.
navigation.MdcNavigationManagerに一部の機能を分離org.iplass.mtp.mdc.view.
topview.definition.MdcTopViewDefinitionManagerorg.iplass.mtp.mdc.view.
topview.MdcTopViewManagerに一部の機能を分離
-
6. モジュール別の特筆事項
6.1. MDCモジュール
MDCモジュールは、iPLAss 4.0 で最新のマテリアルデザイン仕様(Material Design 3)に準拠し、画面デザインが大幅に刷新されました。
また、従来はモバイルファーストのデザインでしたが、PC向けのデザインも大幅に強化されました。それに伴い、モジュール名が MDC
という略称はそのままに、 Material Design Components
に変更されました。