問題タブ [xerces]

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.

0 投票する
1 に答える
366 参照

c++ - SAX2を使用しているときにXerces-CでDoctype宣言を取得するにはどうすればよいですか?

Xerces-CのSAX2を使用してXMLドキュメントを読み取っています。ただし、Doctype宣言(存在する場合)をチェックして、XMLファイルが期待する形式であることを確認したいと思います。

DTDHandlerのunparsedEntityDeclメソッドとnotationDeclメソッドを試しましたが、EntityResolverは私が探しているものよりも低レベルのようです。

私の動機は、入力が期待する形式であることを確認できるようにすることです。これにより、出力が生成されないドキュメントと完全に間違った形式のドキュメントを区別できます。

0 投票する
1 に答える
1435 参照

eclipse - Eclipse IDE でスキーマ 1.1 を使用して XML ドキュメントを解析するにはどうすればよいですか?

「Eclipse IDE」でスキーマ 1.1 を使用して XML ドキュメントを検証するにはどうすればよいですか、
または
外部の Apache xerces パーサーを使用して「Eclipse IDE」で XML ドキュメントを検証するにはどうすればよいですか? (xerces は Schema 1.1 をサポートしているため、これで問題は解決します)

0 投票する
1 に答える
897 参照

java - Xercesエラーのため、SpringRooはSeleniumテストを生成できません

Roo Google IOを見た後、このチュートリアルを使用して試してみることにしましたが、Seleniumテストを作成しようとすると行き詰まります。

このフォーラムの担当者は、Java 6にはXercesに基づく独自のXMLパーサーがあるため、クラスパスからXercesを削除することを提案しました。ただし、クラスパスから何かを削除する明確な方法はありません。設定するだけです(毎回面倒だと思います)。

クラスパスからjarを削除する明確な方法を知っている人はいますか?誰かが以前にこのRooの問題に遭遇し、別の方法で解決したことがありますか?


アップデート

要求に応じて、より詳細な出力を次に示します。

0 投票する
4 に答える
17221 参照

c++ - Windows で Xerces 3.0.1 および C++ を使用して XML を作成する

Xerces 3.0.1 を使用して XML ファイルを作成するために作成した次の関数があります。「foo.xml」または「../foo.xml」の filePath でこの関数を呼び出すと、うまく機能しますが、渡すと「c:/foo.xml」の場合、この行で例外が発生します

私のコードが絶対パスではなく相対パスで機能する理由を誰かが説明できますか? どうもありがとう。

0 投票する
4 に答える
4801 参照

java - Java6でのxercesシリアル化

Java 6では、xerces XMLパーサー/シリアライザーの実装全体がJavaランタイム(rt.jar)に含まれるようになりました。パッケージはcom.sun。*名前空間の下に移動され、クライアントコード内で明示的に参照できるように立ち入り禁止になっています。これは、javaxAPIで定義されたファクトリを介してインスタンス化されるパーサーを使用する場合は問題になりません。

ただし、このコードではxercesシリアル化(org.apache.xml.serialize。*)も使用しています。AFAICT、SerializerとOutputFormatのインスタンスを作成するためのjavax.xmlAPI定義のファクトリはありません。これは、取得する唯一の方法がcom.sun.org.apache.xml.serialize。*APIを明示的に呼び出すことであることを意味しているようです。

javax.xml.streamでシリアル化クラスを見つけましたが、xercesOutputFormatクラスのような出力フォーマット制御を提供していないようです。

質問:

xerces.jarを含めずに、またcom.sun。*クラスを明示的にインスタンス化せずに、javax標準APIを介してxercesシリアル化機能(rt.jarにある)にアクセスする方法はありますか?

そうでない場合、同じ効果を達成するためのjavax API準拠の方法はありますか?

0 投票する
2 に答える
740 参照

c++ - Xerces 2.6 で漢字をシリアライズする

UTF-8 でエンコードされた Xerces (2.6) DOMNode オブジェクトがあります。私は次のように TEXT 要素を読んでいました。

CBuffer は、DB にあるように最近永続化される単なるバッファ オブジェクトです。

