Bug #54576

Make Extbase compatible to work with extensions >= TYPO3 4.5

Added by Stefan Froemken over 7 years ago. Updated about 7 years ago.

Status:
Closed
Priority:
Should have
Category:
Extbase
Target version:
Start date:
2013-12-23
Due date:
% Done:

0%

Estimated time:
TYPO3 Version:
6.2
PHP Version:
5.4
Tags:
Complexity:
medium
Is Regression:
No
Sprint Focus:

Description

Hi Core-Team,

in Extbase and maybe in Fluid, too, you have conditions for special Classnames. Here is a sample as done in PersistentObjectConverter:

if (
    class_exists($targetType)
    && is_subclass_of($targetType, 'TYPO3\\CMS\\Extbase\\DomainObject\\AbstractValueObject')
) {

In my extension I have build in TYPO3 4.7 I have following in my domain model class:

class Tx_Telephonedirectory_Domain_Model_Employee extends Tx_Extbase_DomainObject_AbstractEntity {

Because of using "old" classnames in my extension your condition returns FALSE and __identity was NOT deleted from $source-Array and my FE-Search results in:

Exception while property mapping at property path "":The identity property "" is no UID.

I have also tried it with 0

Exception while property mapping at property path "":Object with identity "0" not found.

There are some more conditions in extbase and fluid with such conditions.

Stefan

#1

Updated by Stefan Froemken over 7 years ago

Little workaround:

public function initializeSearchAction() {
    if ($this->request->hasArgument('office')) {
        $office = $this->request->getArgument('office');
        if (isset($office['__identity']) && empty($office['__identity'])) {
            $this->request->setArgument('office', '');
        }
    }
}

In my kind of view this should be done in extbase and not in one of my own controller.

#2

Updated by Markus Klein over 7 years ago

I'm not sure, but I seem to remember that there's already an issue reporting this problem.

#3

Updated by Marc Bastian Heinrichs about 7 years ago

  • Status changed from New to Accepted
  • Assignee set to Marc Bastian Heinrichs
#4

Updated by Marc Bastian Heinrichs about 7 years ago

Since Tx_Extbase_DomainObject_AbstractEntity is a subclass of TYPO3\\CMS\\Extbase\\DomainObject\\AbstractEntity this all should work.

#5

Updated by Stefan Froemken about 7 years ago

In one of our projects I have over 20 extensions working with old classnames on TYPO3 6.2. So yes...it seems to work now.
Please close this ticket now.

Stefan

#6

Updated by Nicole Cordes about 7 years ago

  • Status changed from Accepted to Closed

Closed as asked by the issue author

Also available in: Atom PDF