diff --git a/jsonapi.services.yml b/jsonapi.services.yml
index 2fda8c8..342dc87 100644
--- a/jsonapi.services.yml
+++ b/jsonapi.services.yml
@@ -101,7 +101,7 @@ services:
     arguments: ['@jsonapi.resource_type.repository', '@request_stack', '@current_route_match']
   jsonapi.field_resolver:
     class: Drupal\jsonapi\Context\FieldResolver
-    arguments: ['@jsonapi.current_context', '@entity_field.manager', '@entity_type.bundle.info', '@jsonapi.resource_type.repository']
+    arguments: ['@entity_field.manager', '@entity_type.bundle.info', '@jsonapi.resource_type.repository']
   access_check.jsonapi.custom_query_parameter_names:
     class: Drupal\jsonapi\Access\CustomQueryParameterNamesAccessCheck
     tags:
diff --git a/src/Context/FieldResolver.php b/src/Context/FieldResolver.php
index b50dd3e..f519a3e 100644
--- a/src/Context/FieldResolver.php
+++ b/src/Context/FieldResolver.php
@@ -18,24 +18,29 @@ use Symfony\Component\HttpKernel\Exception\BadRequestHttpException;
 class FieldResolver {
 
   /**
-   * The entity type id.
+   * The field manager.
    *
-   * @var \Drupal\jsonapi\Context\CurrentContext
+   * @var \Drupal\Core\Entity\EntityFieldManagerInterface
    */
-  protected $currentContext;
+  protected $fieldManager;
 
   /**
-   * The field manager.
+   * The bundle info service.
    *
-   * @var \Drupal\Core\Entity\EntityFieldManagerInterface
+   * @var \Drupal\Core\Entity\EntityTypeBundleInfoInterface
    */
-  protected $fieldManager;
+  protected $entityTypeBundleInfo;
+
+  /**
+   * The resource type repository.
+   *
+   * @var \Drupal\jsonapi\ResourceType\ResourceTypeRepositoryInterface
+   */
+  protected $resourceTypeRepository;
 
   /**
    * Creates a FieldResolver instance.
    *
-   * @param \Drupal\jsonapi\Context\CurrentContext $current_context
-   *   The JSON API CurrentContext service.
    * @param \Drupal\Core\Entity\EntityFieldManagerInterface $field_manager
    *   The field manager.
    * @param \Drupal\Core\Entity\EntityTypeBundleInfoInterface $entity_type_bundle_info
@@ -43,8 +48,7 @@ class FieldResolver {
    * @param \Drupal\jsonapi\ResourceType\ResourceTypeRepositoryInterface $resource_type_repository
    *   The resource type repository.
    */
-  public function __construct(CurrentContext $current_context, EntityFieldManagerInterface $field_manager, EntityTypeBundleInfoInterface $entity_type_bundle_info, ResourceTypeRepositoryInterface $resource_type_repository) {
-    $this->currentContext = $current_context;
+  public function __construct(EntityFieldManagerInterface $field_manager, EntityTypeBundleInfoInterface $entity_type_bundle_info, ResourceTypeRepositoryInterface $resource_type_repository) {
     $this->fieldManager = $field_manager;
     $this->entityTypeBundleInfo = $entity_type_bundle_info;
     $this->resourceTypeRepository = $resource_type_repository;
@@ -56,14 +60,18 @@ class FieldResolver {
    * Example:
    *   'field_author.entity.field_first_name' -> 'author.firstName'.
    *
+   * @param string $entity_type_id
+   *   The type of the entity for which to resolve the field name.
+   * @param string $bundle
+   *   The bundle of the entity for which to resolve the field name.
    * @param string $internal_field_name
    *   The Drupal field name to map to a public field name.
    *
    * @return string
    *   The mapped field name.
    */
-  public function resolveExternal($internal_field_name) {
-    $resource_type = $this->currentContext->getResourceType();
+  public function resolveExternal($entity_type_id, $bundle, $internal_field_name) {
+    $resource_type = $this->resourceTypeRepository->get($entity_type_id, $bundle);
     return $resource_type->getPublicName($internal_field_name);
   }
 
