問題タブ [wicket]

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

wicket - 問題のあるWicketRuntimeException

WicketアプリケーションでRuntimeExceptionの原因を特定するのに問題があります。多数のブレークポイントを設定しましたが、フォームを送信したときに起動するブレークポイントはなく、フォームが読み込まれているときにのみ起動します。スタックは次のとおりです。

WicketMessage:クラスにgetメソッドが定義されていません:クラスthis.is.my.class.WicketDocumentModel式:DocumentUpload

根本的な原因:

org.apache.wicket.WicketRuntimeException:クラスにgetメソッドが定義されていません:クラスthis.is.my.class.WicketDocumentModel式:DocumentUpload at org.apache.wicket.util.lang.PropertyResolver.getGetAndSetter(PropertyResolver.java:445)at org.apache.wicket.util.lang.PropertyResolver.getValue(PropertyResolver.java:90)at org.apache.wicket.modelのorg.apache.wicket.util.lang.PropertyResolver.getObjectAndGetSetter(PropertyResolver.java:287) AbstractPropertyModel.getObject(AbstractPropertyModel.java:117)at org.apache.wicket.Component.getDefaultModelObject(Component.java:1664)at org.apache.wicket.Component $ 3.compare(Component.java:548)atorg.apache。 org.apache.wicket.markup.html.form.FormComponent.updateModel(FormComponent.java:1168)のwicket.Component.setDefaultModelObject(Component.java:3049)(org.apache.wicket.markup.html.form.upload)。FileUploadField.updateModel(FileUploadField.java:100)at org.apache.wicket.markup.html.form.Form $ FormModelUpdateVisitor.component(Form.java:225)atorg.apache.wicket.markup.html.form.FormComponent。 visitComponentsPostOrderHelper(FormComponent.java:514)at org.apache.wicket.markup.html.form.FormComponent.visitComponentsPostOrderHelper(FormComponent.java:493)at org.apache.wicket.markup.html.form.FormComponent.visitComponentsPostOrder(FormComponent。 java:465)org.apache.wicket.markup.html.form.Form.internalUpdateFormComponentModels(Form.java:2051)at org.apache.wicket.markup.html.form.Form.updateFormComponentModels(Form.java:2019) org.apache.wicket.markup.html.form.Form.process(Form.java:984)でorg.apache.wicket.markup.html.form.Form.process(Form.java:911)でorg.apacheでjava.langの.wicket.markup.html.form.Form.onFormSubmitted(Form.java:876)。org.apache.wicket.request.target.component.listener.ListenerInterfaceRequestTarget.processEvents(ListenerInterfaceRequestTarget)のorg.apache.wicket.RequestListenerInterface.invoke(RequestListenerInterface.java:182)のreflect.Method.invoke(Method.java:597)。 java:73)org.apache.wicket.request.AbstractRequestCycleProcessor.processEvents(AbstractRequestCycleProcessor.java:92)at org.apache.wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:1250)at org.apache.wicket.RequestCycle.step (RequestCycle.java:1329)org.apache.wicket.RequestCycle.steps(RequestCycle.java:1428)at org.apache.wicket.RequestCycle.request(RequestCycle.java:545)atorg.apache.wicket.protocol。 http.WicketFilter.doGet(WicketFilter.java:456)at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:289)atorg.apache.catalina.core。ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)at org .apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve .java:102)at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)atorg.apache.jk。 server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190)at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283)atorg.apache.jk.common.ChannelSocket。invoke(ChannelSocket.java:767)at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:697)at org.apache.jk.common.ChannelSocket $ SocketConnection.runIt(ChannelSocket.java:889)at org .apache.tomcat.util.threads.ThreadPool $ ControlRunnable.run(ThreadPool.java:690)at java.lang.Thread.run(Thread.java:619)

私はここで同様の問題についての議論を見つけましたが、そこで提示されたアドバイスを私の状況の解決策に変えることはできませんでした。私のクラスにはDocumentUploadという名前のJava変数が含まれていませんが、次のものが含まれています。

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

java - 実際の機能が期待どおりに機能しているのに、ModalWindowのコンテンツ更新の単体テストが失敗します-何が間違っているのですか?

それで、私は最初にこれを自分で「修正」しようと試み、次に狂人のようにグーグルで検索するのに数時間を費やしましたが、助けになるものは何も見つからなかったので、今ここにいます。

基本的に私はPanelWicket独自の習慣を持っていますが、ModalWindow単体テストが好きなので、それをテストしたいと思います。ここでの特定の動作は、ModalWindowのコンテンツを更新することです。これを抽出した実際のコードでは、Ajaxイベント処理が実際に新しいものをコンテンツパネルにリロードします。これを短くするためにそれらを削除しました。

