diff --git a/bt5/erp5_officejs_support_request_ui/SkinTemplateItem/portal_skins/erp5_officejs_support_request/SupportRequestModule_createSupportRequest.py b/bt5/erp5_officejs_support_request_ui/SkinTemplateItem/portal_skins/erp5_officejs_support_request/SupportRequestModule_createSupportRequest.py
index bf87470717ab107931d5596dac46f3f7af48e742..90fb760e800e8fefad7dfffbc1601c65e4016ab2 100644
--- a/bt5/erp5_officejs_support_request_ui/SkinTemplateItem/portal_skins/erp5_officejs_support_request/SupportRequestModule_createSupportRequest.py
+++ b/bt5/erp5_officejs_support_request_ui/SkinTemplateItem/portal_skins/erp5_officejs_support_request/SupportRequestModule_createSupportRequest.py
@@ -8,7 +8,7 @@ project_object = portal.project_module[project]
 support_request = portal.support_request_module.newContent(
   portal_type='Support Request',
   title=title,
-  resource="service_module/" + resource,
+  resource=resource,
   destination_decision_value=logged_in_user_value,
   source_decision_value = project_object.getSourceDecisionValue(),
   source_section_value = project_object.getSourceSectionValue(),
diff --git a/bt5/erp5_officejs_support_request_ui/SkinTemplateItem/portal_skins/erp5_officejs_support_request/SupportRequestModule_viewSupportRequestFastInputDialog/your_resource.xml b/bt5/erp5_officejs_support_request_ui/SkinTemplateItem/portal_skins/erp5_officejs_support_request/SupportRequestModule_viewSupportRequestFastInputDialog/your_resource.xml
index 8c64bc562e5bbdb78be50d7d8b0a9ed3cca54f42..085aa3b943b53ccc1b47ca82d75d95f83359e5f8 100644
--- a/bt5/erp5_officejs_support_request_ui/SkinTemplateItem/portal_skins/erp5_officejs_support_request/SupportRequestModule_viewSupportRequestFastInputDialog/your_resource.xml
+++ b/bt5/erp5_officejs_support_request_ui/SkinTemplateItem/portal_skins/erp5_officejs_support_request/SupportRequestModule_viewSupportRequestFastInputDialog/your_resource.xml
@@ -136,7 +136,7 @@
       <dictionary>
         <item>
             <key> <string>_text</string> </key>
-            <value> <string>python: here.SupportRequest_getSupportTypeList(request.get("field_your_project", None)) or [(\'\', \'\')]</string> </value>
+            <value> <string>python: context.SupportRequest_getSupportTypeList(request.get("your_project", None))</string> </value>
         </item>
       </dictionary>
     </pickle>
diff --git a/bt5/erp5_officejs_support_request_ui/SkinTemplateItem/portal_skins/erp5_officejs_support_request/SupportRequest_getSupportTypeList.py b/bt5/erp5_officejs_support_request_ui/SkinTemplateItem/portal_skins/erp5_officejs_support_request/SupportRequest_getSupportTypeList.py
index eca453a4b62d4b7d0805f30191309fa06e909e72..7a464344651b6ea639077dceb2c20cf401c2f28b 100644
--- a/bt5/erp5_officejs_support_request_ui/SkinTemplateItem/portal_skins/erp5_officejs_support_request/SupportRequest_getSupportTypeList.py
+++ b/bt5/erp5_officejs_support_request_ui/SkinTemplateItem/portal_skins/erp5_officejs_support_request/SupportRequest_getSupportTypeList.py
@@ -1,19 +1,14 @@
 portal = context.getPortalObject()
 
+project = None
 if project_id:
-  project_list = portal.portal_catalog(portal_type="Project", id=project_id, limit=1)
-else:
-  project_list = portal.portal_catalog(portal_type="Project", validation_state="validated", limit=1)
-
-try:
-  project = project_list[0]
-except IndexError:
-  project = None
+  project = portal.project_module[project_id]
 
 result = context.SupportRequest_getSupportTypeListFromProjectValue(project)
 
 if json_flag:
   from json import dumps
+  container.REQUEST.RESPONSE.setHeader('content-type', 'application/json')
   return dumps(result)
 
 return result
diff --git a/bt5/erp5_officejs_support_request_ui/SkinTemplateItem/portal_skins/erp5_officejs_support_request/SupportRequest_getSupportTypeListFromProjectValue.py b/bt5/erp5_officejs_support_request_ui/SkinTemplateItem/portal_skins/erp5_officejs_support_request/SupportRequest_getSupportTypeListFromProjectValue.py
index 3baec3e7f89f8487c5099436d4b3875c8a7eb545..e0b9e993bc8143265c9f118ee47afb02a4c5b221 100644
--- a/bt5/erp5_officejs_support_request_ui/SkinTemplateItem/portal_skins/erp5_officejs_support_request/SupportRequest_getSupportTypeListFromProjectValue.py
+++ b/bt5/erp5_officejs_support_request_ui/SkinTemplateItem/portal_skins/erp5_officejs_support_request/SupportRequest_getSupportTypeListFromProjectValue.py
@@ -1,6 +1,15 @@
+"""Returns the services that can be used on support request for this project.
+"""
 # /!\ proxy role !
+
 portal = context.getPortalObject()
-result = []
+item_list = portal.Ticket_getResourceItemList(
+    portal_type='Support Request',
+    include_context=False,
+)
+
+allowed_resource_relative_url_set = set([])
+# if this project has supplies, only allow projects from the supplies.
 if project_value is not None:
   sale_supply_list = portal.portal_catalog(portal_type="Sale Supply", destination_project_uid=project_value.getUid())
   for sale_supply in sale_supply_list:
@@ -8,6 +17,9 @@ if project_value is not None:
     for supply_line in sale_supply_line_list:
       service = supply_line.getResourceValue()
       if service is not None:
-        result.append((service.getTitle(), service.getId()))
+        allowed_resource_relative_url_set.add(service.getRelativeUrl())
+if allowed_resource_relative_url_set:
+  return [('', '')] + [item for item in item_list if item[1] in allowed_resource_relative_url_set]
 
-return result
+# otherwise return all support request services
+return item_list
diff --git a/bt5/erp5_officejs_support_request_ui_test/PathTemplateItem/portal_tests/officejs_support_request_ui_zuite/testSupportRequestModuleAccess.zpt b/bt5/erp5_officejs_support_request_ui_test/PathTemplateItem/portal_tests/officejs_support_request_ui_zuite/testSupportRequestModuleAccess.zpt
index 3e0195456684d39fd01f076be6f1892d64cc2b40..a94fed33cb9a11a0d9234ba8600767f6103f3319 100644
--- a/bt5/erp5_officejs_support_request_ui_test/PathTemplateItem/portal_tests/officejs_support_request_ui_zuite/testSupportRequestModuleAccess.zpt
+++ b/bt5/erp5_officejs_support_request_ui_test/PathTemplateItem/portal_tests/officejs_support_request_ui_zuite/testSupportRequestModuleAccess.zpt
@@ -32,6 +32,11 @@
   <td>//input[@name='field_your_title']</td>
   <td>test</td>
 </tr>
+<tr>
+  <td>select</td>
+  <td>field_your_resource</td>
+  <td>FeatureRequire</td>
+</tr>
 <tr>
   <td>click</td>
   <td>//input[@data-i18n='[value]Proceed']</td>
diff --git a/bt5/erp5_officejs_support_request_ui_test/TestTemplateItem/portal_components/test.erp5.testSupportRequest.py b/bt5/erp5_officejs_support_request_ui_test/TestTemplateItem/portal_components/test.erp5.testSupportRequest.py
index b2daaaa4bc079535df331f48a1011ffb27dfc0ac..78a48655437c9baef10fbf3594f6929bee2db640 100644
--- a/bt5/erp5_officejs_support_request_ui_test/TestTemplateItem/portal_components/test.erp5.testSupportRequest.py
+++ b/bt5/erp5_officejs_support_request_ui_test/TestTemplateItem/portal_components/test.erp5.testSupportRequest.py
@@ -98,9 +98,7 @@ class TestSupportRequestCreateNewSupportRequest(SupportRequestTestCase):
     self.getWebSite().SupportRequestModule_createSupportRequest(
         description='<b>Help !!!</b>',
         file=None,
-        # FIXME: resource passed by the UI should be full relative URL
-        resource='erp5_officejs_support_request_ui_test_service_001',
-        # resource=self.portal.service_module.erp5_officejs_support_request_ui_test_service_001.getRelativeUrl(),
+        resource=self.portal.service_module.erp5_officejs_support_request_ui_test_service_001.getRelativeUrl(),
         title=self.id(),
         project='erp5_officejs_support_request_ui_test_project_001',
         # FIXME: project passed by the UI should be full relative URL
@@ -169,9 +167,7 @@ class TestSupportRequestCreateNewSupportRequest(SupportRequestTestCase):
     self.getWebSite().SupportRequestModule_createSupportRequest(
         description='<b>Look at this file !</b>',
         file=FileUpload("the text content"),
-        # FIXME: resource passed by the UI should be full relative URL
-        resource='erp5_officejs_support_request_ui_test_service_001',
-        # resource=self.portal.service_module.erp5_officejs_support_request_ui_test_service_001.getRelativeUrl(),
+        resource=self.portal.service_module.erp5_officejs_support_request_ui_test_service_001.getRelativeUrl(),
         title=self.id(),
         project='erp5_officejs_support_request_ui_test_project_001',
         # FIXME: project passed by the UI should be full relative URL