---
title: "Tx_Extbase_Persistence_ObjectStorage Fehler"
url: "https://www.typo3.net/d/105915-tx-extbase-persistence-objectstorage-fehler"
source: "typo3.net"
tags: ["Extensions","Extbase","Frage"]
created: "2011-06-20"
last_reply: "2011-07-20"
replies: 11
solved: false
page: 1
pages: 1
lang: "de"
---

# Tx_Extbase_Persistence_ObjectStorage Fehler

Extensions › Extbase · 11 Antworten · gestartet 2011-06-20

## Eröffnungsbeitrag

**Gloey** · 2011-06-20 · [Beitrag #1](https://www.typo3.net/d/105915-tx-extbase-persistence-objectstorage-fehler/1)

Hallo allerseits!

Ich versuche mich gerade an einer Extension bei der ich die Klassen Company und Contact (= Kontaktperson, Mitarbeiter) habe. Eine Company kann mehrere Contacts haben, ein Contact kann aber auch für mehrere Companies arbeiten. Deshalb habe ich mir die Zwischentabelle RelationCompCont gebaut, die die UIDs von Company und Contact speichert.

Um von der Company aus auf RelationCompCont zugreifen zu können, habe ich ein Tx_Extbase_Persistence_ObjectStorage.
In der Klasse Company wird es initialisiert durch
$this->relationCompCont = new Tx_Extbase_Persistence_ObjectStorage();

Bei einer Debugausgabe bekomme ich aber immer nur den Fehler:
[warning:Tx_Extbase_Persistence_ObjectStorage:private] => You should never see this warning. If you do, you probably used PHP array functions like current() on the Tx_Extbase_Persistence_ObjectStorage. To retrieve the first result, you can use the getFirst() method.

Ich habe schon nach dem Fehler gesucht, aber nicht rausgefunden, was ich anders machen muss. Im Blogbeispiel wird auch mit dem ObjectStorage gearbeitet und dort scheint es ja wunderbar zu funktionieren. Was mache ich falsch?

Gruß, Birte

## Antworten

### [#2](https://www.typo3.net/d/105915-tx-extbase-persistence-objectstorage-fehler/2) · Typo3Cuckoo · 2011-06-21

Hallo Gloey,

zeig mal deinen Code, wie du das ObjectStorage in deinem Domain Model angelegt hast.

Es sollte in etwa so aussehen:

Company.php (Domain Model):

```php
<?php

/**
 * 
 * @var Tx_Extbase_Persistence_ObjectStorage<Tx_MyExt_Domain_Model_Contact>
 */
protected $contacts;

/**
 *
 * Constructor
 */
public function __construct(){
  $this->contacts = new Tx_Extbase_Persistence_ObjectStorage;
}

?>
```

### [#3](https://www.typo3.net/d/105915-tx-extbase-persistence-objectstorage-fehler/3) · Gloey · 2011-06-22

Hallo Typo3Cuckoo,

der Code sieht ziemlich gleich aus, nur dass bei mir noch ein Umweg über initStorageObjects gemacht wird (Der Code wurde vom ExtensionBuilder erzeugt).

```php
<?php

/**
 * relationCompCont
 *
 * @var Tx_Extbase_Persistence_ObjectStorage<Tx_FhwTimetableWhb_Domain_Model_RelationCompCont>
 */
protected $relationCompCont;


public function __construct() {
  //Do not remove the next line: It would break the functionality
  $this->initStorageObjects();
}

/**
 * Initializes all Tx_Extbase_Persistence_ObjectStorage instances.
 *
 * @return void
 */
protected function initStorageObjects() {
  /**
   * Do not modify this method!
   * It will be rewritten on each save in the extension builder
   * You may modify the constructor of this class instead
   */
  $this->relationCompCont = new Tx_Extbase_Persistence_ObjectStorage();
}

?>
```

Ich habe schon ausprobiert das new direkt im Construktor zu machen, aber das hat auch keine Änderung ergeben.

Außerdem habe ich noch probiert:

$this->setRelationCompCont(new Tx_Extbase_Persistence_ObjectStorage());

und

$this->relationCompCont = t3lib_div::makeInstance('Tx_Extbase_Persistence_ObjectStorage');

### [#4](https://www.typo3.net/d/105915-tx-extbase-persistence-objectstorage-fehler/4) · Typo3Cuckoo · 2011-06-22

Dann versuchs doch mal auf dem von mir vorgeschlagenen Weg und lass in der Zeile die zwei Klammern am Ende weg.

Also so:

```php
$this->relationCompCont = new Tx_Extbase_Persistence_ObjectStorage;
```

### [#5](https://www.typo3.net/d/105915-tx-extbase-persistence-objectstorage-fehler/5) · Gloey · 2011-06-23

Ich habe das jetzt geändert, aber leider ist der Fehler immer noch da.
So sieht es jetzt aus:

```php
<?php

protected $relationCompCont;

public function __construct() {
$this->relationCompCont = new Tx_Extbase_Persistence_ObjectStorage;
}

?>
```

### [#6](https://www.typo3.net/d/105915-tx-extbase-persistence-objectstorage-fehler/6) · Typo3Cuckoo · 2011-06-27

Hi,

die Annotations (Kommentare) sollten aber schon da bleiben ;)

