diff --git a/product/ERP5Form/ListBox.py b/product/ERP5Form/ListBox.py
index 99ac5eeeb276db59ef959d0b7ed7727254cf9015..9fa201a1aae521edd945a6e28f302433354cdfba 100644
--- a/product/ERP5Form/ListBox.py
+++ b/product/ERP5Form/ListBox.py
@@ -2128,7 +2128,11 @@ class ListBoxHTMLRendererLine(ListBoxRendererLine):
         else:
           try:
             url = '%s/view?selection_index=%s&selection_name=%s&ignore_layout:int=%s&reset:int=1' % (
-                      brain.absolute_url(),
+                      # brain.absolute_url() is slow because it invokes
+                      # _aq_dynamic() every time to get brain.REQUEST,
+                      # so we call request.physicalPathToURL() directly
+                      # instead of brain.absolute_url().
+                      request.physicalPathToURL(brain.getPath()),
                       self.index, selection_name, ignore_layout)
           except AttributeError:
             pass