だから、ここにPanelのコードがあります

および対応するマークアップ

Tomcatなどのサーブレットコンテナで実行すると、これは正しく機能することに注意してください。ここには機能上のバグはありません。

では、何が問題なのでしょうか。これが機能するための単体テストを取得できないようです。パネルのテストクラスは次のようになります

これが、それを実行した結果のスタックトレースです。

では、ユニットテストに合格するように修正するにはどうすればよいですか?

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

richtextbox - Wicket要素内にHTMLテキストを表示するにはどうすればよいですか?

ウィケット要素内のHTML、つまりリッチテキストを動的に表示しようとしています。例は、divタグ内にリッチテキストの電子メールを表示するようなものです。どうすれば改札でこれを行うことができますか。改札ラベルコンポーネントはこれをサポートしていないようです。するコンポーネントはありますか

0 投票する
6 に答える
1742 参照

java - あいまいな場合に使用する必要がある Java ジェネリックはどれですか?

Wicket 1.3 から Wicket 1.4 への移行で問題が発生していますが、この質問は Java ジェネリック全体にも当てはまります。移行により、どこからともなく何百もの警告が発生しました。Wicket に慣れていない人のために説明すると、多くの Wicket クラスは、v1.4 で一般化された共通の祖先から派生しています。また、どのパラメーターを適用すればよいかわかりません。場合によっては、ほとんどがさまざまなフォームとテーブルです。<?><Object>またはでできると思いますが、どちらか<Void>わかりません。

<?>が最も適しているように思えますが、ワイルドカードを使用できない場所がたくさんあります。 <Object>すべての場合に機能しますが、基本的にワイルドカードを使用せずにワイルドカードを書いているため、不安になります。これは、私の脳の一部にとって本質的に間違っていると感じています。Wicket migration guideで使用<Void>が提案されました。

では、この場合どうするのが適切でしょうか?


編集 2: 私の最初の編集 (現在は質問の一番下にあります) は、文字列のコレクションについて質問しているように見えることで、人々を混乱させたと思います。他の例とその警告を次に示します。

フォームは raw タイプです。ジェネリック型 Form への参照はパラメーター化する必要があります

この行に複数のマーカー
- 型の安全性: コンストラクター AjaxFallbackDefaultDataTable(String, List, ISortableDataProvider, int) は生の型 AjaxFallbackDefaultDataTable に属します。ジェネリック型 AjaxFallbackDefaultDataTable への参照はパラメーター化する必要があります
- AjaxFallbackDefaultDataTable は生の型です。ジェネリック型 AjaxFallbackDefaultDataTable への参照はパラメーター化する必要があります
- AjaxFallbackDefaultDataTable は生の型です。ジェネリック型 AjaxFallbackDefaultDataTable への参照はパラメーター化する必要があります


編集:サンプルコードを必要としないほど質問を広くしたいと思っていましたが、ここにいくつかあります。

次の警告が生成されます。

[最初の] 行に複数のマーカー
- IColumn は raw タイプです。ジェネリック型 IColumn への参照はパラメーター化する必要があります
- IColumn は生の型です。ジェネリック型 IColumn への参照はパラメーター化する必要があります

[2 番目の] 行に複数のマーカー
- 型の安全性: コンストラクター PropertyColumn(IModel, String) は生の型 PropertyColumn に属します。ジェネリック型 PropertyColumn への参照はパラメーター化する必要があります
- PropertyColumn は生の型です。ジェネリック型 PropertyColumn への参照はパラメーター化する必要があります

エラーはありません。

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

hibernate - Hibernateコードジェネレーターは何も生成しません

PostgresDBのモデルレイヤーでHibernateを使用してWicketベースのWebアプリケーションを開発しようとしています。

すべてのテーブルを手動で作成し、 http: //www.hibernate.orgからダウンロードしたHibernateコードジェネレーターツールを使用して、テーブルからコードをリバースエンジニアリングしようとしています。

作成hibernate.cfg.xmlしましhibernate.reveng.xmlた。また、Hibernateの観点からテーブルを参照することができます。

ドメインとhbm指定されたパッケージ上のファイルを生成するオプションを含むエクスポーター設定でコードジェネレーターを実行すると、何も生成されません。

使用した環境:
Eclipse 3.5(Galileo)
Postgres 8.3-604Wicket1.3
ワークベンチ

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