これは、一般的な ASCII 文字だけが TEXT に含まれるまで機能します。私たちが中国のものを持っている場合、彼らは操作で迷子になりtranscodeます。

私は解決策を求めてたくさんグーグルで検索しました。Xerces 3 では、DOMWriter クラスが問題を解決するはずです。Xerces 2.6 で XMLTranscoder を試していますが、まだ成功していません。誰か助けてくれませんか?


編集私は間違っていたようで、DOMWriter クラスは Xerces 2.6 で既に利用可能です。私は今、それに基づいて解決策を試しています。

0 投票する
2 に答える
5727 参照

java - spring-wsの「Streamclosed」エラーを修正するにはどうすればよいですか?

私は、spring-wsライブラリを使用してsoapリクエストに応答する作業コードを持っています。このコードを別のプロジェクトに移動しました(プロジェクトをマージしています)が、失敗します。失敗の理由を突き止めたいと思います。

私が得る症状はこれです:HTTPリクエストが到着すると、springは呼び出しの処理を開始します。次に、次の例外が発生します。

デバッガーで調べると、springはHTTPヘッダーを正常に処理しているように見えますが、SOAPメッセージ自体のコンテンツの処理を開始すると、本文の最初の文字を読み取るときにチョークします。エラーメッセージをグーグルで検索すると、ソケットからの読み取りに使用されていると思われるPushbackInputStreamが2回読み取られるか、close()が呼び出され、後で読み取られることが問題であることがわかります。

これは私のコードではなくspring-wsの内部で発生しており、コードを新しいプロジェクトに移動する前は正常に機能していたため、Springのバージョン、またはaxisやxercesなどの何かに関係している必要があります。しかし、私はこれらのバージョンの違いを見つけることができません!誰かが以前にこのエラーに遭遇したことがありますか?または、これをトラブルシューティングする際に私が取ることができるアプローチの提案がありますか?

0 投票する
1 に答える
604 参照

c++ - Xerces プログラムの 1 行のエラー

次のアプリケーションでは、最初の行でアクセス違反が発生します。これは何ですか?

[編集] 次のコードでは XMLFormatTarget 行で例外が発生しますが、文字列を "C:/test.xml" から "test.xml" に変更すると問題なく動作します。

0 投票する
3 に答える
2357 参照

c++ - 2行のXercesプログラムの例外

次のコードは行に例外を与えますXMLFormatTargetが、文字列をからに変更する"C:/test.xml""test.xml"正常に機能します。

[編集]Xercesの例外は次のとおりです。

エラーメッセージ:ファイル'C:\test.xml'を開くことができません

Windowsの例外は次のとおりです。

アクセスが拒否されました

0 投票する
4 に答える
19963 参照

java - XercesImplは、JavaSE6の内部xerces実装と競合しています。両方が必要です...何ができるでしょうか?

私はこの対立に最初に遭遇したのではないと確信しています。

私が継承したコードは次のことを行います。

ここで、...は一見重要でない/無関係なコードを表します

JDK 6を使用したコードのコンパイルと実行は機能します(そして常に...)

最近、社内の他の場所で作成された別のコンポーネントをコードに統合する必要がありました。そのコンポーネントは、クラスパスに含める必要があります。xercesImpl-2.8.1.jar

このサードパーティのコンポーネントは絶対に必要です、上記のコードを実行すると機能しなくなり、次のようになります。

解決策として、私はおそらくxercesImpl-2.8.1.jarを独自のクラスローダーでシールドすることを考えましたが、おそらくクラスローダーの知識が不足しているため、またはそれが進むべき道ではないために、それを行うことができませんでした。私の環境についてもう1つ、私のアプリはTomcat5.5および6で実行されます...

ちなみに、デバッグ中に実行すると気づきましたdom.getImplementation()

  • xercesImpl-2.8.1.jarクラスパス にを追加する と、結果は次のようになります。org.apache.xerces.dom.DeferredDOMImplementationImpl@5f15c
  • それを削除すると、結果は次のようになりますcom.sun.org.apache.xerces.internal.dom.DeferredDOMImplementationImpl@6c6ae3

[私が思うに注意深い読者には驚くことではありません]

助言がありますか?