0

Xerces-C 2.5 と Xalan-C 1.8 を使用して XML ドキュメントを変換しています。XSL には、ネットワーク上のファイルを参照する「ドキュメント」関数が含まれています。残念ながら、HTTP でこのファイルにアクセスすることはできません。私はUNCパスしか持っていません。

「ファイル」プロトコルはローカル ファイルに対してのみ受け入れられるため、 WinSockNetAccessor::makeNewが Xerces で呼び出されるため、Xerces は参照ドキュメントの解析を拒否します。WinSockNetAccessor::makeNewは HTTP のみに実装され、例外がスローされ、ファイルは無視されます。

自分のパーサーを作成したり、Xerces を操作したりせずに、UNC パスをローカル ファイルまたはその他の既知の回避策として受け入れるために、Xerces をだます方法はありますか?

4

2 に答える 2

1

簡単な回避策は、マッピングを作成することだと思います。そのため、ネットワーク ドライブを O: などと呼ぶことができます。これは、UNC パスを直接操作できないプログラム (cmd.exe 自体など) を騙すことがよくあります。

于 2009-04-07T14:01:41.767 に答える
0

XSL に表示される UNC には「file:」プレフィックスが付いていますか?

ところで、Xerces C V2.5 は数年前のものです。現時点で最新バージョンの V3.0.1 を試しましたか?

于 2009-04-08T11:23:11.467 に答える