diff --git a/bt5/erp5_hal_json_style/SkinTemplateItem/portal_skins/erp5_hal_json_style/ERP5Document_getHateoas.xml b/bt5/erp5_hal_json_style/SkinTemplateItem/portal_skins/erp5_hal_json_style/ERP5Document_getHateoas.xml
index d0765ffd7778802f39df2879133991277e635699..36dde13bce68eef706ac42e30465890d0ea20f6e 100644
--- a/bt5/erp5_hal_json_style/SkinTemplateItem/portal_skins/erp5_hal_json_style/ERP5Document_getHateoas.xml
+++ b/bt5/erp5_hal_json_style/SkinTemplateItem/portal_skins/erp5_hal_json_style/ERP5Document_getHateoas.xml
@@ -206,7 +206,7 @@ def renderForm(form, response_dict):\n
   response_dict[\'_actions\'] = {\n
     \'put\': {\n
       "href": url_template_dict["form_action"] % {\n
-        "traversed_document_url": traversed_document.absolute_url(),\n
+        "traversed_document_url": site_root.absolute_url() + "/" + traversed_document.getRelativeUrl(),\n
         "action_id": form.action\n
       },\n
       "method": form.method,\n
@@ -344,7 +344,7 @@ sql_catalog = portal.portal_catalog.getSQLCatalog()\n
 is_web_mode = (context.REQUEST.get(\'current_web_section\', None) is not None) or context.isWebMode()\n
 # is_web_mode =  traversed_document.isWebMode()\n
 if is_web_mode:\n
-  site_root = context.REQUEST.get(\'current_web_section\', context.getWebSiteValue())\n
+  site_root = context.getWebSectionValue()\n
 else:\n
   site_root = portal\n
 \n
diff --git a/bt5/erp5_hal_json_style/bt/revision b/bt5/erp5_hal_json_style/bt/revision
index cabf43b5ddf813cbe89697372a21373f14921884..410b14d2ce6f958c13adcb30807e8673074c49d9 100644
--- a/bt5/erp5_hal_json_style/bt/revision
+++ b/bt5/erp5_hal_json_style/bt/revision
@@ -1 +1 @@
-24
\ No newline at end of file
+25
\ No newline at end of file