アーティクル - CS277708
ThingWorx 8.1 で「java.lang.RuntimeException: Could not serialize PMML to a string」で異常検出が失敗する
修正日: 22-Dec-2022
適用対象
- ThingWorx Analytics 8.1
- java 9
説明
- 異常検出は、Calibrating から Training、そして Failed ステータスに移行します。
- マイクロサービスのトレーニングで次のエラーが表示されます
エラー [2018-01-12 08:32:56,247] com.thingworx.analytics.ccc.job.local.AsynchronousMemoryJobExecutor: TrainingJob への呼び出し [20180112] が原因で失敗しました:
! java.lang.ClassNotFoundException: com.sun.xml.internal.bind.v2.ContextFactory
! java.base/jdk.internal.loader.BuiltinClassLoader.loadClass (不明なソース) で
! java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(UnknownSource) で
! java.base/java.lang.ClassLoader.loadClass (不明なソース) で
! javax.xml.bind.ContextFinder.safeLoadClass(ContextFinder.java:532) で
! javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:205) で
! ... 23 個の共通フレームを省略
!原因: javax.xml.bind.JAXBException: null
! javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:207) で
! javax.xml.bind.ContextFinder.find(ContextFinder.java:414) で
! javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:618)
! javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:565)
! org.jpmml.model.JAXBUtil.getContext(JAXBUtil.java:125)で
! org.jpmml.model.JAXBUtil.createMarshaller(JAXBUtil.java:153)で
! org.jpmml.model.JAXBUtil.marshal(JAXBUtil.java:99)で
! org.jpmml.model.JAXBUtil.marshalPMML(JAXBUtil.java:89)で
! com.thingworx.analytics.training.results.model.PmmlModel.pmmlAsString (PmmlModel.java:93) で
! ... 15 個の共通フレームを省略
!原因: java.lang.RuntimeException: PMML を文字列にシリアライズできませんでした
! com.thingworx.analytics.training.results.model.PmmlModel.pmmlAsString (PmmlModel.java:96) で
! com.thingworx.analytics.training.results.model.impl.ModelServiceModelSource.store (ModelServiceModelSource.java:115) で
! com.thingworx.analytics.training.results.model.impl.ModelServiceModelSource.store (ModelServiceModelSource.java:46) で
! com.thingworx.analytics.training.core.TrainingRunner.storeModel (TrainingRunner.java:166) で
! com.thingworx.analytics.training.core.TrainingRunner.run(TrainingRunner.java:127) で
! java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (ネイティブ メソッド) で
! java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke (不明なソース) で
! java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (不明なソース) で
! java.base/java.lang.reflect.Method.invoke (不明なソース) で
! com.thingworx.analytics.training.core.TrainingJob.run(TrainingJob.java:72) で
! com.thingworx.analytics.ccc.job.local.AsynchronousMemoryJobExecutor$1.call(AsynchronousMemoryJobExecutor.java:88) で
! com.thingworx.analytics.ccc.job.local.AsynchronousMemoryJobExecutor$1.call(AsynchronousMemoryJobExecutor.java:77) で
! java.base/java.util.concurrent.FutureTask.run (不明なソース) で
! java.base/java.util.concurrent.ThreadPoolExecutor.runWorker (不明なソース) で
! java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run (不明なソース) で
! java.base/java.lang.Thread.run (不明なソース)
! java.lang.ClassNotFoundException: com.sun.xml.internal.bind.v2.ContextFactory
! java.base/jdk.internal.loader.BuiltinClassLoader.loadClass (不明なソース) で
! java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(UnknownSource) で
! java.base/java.lang.ClassLoader.loadClass (不明なソース) で
! javax.xml.bind.ContextFinder.safeLoadClass(ContextFinder.java:532) で
! javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:205) で
! ... 23 個の共通フレームを省略
!原因: javax.xml.bind.JAXBException: null
! javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:207) で
! javax.xml.bind.ContextFinder.find(ContextFinder.java:414) で
! javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:618)
! javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:565)
! org.jpmml.model.JAXBUtil.getContext(JAXBUtil.java:125)で
! org.jpmml.model.JAXBUtil.createMarshaller(JAXBUtil.java:153)で
! org.jpmml.model.JAXBUtil.marshal(JAXBUtil.java:99)で
! org.jpmml.model.JAXBUtil.marshalPMML(JAXBUtil.java:89)で
! com.thingworx.analytics.training.results.model.PmmlModel.pmmlAsString (PmmlModel.java:93) で
! ... 15 個の共通フレームを省略
!原因: java.lang.RuntimeException: PMML を文字列にシリアライズできませんでした
! com.thingworx.analytics.training.results.model.PmmlModel.pmmlAsString (PmmlModel.java:96) で
! com.thingworx.analytics.training.results.model.impl.ModelServiceModelSource.store (ModelServiceModelSource.java:115) で
! com.thingworx.analytics.training.results.model.impl.ModelServiceModelSource.store (ModelServiceModelSource.java:46) で
! com.thingworx.analytics.training.core.TrainingRunner.storeModel (TrainingRunner.java:166) で
! com.thingworx.analytics.training.core.TrainingRunner.run(TrainingRunner.java:127) で
! java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (ネイティブ メソッド) で
! java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke (不明なソース) で
! java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (不明なソース) で
! java.base/java.lang.reflect.Method.invoke (不明なソース) で
! com.thingworx.analytics.training.core.TrainingJob.run(TrainingJob.java:72) で
! com.thingworx.analytics.ccc.job.local.AsynchronousMemoryJobExecutor$1.call(AsynchronousMemoryJobExecutor.java:88) で
! com.thingworx.analytics.ccc.job.local.AsynchronousMemoryJobExecutor$1.call(AsynchronousMemoryJobExecutor.java:77) で
! java.base/java.util.concurrent.FutureTask.run (不明なソース) で
! java.base/java.util.concurrent.ThreadPoolExecutor.runWorker (不明なソース) で
! java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run (不明なソース) で
! java.base/java.lang.Thread.run (不明なソース)
最新バージョンはこちらを参照ください CS277708