問題タブ [jaxp]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - XML パーサー Jar の混乱
どのjarに次のクラスが含まれているかを知る必要があります
com.ibm.xml.jaxp.datatype.XMLGregorianCalendar
親切に私を助けて
java - JAXP - XSD カタログ検索のデバッグ
メモリ内のバイト ストリームとして保持されている XML ドキュメントを、ファイル システム内に配置されている XSD に対して検証したい状況があります。XML ファイルでファイル名を明示的に指定することは避けたいと思いますが、その代わりに、検証のために 1 つ以上の XSD ファイルのカタログを使用するよう XML パーサーに指示します。
DocumentBuilder プロバイダー (Guice 3.0 用) を作成しようとすると、次のようになります。
(そして、ファイル名も試しました)。Eclipse は XSD を受け入れます。カタログに入れると、ここで扱う XML を検証できます。
肉眼では、検証しようとするとパーサーが一時的に停止するように見えます。これは、ネットワーク ルックアップである可能性があります。
-Djaxp.debug=1
これらの行のみを追加します
JDK 6 のパーサーに何をしているのかを教えてもらうにはどうすればよいですか? それができない場合、提供された XSD が選択されていない理由を確認するために、内部の XML カタログの使用状況を調べるにはどうすればよいですか?
私が見落とした明らかなことは何ですか?
java - パディングを使用したXSLの左右の位置合わせ
XSLT 1.0で、フィールドを最大長まで正当化およびパディングする標準テンプレートはありますか?
ありがとう、Prabhjot
java - 特定の位置でxmlからノードを削除する
以下のような XML があります。
ノードで選択した行を削除したいと思います。ユーザーが node を選択したとします<b>14</b>
。
私は式を次のように生成しました:
次の例外を与えています:
java - DOMおよびXPathJavaコードの最適化
私のコードは遅すぎますが、それを改善する方法がわかりません。1kファイルのディスクからDOMへの読み取りには約20ミリ秒かかります。これはディスクによっては問題ない場合がありますが、xpathステートメントで作業するためにさらに20ミリ秒かかります。これは長すぎます。これは、時間コメント付きのサンプルコードです。どうすればコードを改善できますか?
これは建設時に起こります:
次に、コード:
xml - JAXBを高速化する
私は8メグのファイルを持っています。JAXBを使用したマーシャリングには1082ミリ秒、DOMを使用した場合は862ミリ秒、SAXを使用した場合は438ミリ秒かかります。これは、JDK 1.6ですべてのデフォルトを使用しており、woodstoxの使用などの追加の構成は使用されません。
JAXBのパフォーマンスを向上させるために、次のようにしてSAX解析を使用するようにしています...
これにより、さらに遅くなります-3207ms。
私の質問は次のとおりです。1。JAXBを高速化するにはどうすればよいですか。2.使用している基本的な解析メカニズムを100%確認するにはどうすればよいですか?
xml - HttpServletRequest JAXP DOM:POSTデータの読み取り
サーブレットにHttpServletRequestオブジェクトがあり、そこに投稿されたXMLドキュメントを取得します。JAXPを使用したいと思います(私の特定のユースケースではディスク容量を使いすぎるため、JAXBではありません)。ドキュメントを解析して、処理されるメモリ内のDOMオブジェクトにする必要があります。リクエストオブジェクトからPOSTXMLを解析する方法について何か考えはありますか?
ありがとう、
ジョン・ゴッシュ
xml - string-joinの結果タイプをNodeListに変換する
XPath式を評価するレガシーコードを処理する必要があります。これは、結果がNodeListに解決されることを期待しています。このコードはNodeListを使用して、XPath式によって選択されたノードの数を識別します。コードは、1つのノードが選択されている場合にのみ続行されます。
次に、戻り型がStringであるstring-join関数を使用する必要があります。別のXPath関数を使用してStringをNodeListに変換する方法はありますか?理想的には、文字列を、テキストコンテンツが文字列値となる1つの要素を持つNodeListに変換します。exsl:node-set()を試してみましたが、成功しませんでした(Saxon-HEプロセッサ)。
java - Grails 1.3.7 スクリプト War の実行エラー: javax.xml.parsers.SAXParserFactory のプロバイダーが見つかりません
私の問題は、私が発行するすべての grails コマンドgrails help
が、javax.xml.parsers.FactoryConfigurationError
. JVM システム プロパティを使用したいと思いDjaxp.debug=1
ます。ただし、ディレクティブを次のように追加しても、追加のデバッグ情報は生成されません。SAXParserFactoryImpl
grails -Djaxp.debug=1 help
grails コマンド ラインから jaxp デバッグ ステートメントを取得するために必要な追加の手順はありますか? このエラーが発生する理由を見つける別の方法はありますか?
これは、私が得ているエラーの完全なスタック トレースです。
ありがとうございました。
xsd - Castor によって生成されたクラス (XML マーシャリング) - XSD を使用できません
私は最近、いくつかのデータを XML として保存するという特定の要件があることに気付いたプロジェクトに移動しました。
以前のチームは、Castor によって生成されたクラスを使用して、データをマーシャリングおよびアンマーシャリングしました。
この XML に追加の (まだオプションの) フィールドを追加する必要がある新しい要件があります。しかし、以前のチームは XSD をまったくチェックインしていなかったと思われ、彼らに連絡する方法がないことに気付きました。
XSD は確かに大規模で複雑で、約 50 のクラスを生成する必要があります。そのため、XSD を再度作成するとエラーが発生しやすくなり、古い XML と互換性のある XML を作成することになるリスクもあります。
私が考えたもう 1 つの方法は、XML Spy のようなツールを使用して、XML から XSD をリバース エンジニアリングしようとすることでしたが、XSD を生成するために 20 個の奇妙な XML をリバース エンジニアリングし、これらすべての XSD をマージする必要があるため、これも少し難しいように思えます。 XML にはいくつかのオプションのセクションがあったため、1 つにまとめられました。このアプローチでは、まだエラーの可能性があります。
私が考えることができる最良のオプションは、クラスを XSD にリバース エンジニアリングすることですが、Castor はおそらくこの機能をサポートしていません。したがって、これらの Castor 生成クラスを XSD に変換する手段がありません! Castor によって生成されたクラスにはいくつかの Castor 固有のメソッドがありますが、Castor 固有のメソッドが無視される場合、本質的にそれらは Pojo です。
Java クラスから XSD を取得または生成するための提案はありますか? 私が議論した問題を解決するための他の提案はありますか?
ありがとうございました。