問題タブ [jxpath]
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.
xml - 異なる名前空間でノードを選択するための XPath
XML から値を抽出するための適切な XPath 式を考え出すのに助けが必要です。
jaxb を使用して値を取得できますが、xpath が必要です。なぜなら、外部化したいデシジョン テーブルの種類のマッピング ルールがあるためです。 xpath アプローチが必要です。
少なくとも 4 つのスキーマから構築された xml ファイルがあります。つまり、ルートスキーマには特定のポイントに xs:any という要素があり、この場所に別のスキーマに基づく xml が注入され、これには同様の xs:any があり、別の xml が注入されて final/ を構築することを意味します。私が扱っている実際のxml。
これは、私が扱っている実際の XML 構造です (意図的に値を変更しました)。以下の xml の 2 つの Document ノードは、異なるスキーマに基づいています。
/env:Envelope/env:Body/cdtBusinessData のような最初のいくつかの要素を抽出するのに問題はありません
cdtBusinessData は、 xs:any を取るメイン スキーマの要素 です。スキーマ スニペットは次のとおりです。
この時点から、xpath クエリが期待どおりに機能しません。
つまり、 /env:Envelope/env:Body/cdtBusinessData/Document を試してみると、それが jxpath の適切なパスであると識別されません。選択したノードの xpath (xpather/firepath/XpathBuilder など) を提供するさまざまなツールで、さまざまな値が取得されますが、どれも xpath によって受け入れられません。
上記の xml に埋め込まれた 2 つのノードから値を抽出する方法を理解するのを手伝ってください。
私はかなり長い間これに苦労してきましたが、ついにここで助けを求めました. このパスを修正するのを手伝っていただければ幸いです //env:Envelope/env:Body/cdtBusinessData/ Document
アップデート
これは私があなたの提案に基づいて思いついたものです。私はjxpath 1.3を使用しています。ここで何が間違っていますか?sysouts の横にインラインでコメントがあり、取得した内容を示しています
java - JXPath 式で文字列の部分文字列を使用する方法
フライト番号とゲート番号を含む Java オブジェクトのリストがあります。
この質問の目的のために、私のリストには、次のフライト番号とゲート番号を持つオブジェクトが含まれています。
ゲート 10 ですべてのオブジェクトを選択したい場合は、次の JXPath 式を使用できます (これは機能します)。
私がする必要があるのは、「AA」で始まるフライト番号を持つすべてのオブジェクトをゲート 10 で選択することです。
次のことを試しましたが、どれも機能しません。
私の JXPath 式はどうあるべきですか? カスタム拡張機能を書かなくても可能ですか?
java - Java で複雑なオブジェクト グラフをウォークスルーし、属性へのインデックスを取得します (xpath に似ています)。
問題文:
以下のようなネストされたオブジェクトを想像してください。
会社には多くの部門があり、各部門には多くの従業員がいます。
Json 本体はライブラリによって非整列化され、上記のように Java オブジェクト Company が作成されます。
名前が「John」の従業員がいるとします。API を探しています。この API は、Employee オブジェクトのハッシュを渡すか、属性名がその属性へのパスを返します。
search(Object attributeName, Object attributeValue) つまり、search("name", "John") は company.departments[0].employees[5] を返す必要があります
同様の API を公開している優れたオープン ソース ライブラリはありますか、または複雑なオブジェクト グラフをウォークスルーするための最良の方法は何ですか?
ConstraintViolation にプロパティ パスを自動的に追加する JSR 303 Hibernate Validator は、任意のオブジェクトを介して複雑なオブジェクト グラフからプロパティ パスを取得する方法に関する動作を公開しません。
誰かが同様のニーズを経験した場合の親切なアドバイス
java - jxpathを使用してJAXB ajavオブジェクトからブール値を取得するには?
spring 4.1.1 と JXpath 1.3 を使用しています。ブール値を除く JXPath クエリを使用して、JAXB Java オブジェクトからすべての値を読み取ることができます。
JXpath を使用してブール値を読み取るには、特定の指示に従う必要がありますか?
java - JxPath と DOM パーサーを使用して XML ファイルを解析する方法
Java DOM パーサーと Apache JxPath を使用して XML ファイルを解析する方法の簡単な例が必要です。私は DOM パーサー技術を認識していますが、今はソースに JxPath を統合しようとしています。
ネットワークで検索しましたが、実際の例が見つかりません。
テストのために、私はこのxmlを持っています:
Java コード:
クラスContainer 、 DocumentContainer 、および JXPathContextについて読んだことがありますが、特定の作業例を含むいくつかのヘルプまたは Web ソースに感謝します。