問題タブ [hdiv]

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 に答える
635 参照

java - パラメーターを使用した POST の HDIV INVALID_CONFIDENTIAL_VALUE

JSP に次のコードがあります。

これはうまくいかないようです。ボタンをクリックするUpdateと、コンソールにエラーが記録されますINVALID_CONFIDENTIAL_VALUE

ただし、POST メソッドもあるがパラメーターを持たないフォームは機能しているようです。

私のフォームで何が間違っている可能性がありますか?

次の HDIV 構成があります。

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

spring - HDIV + Spring タグ ライブラリ (フォーム) = エラー、バグの可能性?

タグ Spring 要素 "< form:form >" を使用して HDIV を使用すると問題が発生します。

まず、アプリケーションのアーキテクチャについて説明します。Spring フレームワーク 4.1.6、Spring Security 4.0.0、および HDIV 2.1.10 を使用しています。

これまでのところ、開発中にエラーは発生していませんが、Spring のフォーム タグを使用しているときに、jsp ファイルにエラーが見つかりました。

34 行目でこのエラーを取得しました: "< form:form "

java.lang.NullPointerException at org.hdiv.web.servlet.support.HdivRequestDataValueProcessor.processAction(HdivRequestDataValueProcessor.java:122) at org.springframework.web.servlet.tags.form.FormTag.processAction(FormTag.java:479) org.springframework.web.servlet.tags.form.FormTag.resolveAction(FormTag.java:433) at org.springframework.web.servlet.tags.form.FormTag.writeTagContent(FormTag.java:349) at org.springframework. org.springframework.web.servlet.tags.RequestContextAwareTag.doStartTag(RequestContextAwareTag.java:80) の web.servlet.tags.form.AbstractFormTag.doStartTagInternal(AbstractFormTag.java:84) org.apache.jsp.WEB_002dINF.jsp. newUser_jsp._jspx_meth_form_005fform_005f0(newUser_jsp.java:197) org.apache.jsp.WEB_002dINF.jsp.newUser_jsp._jspService(newUser_jsp.java:137) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) で javax.servlet.http.HttpServlet.service(HttpServlet.java:729)

and more at.....(必要であれば提供できます)

同じコードを試してみると、タグ「< form:form >」をタグ「< form >」に交換すると機能します。

HDIV のコードを詳しく調べたところ、次のようになりました。

HdivRequestDataValueProcessor.class

'form:form' は 'form' とは異なる構造を持っているためか、HDIV は 'action' や 'method' などのいくつかのパラメーターを見つけられないのではないかと思いました...しかし、よくわかりません。

また、より有用な情報を提供するために構成ファイルを添付しました (Java ベースの構成):

WebApplicationInit.class

HdivSecurityConfig.class

SecurityConfig.class

}

SecurityWebApplicationInit.class

前もって感謝します!!

よろしくお願いします、

アルベルト

- - 編集 - -

与えられた例に従って、これは私のコードです:

WebApplicationInit.class

HDIVSecurityConfig.class

web.xml

newUser.jsp

MvcConfig.class

}

HDIV を Web アプリケーションに追加する方法を変更し、java ベースの構成を使用する代わりに、xml ファイルに追加しました。さらに、サンプルを使用してQualifierタグ(MvcConfig.class)を追加しましたが、使用すると機能しません...(Beanが見つからない...)。nullエラーは消えていません...

0 投票する
0 に答える
462 参照

java - フォーム選択内の forEach の HDIV エラー

form:selectHDIV での実装に問題があります。セレクターとオプションをレンダリングする JSP のコードは次のとおりです。

割り当てをクリックしてアクションを開始するとController、選択した の正しい ID を持つリクエストが に届きform:optionます。

しかし、コンソールを調べたところ、次のエラーがありました。 INVALID_CONFIDENTIAL_VALUE;/pmsys/project/assign/staff;staffID;27;[27, 28, 29, 30, 31, 32, 41];127.0.0.1;127.0.0.1;root

エラーを吐き出すコード行をトレースしようとしたとき: org.hdiv.filter.ValidatorHelperRequest:948

