---
title: "Mapping auf SysFile im AJAX-Call"
url: "https://www.typo3.net/d/126298-mapping-auf-sysfile-im-ajax-call"
source: "typo3.net"
tags: ["Extensions","Extbase","Frage","JavaScript & AJAX","TYPO3 8"]
created: "2017-10-16"
last_reply: "2017-10-24"
replies: 1
solved: false
page: 1
pages: 1
lang: "de"
---

# Mapping auf SysFile im AJAX-Call

Extensions › Extbase · 1 Antwort · gestartet 2017-10-16

## Eröffnungsbeitrag

**getit** · 2017-10-16 · [Beitrag #1](https://www.typo3.net/d/126298-mapping-auf-sysfile-im-ajax-call/1)

Ich meinem Modul versuche ich die Tabelle SysFile zu mappen.
Aber das klappt nicht - ich habe bereits diverse andere Tabellen wie BeUsers, SysFileReference erfolgreich gemappt und kann mir nicht erklären warum das einfach nicht funktioniert.

Ich sollte noch erwähnen, das ich versuche die Tabelle in einem AJAX-Call zu mappen.
Schreibe ich den Code aus der Methode des AJAX-Calls in die listAction() funktioniert der Code. Ist also korrekt - aber warum gehts im AJAX-Call nicht?

Ich habe zwei Klassen, SysFile und SysFileRepository:

Classes\Domain\Model\SysFile.php
<code>
<?php

namespace KKSoftware\Kkbaybw\Domain\Model;

use TYPO3\CMS\Extbase\DomainObject\AbstractEntity;

class SysFile extends AbstractEntity {

/**
   * @var string
   */
  protected $identifier;

/**
   * @return string
   */
  public function getIdentifier() {
    return $this->identifier;
  }
}
</code>

Classes\Domain\Repository\SysFileRepository
<code>
<?php

namespace KKSoftware\Kkbaybw\Domain\Repository;

class SysFileRepository extends BaseRepository {

}
</code>

und das Mapping in der setup.ts:
<code>
module.tx_kkbaybw {
  persistence {
    // DAS GEHT NICHT - WIESO???
    KKSoftware\Kkbaybw\Domain\Model\SysFile {
      mapping {
        tableName = sys_file
      }
    }
  }
}
</code>

die localconf.php
<code>
....
$GLOBALS['TYPO3_CONF_VARS']['BE']['AJAX']['kkbaybwBackendImageInWYSIWIG'] = [
'callbackMethod' => 'KKSoftware\\Kkbaybw\\Controller\\Backend\AnsprechpartnerController->imageUploadInWYSIWIG'
];
.....
</code>

und zuletzt der AnsprechpartnerController
<code>
<?php

use KKSoftware\Kkbaybw\Domain\Repository\SysFileRepository;

public class AnsprechpartnerController extends BaseController {

/**
   * @var SysFileRepository $sysFileRepository
   */
  protected $sysFileRepository;

/**
   * @param SysFileRepository $sysFileRepository
   */
  public function injectSysFileRepository(SysFileRepository $sysFileRepository) {
    $this->sysFileRepository = $sysFileRepository;
  }

public function imageUploadInWYSIWIG() {
    $postData = GeneralUtility::_POST();
    if (!isset($postData['uid'])) {
      return json_encode(['result' => 'Missing arguments']);
    } else {
      $uid = $postData['uid'];
      $om = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\CMS\Extbase\Object\ObjectManager');
      /** @var $sysFileRepository \KKSoftware\Kkbaybw\Domain\Repository\SysFileRepository */
      $sysFileRepository = $om->get('KKSoftware\\Kkbaybw\\Domain\\Repository\\SysFileRepository');

      //1
      DebuggerUtility::var_dump($this->sysFileRepository->findAll());

      //2
      DebuggerUtility::var_dump($sysFileRepository->findAll());exit;
    }
  }
}
</code>
bei 1 wird ausgeben:
Call to a member function findAll() on null.

bei 2 wird ausgeben:
Table 'typo8.tx_kkbaybw_domain_model_sysfile' doesn't exist

## Antworten

### [#2](https://www.typo3.net/d/126298-mapping-auf-sysfile-im-ajax-call/2) · getit · 2017-10-24

Habs rausgefunden.

Richtig (in setup.ts):

```typoscript
config.tx_extbase {
  persistence {
    classes {
      KKSoftware\Kkbaybw\Domain\Model\Seite {
        mapping {
          tableName = pages
        }

      }
    }
  }
}
```

Ich hatte vorher 'module.tx_kkbaybw' - das hat im rest des Moduls funktioniert.

---

Quelle: „Mapping auf SysFile im AJAX-Call“, typo3.net, https://www.typo3.net/d/126298-mapping-auf-sysfile-im-ajax-call
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
