問題タブ [wicket-6]
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 - Wicket パネルを動的にロードする
現在の Wicket アプリケーションでは、ユーザーが 1 つのメニュー項目をクリックすると、ページ全体をリロードします。必要なパネルのみをリロードするようにこれを変更したいと思います。
私が現在していること:
BasePage.html
メニュー項目といくつかの静的コンテンツを含む があります。
そして私の(抽象)BasePage.java
:
私のHomePage.html
:
my HomePage.java
(および他のすべてのページ) に Panel を追加します。
ページ全体を再レンダリングせずsetResponsePage()
にパネルを開きたいのではなく。<div class="panelarea">
誰でも私にヒントを与えることができますか?
wicket - ウィケット URL - ウィケットは取得 URL を表示しません
Web アプリケーションで wicket を使用しています。ページパラメーターを使用してAからBに移動するページabcがあると仮定すると、ページBモデルの何かがajaxおよびBからCに変更されます(ページパラメーターを使用せずに)。
問題 : ページ B のモデルを変更し、戻るボタン B<-C を押しながらシナリオが A->B->C に移動しています。これは、ページ B インスタンス (B1) が生成されたときに get parameters を使用したため、新しいページ B インスタンスが生成されたためです。 (B2) 毎回Bページに戻りたい
この問題に対する改札スタイルの解決策はありますか?
私の投稿でここまでたどり着いてくれてありがとう:)。
java - Wicket で信頼できるパレットを作成する方法
改札でパレットを作成し、パレットの左側のウィンドウにデータを入力できます。しかし、パレットのオプションを動的にして、同じことができるようにしたいと考えています。しかし問題は、選択したオプションがパレットに表示されないことです。選択したオプションに応じて、パレットの上にドロップダウンがあり、パレットに入力します。
例 (ドロップダウン(ロール) と値): 1.シナリオ: ドロップダウン --> TL,マネージャー,SE,SSE パレット --> 最初は値はありませんが、ロール TL の作成時にスキルがありますパレットの儀式ウィンドウで選択します。10 個のスキルのうち 4 個のスキルで TL ロールが作成されたとします。 2.シナリオ:ロール TL を編集したいのですが、この場合、ロール TL を選択するたびに、選択されたものが右側にあり、利用可能なものが左側にあるように、パレットが取り込まれます。私は2番目のシナリオで失敗しています。
コードは次のとおりです。
2 番目のシナリオで私を助けてください。つまり、ドロップダウンの変更イベントで、パレットの左右のウィンドウに使用可能な値と選択された値を入力します。
ありがとう、サラン。
java - ページのシリアル化により、stackOverflow 例外が発生する
私のアプリケーションでは、シリアライズ可能なオブジェクトの ArrayLists を使用して、ページの 1 つに特に重いモデルがあります。Wicket がシリアル化しようとすると、stackOverflow 例外が発生します。このページはウィザードの一部であるため、保存する必要があるステートフルな情報があります。
ここで説明されているように、ダミーのページシリアライザークラスを使用して、最初にWicketのページシリアライゼーションを無効にしようとしました
しかし、ページの多くはステートフルであり、モデルをシリアライズする必要があるため、これはアプリケーション全体の問題を引き起こしました。
データベースからモデル データを再作成することは非常にコストのかかる操作であり、ページの再作成が必要になるたびに顕著な遅延が発生するため、問題のあるページにロード可能/デタッチ可能なモデルを使用することは実用的ではありません。
問題は、スタック オーバーフローの問題を解決し、Wicket シリアライゼーションを使用せずに Web ページのステートフルな操作を維持するための最良のアプローチは何かということです。
単純な解決策は、JVM のスタック サイズを増やすことですが、これでは十分に拡張できるとは思えません。そして、十分な大きさはどれくらいですか?
これがスタックトレースです(切り捨てられています)
java - エンコードされている AttributeModifier モデル
AttributeModifier を使用して esi:include 用に作成している URL に問題があります。URL がページにレンダリングされると、エンコードされます。
HTML:
<esi:include wicket:id="esiSrc" ttl="12h" onerror="continue" />
レンダリングされた出力は次のとおりです。
<esi:include ttl="12h" onerror="continue" src="http://domain.tld/blah/that/?param1=abc&param2=123" />
助言がありますか?
jquery - Wicket - JavaScript が Panel に読み込まれていない
Wicket-Jquery-Kendo-uiを使用したリッチ テキスト エディターに使用されるパネルがあります。ページの読み込み時にパネルをページに直接追加すると、すべて正常に動作します。ただし、パネルを動的に追加すると、パネルは必要な JavaScript の読み込みに失敗します。
拡張した抽象パネルを使用し、replaceWith() メソッドを使用してパネルをターゲットに戻すことで、追加を処理しています。この方法論は、私が使用している他のすべてのパネルで機能しますが、RTE 用の Javascript が新たに追加されたことで問題が発生しました。ページを更新するか、ページ全体をターゲットに追加すると、レンダリングされますが、理由で AJAX を使用しているため、これは明らかに理想的ではありません。
JavaScript を適切に追加する方法についてのご意見をいただければ幸いです。
tinymce - WicketStuff の TinyMCE からユーザーの入力を取得する方法
かなり簡単な質問ですが、これはどこにも見つかりません。WicketStuff の TinyMCE を使用してアプリケーションでリッチ テキスト エディターを作成していますが、テキスト領域から入力を取得する方法がどこにも見つかりません。簡潔にするために、以下は私が使用しているコードの簡略化されたバージョンです。
これを使用すると、モデルとして設定されているため、通常の方法で文字列の「入力」を単純に使用することが期待されます。モデルが更新されていないため、これは常に null になります。
保存ボタンがクリックされることを期待していた場合に備えて(モデルも更新されません)、自動保存プラグインを使用してみましたが、どちらも機能しませんでした。ユーザーの入力を取得するために私ができる唯一のことは、新しいモデルで HiddenField を追加し、次のような JavaScript 呼び出しを行うことです。
しかし、これにより、目的の場所で JS を呼び出して適切に動作させるという別の問題が発生しました。使用されているテキスト領域のコンテンツを取得する方法を誰かが実装したに違いないので、とにかくこれは必要ではないと思います。
どんな助けでも大歓迎です。
google-app-engine - Wicket - App Engine に記録されないレンダリング エラー
私はWicketを初めて使用しますが、この答えを見つけるのに苦労しています. コンポーネントが NullPointerException をスローするなどのレンダリング エラーが発生した場合、レンダリングはクラッシュしますが、App Engine ログにエラーは記録されません。リクエストに 500 ステータスを登録しますが、ログにスタック トレースがありません。単純な構成が欠けていると確信していますが、それがどうなるかわかりません。Google App Engine で Wicket を使用してエラー ログを適切に設定する方法についてのアイデアはありますか?
wicket - Wicketで画像付きのモーダルウィンドウを表示する方法
画像 (org.apache.wicket.markup.html.image.Image) を含む Wicket でモーダル ウィンドウを作成しようとしています。Wicket ユーザー ガイド ( https://wicket.apache.org/guide/guide/ajax.html ) に記載されているとおり:
モーダル ウィンドウのコンテンツは、別のコンポーネントまたはページのいずれかです。
画像は次の条件を満たす:
Label (org.apache.wicket.markup.html.basic.Label) で試してみたところ、うまくいきました。Image でそれを行ったとき、例外が発生しました。これが私のJavaおよびHTMLコードです(logo.pngは.javaおよび.htmlと同じパッケージにあります):
ジャワ
HTML
予期しないランタイム例外
生成された HTML コードは次のとおりです。
例外の説明は自明です: <img> タグがありませんが、それを解決してモーダル ウィンドウに画像を表示する方法が見つかりませんでした。wicket.version 6.17.0 を使用しています。前もって感謝します。