2016-05-26 25 views
4

私たちのアプリケーションでは、メッセージプロセッサ(Java 8で動作するスタンドアロンJavaプロセス)をクラッシュさせる非常に散発的な実行時例外が発生します。プロセッサは、この例外の時点で、一般的にWebサービスコールを実行しようとします。 XMLStreamWriterFactoryのインスタンス化に失敗しました:サポートされていないプロパティisRepairingNamespaces

例外

java.lang.Error: Failed to create new instance of com.sun.xml.internal.ws.api.streaming.XMLStreamWriterFactory$1 
    at com.sun.xml.internal.ws.api.streaming.ContextClassloaderLocal.createNewInstance(ContextClassloaderLocal.java:63) 
    .. 
Caused by: java.lang.IllegalArgumentException: Unable to access unsupported property javax.xml.stream.isRepairingNamespaces 
    at weblogic.xml.stax.ConfigurationContextBase.check(ConfigurationContextBase.java:90) 

は、アプリケーション全体がエラーなしで時間の99.9%を実行しているで奇妙なことがされている:上記の例外は、非常にまれにしか(約数日おきに)起こります。クラッシュ後、プロセッサは自動的に再起動され、同じ例外が一見無作為な間隔で再び発生するまで完全に正常に動作します。

これまでのところ、JVMまたはアプリケーションが実行されているホスト上の不正行為とこれを関連付けることはできませんでした。

誰もそのようなunsupported property javax.xml.stream.isRepairingNamespacesの例外が散発的に現れるのはなぜですか?

jdk1.8.0_66Red Hat 4.8.5-4です。 WebサービスインターフェイスはJAX-WSを使用して生成されます。


編集:
私はクラスパス(内部情報の多く、申し訳ありません)を共有することはできません。私たちはそこにWeblogicフルクライアントを持っています:wlfullclient-12.1.3.jar。それはxml-apis-1.4.01.jarとして(また、クラスパス上)(ConfigurationContextBaseにスローされた例外に関連する)の​​javax/XML /ストリーム/ XMLOutputFactory.classが含まれていServiceLoader

META-INF/services/javax.xml.stream.XMLOutputFactory --> weblogic.xml.jaxp.RegistryXMLOutputFactory 

を経由してXMLのファクトリを定義します。

これは問題の一部になる可能性がありますか?

+0

コンテキストクラスローダーがクラスの新しいオブジェクトインスタンスの作成に失敗しました。アプリケーションのクラスパスを共有できますか? JAX-WS RI(jaxws-rt- .jar)の代替バージョンがクラスパスにありますか? –

+0

私はクラスパスを共有できません申し訳ありませんが、私は質問を更新しました。詳細を追加する必要がある場合はお知らせください。 – fgysin

答えて

1

クラスパスの順序を変更する必要があります。まず、axis2 jarsをすべてポイントし、クラスパスにweblogic.jarを指定します。あなたの問題を解決することを願っています。

+0

奇妙な部分は、アプリケーションが99%の時間で動作することです。たびに失敗するわけではありません... – fgysin

+0

推奨フォーマットを実装しましたか? @fgysin – SkyWalker

+0

申し訳ありませんが、「実装された推奨フォーマット」とはどういう意味ですか? – fgysin

関連する問題