Bekommst du immer noch die gleiche Fehlermeldung oder kommt jetzt was anderes?

### [#7](https://www.typo3.net/d/105915-tx-extbase-persistence-objectstorage-fehler/7) · Gloey · 2011-07-08

Die Kommentare sind auch noch im Code, die hatte ich nur hier rausgenommen ;-)

Die Fehlermeldung bekomme ich immernoch, ich kann aber trotzdem mit dem ObjectStorage arbeiten. Sobald ich einen Wert gespeichert habe, taucht die Meldung nicht mehr auf. Insofert ignoriere ich das jetzt einfach mal, inzwischen habe ich wieder ein neues Problem ;-)

Vielen Dank troztdem für die Hilfe.

### [#8](https://www.typo3.net/d/105915-tx-extbase-persistence-objectstorage-fehler/8) · BlackPixel · 2011-07-08

kann es sein das du versucht hast mittels var_dump oder print_r den Storage auszugeben? Denn genau da ist die Krux begraben.

Dafür gibt es eine kleine ext mit der du Objekte debuggen kannst ohne diesen Fehler zu bekommen:
<http://www.t3node.com/blog/debug-helper-extension-for-extbase/>

Gruß Manfred

### [#9](https://www.typo3.net/d/105915-tx-extbase-persistence-objectstorage-fehler/9) · xandio · 2011-07-08

Eigentlich handelt es sich nicht um eine Fehlermeldung, sondern um das Sichtbarmachen des privaten Feldes "warning" eines ObjectStorage-Objekts mittels debug.

Viele Grüße,
Xandi

### [#10](https://www.typo3.net/d/105915-tx-extbase-persistence-objectstorage-fehler/10) · Gloey · 2011-07-10

Stimmt, beim Debuggen bin ich darauf gestoßen und dachte, ich muss zuerst das "Problem" lösen, bevor ich damit arbeiten kann. Wieder was dazu gelernt ;-)

### [#11](https://www.typo3.net/d/105915-tx-extbase-persistence-objectstorage-fehler/11) · BlackPixel · 2011-07-11

:-) Könntest Du das Thema noch auf gelöst setzen? Danke!

### [#12](https://www.typo3.net/d/105915-tx-extbase-persistence-objectstorage-fehler/12) · Gloey · 2011-07-20

Ja, klar, sorry, ich bin noch nicht so vertraut mit den gepflogenheiten dieses Forums.
(Ich weiß, es steht in den Regeln...)

---

Quelle: „Tx_Extbase_Persistence_ObjectStorage Fehler“, typo3.net, https://www.typo3.net/d/105915-tx-extbase-persistence-objectstorage-fehler
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