java - Wicket: セッション内でリクエストを同期する方法

シナリオ: Tomcat サーバーで実行されている Apache Wicket ベースの Web アプリケーション。

ユーザーがブラウザで URL を開くと、セッションが作成され、シンプルなメイン ページがブラウザに表示されます。ユーザーがボタンをクリックすると、AJAX 呼び出しが呼び出されます。アプリケーションはリクエストを受け取り、レスポンスの準備を行います。同時に、ブラウザーのユーザーまたは JavaScript が別の AJAX 呼び出しを呼び出します。この 2 番目の要求は、アプリケーションの別のスレッドで処理されます。アプリケーションのほとんどの部分はセッション固有であり、スレッドセーフではないため (1 ユーザー = 1 セッションであるため)、例外がスローされます。

可能な解決策:

  1. すべてのアプリケーション クラスをスレッド セーフにする (非常にコストがかかる)

  2. GUI を調整して、1 つのセッションで 2 つの AJAX 呼び出しを同時に実行しないようにします (ブラウザー GUI の性質上、これは不可能です)。

  3. Wicket または Tomcat レベルの 1 つのセッションですべてのリクエストを同期します (しかし、どのように?)

  4. 別の練習またはテクニック???

ありがとう

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

java - Apache Wicket に最も似ている PHP フレームワークは?

私が探している機能は、コンポーネント ベースですが、イベント ドリブンではありません。

また、親コードでコンポーネントを定義し、親のテンプレートでその配置といくつかの視覚的側面を記述するというアイデアも気に入っています。

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

java - Wicket アプリケーションは、マネージャーのパスワードなしで自身の再起動をトリガーできますか?

私は Wicket を初めて使用し、クリーンアップ、DB の更新、回復などを実行するためのある種のメンテナンス管理ページを使用して、内部から Web アプリケーションを維持したいと考えています。データバインディングにHibernateなどを使用する予定なので、これらのアクションを実行できるすべての人にTomcatマネージャーのパスワードを付随させることなく、アプリケーション自体の内部から完全な再起動をトリガーしたいと思います。

私の知る限り、管理者パスワードなしで Java Web アプリケーションを実際に再起動する簡単な方法はないようです。ただし、管理パネルにそのような再起動機能を持つ多くの Java Web アプリケーションがあるため、特定のサーブレット コンテナーまたは一部の Web フレームワークで再起動をトリガーできるはずです。彼らはどういうわけかトリックをしなければなりませんか?(または、実際には最初から再起動するのではなく、クリーンな再起動なしで再初期化するだけでしょうか?)

Wicket または Tomcat がアプリケーションからのシャットダウンと再起動でトリガーできることについては何も見つかりませんでしたが、Wicket にはそれを実行できる内部メソッドがいくつかありますか? (パブリックにアクセスできますが、JavaDoc は内部使用のみであるため、アクセスしないことをお勧めします)

セキュリティの観点からは、アプリケーションが独自のコードからそのような再起動を要求できない理由がよくわかりません。

これを行うことができますか? はいの場合、アプリケーションを再起動するためにアプリケーションで何をする必要がありますか?

編集:私の質問をより正確にするために: ユーザーもアプリも、Tomcat マネージャー インターフェイスへのアクセスに使用できるパスワードを持ってはなりません。私は、サーブレットコンテナをトリガーしてその特定のアプリケーションを再起動するために、認証を必要とせずに呼び出すメソッドまたは設定するフラグを考えていました。私の考えでは、アプリケーションはサーブレット コンテナーで実行されているため、何らかの方法でシャットダウンして再起動する必要があります。一般的に Java アプリ サーバーでそれが不可能な場合は、基盤となるフレームワーク (この場合は Wicket) を呼び出して実行中のすべてのスレッドを終了し、可能な限りクリーンアップして再起動することにより、アプリケーション レベルでそれを行う方法があるかもしれません。フレームワークを使用するアプリケーション。アプリスタックの「ソフトリブート」のようなもの。

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

java - Wicketの@SpringBeanアノテーションはどのように機能しますか?

@SpringBeanWicketの注釈はどのように機能しますか?実行時にリフレクションを使用しますか?コンパイラにコードを挿入させますか?または何?

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

java - Gmail のチャット ウィンドウの名前は何ですか?

最小化をクリックするとページの右隅に移動し、スクロールしても位置が変わらないgmailのチャットウィンドウのようなウィンドウを書きたいです。Javaでウィケットフレームワークを使用しています。Googleで検索できるように、このウィンドウの名前を知っている人はいますか? どうすればこれを行うことができますか?