ThingWorx 拡張機能をアップグレードする際の考慮事項
拡張機能をアップグレードする際には、以下の最良事例を使用します。
ThingWorx 8.4 以降のリリースへのアップグレード
JSON ライブラリは ThingWorx 8.4 以降のリリースには付属していません。拡張機能プロジェクトが JSON ライブラリを必要とする場合、以下のように build.gradle ファイルを更新します。
• dependencies ブロックに以下のコードを追加します。
compile group: 'org.json', name: 'json', version: '20090211'
• gradle ファイルの任意の場所に以下のコードを追加します。
repositories {
jcenter()
}
Java ベースの拡張機能のアップグレード
Java ベースの拡張機能をアップグレードする際には、以下の最良事例を使用します。
• 新規バージョンをインポートすることで Java ベースの拡張機能をアップグレードする場合、プラットフォームを再起動します。プラットフォームが再起動すると、拡張機能の ZIP ファイルがキューに入ります。
/ThingworxStorage/extensions/upgradequeue
• Tomcat サーバーを再起動すると、ThingWorx はキューに入れられた拡張機能の ZIP ファイルのインポートを試みます。
• プラットフォームを再起動した後でアプリケーションログをチェックして、キューに入っているすべての拡張機能が正常にインポートされたことを確認します。
• 複雑な Java ベースの拡張機能のインプレースアップグレードが可能です。ただし、Tomcat クラスローダーは以下のシナリオでは Java ベースの拡張機能のインプレースアップグレードを許可しません。
◦ 新規 Java ベースエンティティを JAR に追加する場合
◦ JAR 内の Java ベースエンティティを削除または名前変更する場合
そのような場合、以下の次善策を検討してください。
◦ そのサービスが JavaScript でのみ実装される場合、新規エンティティを作成できます。
◦ 新規機能のための新規拡張機能を作成し、別個の JAR ファイルをさらに作成することをお勧めします。
更新された拡張機能は以前のバージョンの機能を維持
以前のバージョンからロードされたクラスによって、拡張機能は以前のバージョンの機能を維持します。更新された拡張機能をロードするには、Tomcat を再起動します。