You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@causeway.apache.org by ah...@apache.org on 2025/11/15 06:04:22 UTC
(causeway) 02/02: CAUSEWAY-3944: code for debugging
This is an automated email from the ASF dual-hosted git repository.
ahuber pushed a commit to branch 3944-collection.out.of.sync
in repository https://gitbox.apache.org/repos/asf/causeway.git
commit 42491147d8c99ce44492f6ac3b9bc6d3c9d659be
Author: andi-huber <ah...@apache.org>
AuthorDate: Sat Nov 15 07:04:14 2025 +0100
CAUSEWAY-3944: code for debugging
---
.../causeway/viewer/wicket/model/util/PageUtils.java | 10 ++++++++++
.../attributes/AttributeModelDefaultChangeBehavior.java | 16 ++++++++++++++++
2 files changed, 26 insertions(+)
diff --git a/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/util/PageUtils.java b/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/util/PageUtils.java
index b68fb3e54c9..e376c6f33e6 100644
--- a/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/util/PageUtils.java
+++ b/viewers/wicket/model/src/main/java/org/apache/causeway/viewer/wicket/model/util/PageUtils.java
@@ -18,6 +18,9 @@
*/
package org.apache.causeway.viewer.wicket.model.util;
+import java.util.Optional;
+
+import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.core.request.handler.ListenerRequestHandler;
import org.apache.wicket.request.component.IRequestablePage;
import org.apache.wicket.request.cycle.RequestCycle;
@@ -46,5 +49,12 @@ public void pageRedirect(final IRequestablePage page) {
if(requestCycle==null) return;
requestCycle.setResponsePage(page);
}
+
+ public boolean isAjax() {
+ return Optional.ofNullable(RequestCycle.get())
+ .map(rc->rc.find(AjaxRequestTarget.class))
+ .map(Optional::isPresent)
+ .orElse(false);
+ }
}
diff --git a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/AttributeModelDefaultChangeBehavior.java b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/AttributeModelDefaultChangeBehavior.java
index f51dce9e8a9..5db8fd7d8d4 100644
--- a/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/AttributeModelDefaultChangeBehavior.java
+++ b/viewers/wicket/ui/src/main/java/org/apache/causeway/viewer/wicket/ui/components/attributes/AttributeModelDefaultChangeBehavior.java
@@ -18,6 +18,7 @@
*/
package org.apache.causeway.viewer.wicket.ui.components.attributes;
+import org.apache.wicket.Component;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.ajax.form.AjaxFormComponentUpdatingBehavior;
@@ -42,4 +43,19 @@ protected void onError(final AjaxRequestTarget target, final RuntimeException e)
scalarPanel.getAttributeModelChangeDispatcher().notifyError(target);
}
+ @Override
+ public boolean canCallListener(Component component) {
+ var res = super.canCallListener(component);
+ if(!res) {
+ // debug code here
+ }
+ return res;
+ }
+
+ @Override
+ public String toString() {
+ return "AttributeModelDefaultChangeBehavior[attributeModel=%s]"
+ .formatted(scalarPanel.attributeModel());
+ }
+
}
\ No newline at end of file