jjkingの日記: XML ライブラリの不整合にはまる 3
日記 by
jjking
SOAP-RPC の実験の成功を受けて目下これをベースにしたシステムを開発中である。Java2 1.3 + Tomcat 4.0 という構成で作っていたが、客先では Java2 1.4 + Tomcat 4.1 ということで、最近自分の構成もこれにあわせた。
ところがいきなり、SOAP-RPC クライアント側で次のようなエラーが出るようになってしまった。
- org.apache.xml.utils.WrappedRuntimeException: The output format must have a '{http://xml.apache.org/xslt}content-handler' property!
at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:260)
at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:169)
at org.apache.axis.encoding.DeserializationContextImpl.endElement(DeserializationContextImpl.java:1015)
...
Java2 1.3 のころは Xalan など XML 関連のライブラリは Java のコアライブラリでなかったので、WEB-INF/lib の下に入れて使っていたが、Java2 1.4 からはこれらがコアライブラリとして装備されている。WEB-INF の下に入れた XML ライブラリは Java のアップグレード後もそのままにしてあったが、これとコアライブラリのものが不整合になっているというのが原因だったようだ。ためしに WEB-INF から XML 関連を削除したところ動きました!
jakarta などオープンソース系から Java のコアライブラリになっていくというのが最近の流れであるが、今後 Java のバージョンが上がるたびにまた別のライブラリでこのような問題が起こる可能性は高い。気をつけねば...
1.4にしたのなら (スコア:1)
動作速度が上がることがありますよ~
かなり頻繁に使われるところのチェックは、そのようにやってみると
楽しいかも。
# しかし、XML関係のライブラリが1.4で衝突する現象…ん~
# 普通にそのまま使ってた記憶があるのですが…。
Re:1.4にしたのなら (スコア:1)
Re:1.4にしたのなら (スコア:1)
オプションが必要です。
そこに気をつけてお使いくださいませ。