この条件が評価されたとき 、originalValueと パラメータに矛盾がありました:valueif (!m.matches() || (Integer.valueOf(value).intValue() >= stateValues.size())) {

originalValue= [27, 28, 29, 30, 31, 32, 41]

valueform:option= 27 (これは、JSP で選択したの ID 番号です)

誰にもこの問題の解決策はありますか? これは HDIV のバグでしょうか?

注:<c:forEach inside がない場合、この問題は発生しません<form:select

更新: これは私のhdiv 構成です:

WEB.xml _

バージョン

<hdiv-version>2.1.9</hdiv-version>

<org.springframework>4.1.6.RELEASE</org.springframework>

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

jquery - HDIV + Jquery データ テーブル + JSON

HDIV を既存のアプリケーションに統合しようとしています。しかし、次のユースケースでCSRFトークンに関する問題に直面しています。

使用事例:

データを表形式でレンダリングするために、JQuery データ テーブルを使用します。ハイパーリンクを持つデータ テーブル列があります。JQUERY データ テーブルのレンダリングに使用される JSON データに基づいて生成される各ハイパーリンクに、CSRF トークンを追加する必要があります。

理想的には、HDIV ドキュメントに従って、サーバーで CSRF トークンを生成するために、すべての URL をc:urlまたはspring:urlタグに埋め込む必要があります。しかし、Jquery Data テーブルは JSON inorder を使用して、データ テーブルのデータとハイパーリンクをレンダリングします。

spring:url (サーバーで実行) をデータ テーブル生成 (ブラウザーで実行) に使用される動的 JSON で使用できないため、JSON データを使用して生成されたハイパーリンクに CSRF トークンを追加する必要があることを HDIV に知らせるにはどうすればよいですか?

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

ajax - HDIV - Ajax リクエストで URL パラメータ値を変更するには?

HDIV を既存のアプリケーションに統合しようとしています。しかし、私は以下の問題を解決することに行き詰まっています。

ユースケース: 1. 膨大な数のフィールドを持つ大きなフォームがあります。ドロップダウンの値を変更するときは、選択した値を URL パラメーターとして渡して Ajax 呼び出しを行います。元:

  1. $.get("http:://ajaxurl?dynamicParam=1", function(data) {/新しい HTML コンテンツを既存のページにレンダリング/});

  2. $.get("http:://ajaxurl?dynamicParam=2", function(data) {/Render new HTML Content to existing page**/}); 等

問題: ドロップダウンで値を選択すると、別の値が ajax パラメータに渡され、HDIV が INVALID_PARAMETER_VALUE エラーをスローします。

私が見ることができる唯一の解決策は、フォーム全体を _MODIFIED_HDIV_STATE 値で送信する必要があるということです。

しかし、Ajax 呼び出しの一部として値を 1 つだけ渡すために、フォーム全体 (非常に多くのデータがある) を送信することはできません。また、多くの場所でアプリケーション全体で同じユース ケースがあるため、HDIV 検証をバイパスするためにパラメーターを除外することはできません。

FORM submit でできるように、変更された HDIV 状態を AJAX 呼び出しの一部として渡す方法はありますか? または、これを解決する方法を教えてください。

この問題を解決するために私を助けてください。(HDIV をほとんどのアプリケーションに統合した後、途中で立ち往生しています)

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

spring - HDIV の使用例: HDIV で保護されたサイトに投稿するサード パーティ サイトとの統合

以下のような特定のユースケースで、Spring MVC アプリケーションに対して HDIV 保護が機能するかどうかを知りたいと思いました。

ユース ケース 1 - HDIV で保護されたサイトへのサード パーティの Web サイトの投稿 (ログイン認証なし)。フローは次のとおりです - サード パーティのサイト -> フォーム ポスト -> HDIV 保護ページ -> パラメーターの検証 -> ビジネス プロセス用の別の HDIV 保護ページへの転送- この場合、開始 URL を構成するにはどうすればよいですか?

ユース ケース 2 - サード パーティの Web サイトが iframe を介して HDIV で保護された Web サイトのページにアクセスしたい