Project

General

Profile

Actions

Bug #89666

closed

PersistenceManagerException with two extensions providing a form definition with the same name

Added by Stephan Großberndt over 4 years ago. Updated over 4 years ago.

Status:
Rejected
Priority:
-- undefined --
Assignee:
-
Category:
Form Framework
Target version:
-
Start date:
2019-11-13
Due date:
% Done:

0%

Estimated time:
TYPO3 Version:
9
PHP Version:
Tags:
Complexity:
Is Regression:
Sprint Focus:
Remote Sprint

Description

Usecase:

  • One TYPO3 installation with multiple sites each with its own site extension.
  • Each site extension provides a contact form for the site
  • Path1 is EXT:extension/Resources/Private/Forms/Contact.form.yaml
  • Path2 is EXT:extension2/Resources/Private/Forms/Contact.form.yaml

On installing extension2 the references to the form definitions of extension are no longer valid as they are replaced by the ones of extension2.

The issue is apparently that the name of the yaml is the key for the form definition and the path / extension name is not taken into account.

How to reproduce:

  1. Download extensions.zip from this issue
  2. Install EXT:extension
  3. Add form content element referencing the form definition
  4. Install EXT:extension2
Now there are the following issues:
  • When editing the form content element only the form definition of the second extension is visible
  • When accessing the page containing the form content element in the frontend the following exception is shown:
#1484071985 TYPO3\CMS\Form\Mvc\Persistence\Exception\PersistenceManagerException

The file "EXT:extension/Resources/Private/Forms/Contact.form.yaml" could not be loaded. Please check your configuration option "persistenceManager.allowedExtensionPaths" 

Files

extensions.zip (6.21 KB) extensions.zip Extensions providing contact forms with the same name to test the issue Stephan Großberndt, 2019-11-13 10:38

Related issues 1 (0 open1 closed)

Related to TYPO3 Core - Bug #88539: Form Framework: same filename in different storages not possibleClosed2019-06-11

Actions
Actions #1

Updated by Susanne Moog over 4 years ago

  • Sprint Focus set to Remote Sprint
Actions #2

Updated by Mathias Brodala over 4 years ago

  • Related to Bug #88539: Form Framework: same filename in different storages not possible added
Actions #3

Updated by Ralf Zimmermann over 4 years ago

  • Status changed from New to Needs Feedback
  • Assignee set to Stephan Großberndt

Your issue is a configuration issue.
You use the same keys within both extensions

TYPO3:
    CMS:
        Form:
            persistenceManager:
                allowedExtensionPaths:
                    110: EXT:extension2/Resources/Private/Forms/
TYPO3:
    CMS:
        Form:
            persistenceManager:
                allowedExtensionPaths:
                    110: EXT:extension/Resources/Private/Forms/
module.tx_form {
    settings {
        yamlConfigurations {
            110 = EXT:extension2/Configuration/Form/Setup.yaml
        }
    }
}
plugin.tx_form {
    settings {
        yamlConfigurations {
            110 = EXT:extension2/Configuration/Form/Setup.yaml
        }
    }
}
module.tx_form {
    settings {
        yamlConfigurations {
            110 = EXT:extension/Configuration/Form/Setup.yaml
        }
    }
}
plugin.tx_form {
    settings {
        yamlConfigurations {
            110 = EXT:extension/Configuration/Form/Setup.yaml
        }
    }
}

Change all "110" within extension2 to 111 (or better to the current unix timestamp) and it works.

Actions #4

Updated by Stephan Großberndt over 4 years ago

  • Status changed from Needs Feedback to Rejected
  • Assignee deleted (Stephan Großberndt)
  • Priority changed from Must have to -- undefined --

Thanks.

Actions

Also available in: Atom PDF