aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTrumeet <yuuta@yuuta.moe>2021-04-04 14:27:21 -0700
committerTrumeet <yuuta@yuuta.moe>2021-04-04 14:27:21 -0700
commite8a187d5caa8ec8bda572fbf54c16fefbe9642e6 (patch)
tree0c15fbba453abb0ca537ceb9e86e63e056b90501
parent618298b1d9a5c6acc3b4f8a094c38368f9f4cf80 (diff)
downloaddn42peering-e8a187d5caa8ec8bda572fbf54c16fefbe9642e6.tar
dn42peering-e8a187d5caa8ec8bda572fbf54c16fefbe9642e6.tar.gz
dn42peering-e8a187d5caa8ec8bda572fbf54c16fefbe9642e6.tar.bz2
dn42peering-e8a187d5caa8ec8bda572fbf54c16fefbe9642e6.zip
fix(central): node form returns to a new form if any fields are invalidv1.13
-rw-r--r--central/src/main/java/moe/yuuta/dn42peering/admin/nodes/NodeHandler.java9
1 files changed, 7 insertions, 2 deletions
diff --git a/central/src/main/java/moe/yuuta/dn42peering/admin/nodes/NodeHandler.java b/central/src/main/java/moe/yuuta/dn42peering/admin/nodes/NodeHandler.java
index f0375ce..1450cff 100644
--- a/central/src/main/java/moe/yuuta/dn42peering/admin/nodes/NodeHandler.java
+++ b/central/src/main/java/moe/yuuta/dn42peering/admin/nodes/NodeHandler.java
@@ -215,10 +215,15 @@ public class NodeHandler implements ISubRouter {
})
.onFailure(err -> {
if (err instanceof FormException) {
+ final Node node = (Node) ((FormException) err).data;
+ if(node != null) {
+ // The exception may be generated from parseForm.
+ node.setId(Integer.parseInt(id)); // It must work.
+ }
NodeAdminUI.renderForm(engine, nodeService,
asn,
- true,
- ((Node) ((FormException) err).data),
+ false,
+ node,
Arrays.asList(((FormException) err).errors),
ctx);
} else {