CoreCommunity ExtensionsDistributionsFeature-RequestsTYPO3 6.2 Projects (+)(Archived Projects)

Task #6915

Story #11986: As an extension developer I want to find the extension builder in TER

Error while saving when wiring relations of two model objects

Added by Steffen Müller over 5 years ago. Updated almost 2 years ago.

Status:Closed Start date:2010-03-18
Priority:Should have Due date:
Assigned To:Nico de Haen % Done:

0%

Category:Code Creation
Target version:-

Description

Creating two model objects: bookmark and tag. Bookmark is entity with aggregate root, tag is value object.

So far everything is fine.

Then I add a bidirectional relation, using a wire and relation type "associatiion table" on both sides. (see screenshot)

As soon as do that and try to save, I get "error while saving" alert. Error is thrown when saving, no matter what type of relation (1:1, 1:n, assoc) I choose.

Suggestion from the mailinglist to "Remove the wire in question, save the Extension, load the extension, add the wire, save" does not help, no matter how often I try.

If I plug the wire on top of the model object on one side, saving works.

Tested on:
- Debian Squeeze
- Apache/2.2.14
- PHP/5.3.1
- TYPO3 4.3 branch rev. 7103.
- extbase and fluid from trunk rev. 2071
- extbase_kickstarter rev. 31236.

I also tried on a different server, Debian Lenny: PHP/5.2.6, kickstarter rev. 29003 using TYPO3 4.3.2 with original extbase and fluid from 4.3 branch.

6915_error.png (22.4 kB) Steffen Müller, 2010-03-18 23:04

kickstarter.json (1.2 kB) Steffen Müller, 2010-03-18 23:07

POST_data_unwired.txt Magnifier (1.5 kB) Steffen Müller, 2010-03-18 23:24

POST_data_wired.txt Magnifier (1.6 kB) Steffen Müller, 2010-03-18 23:25

6915_working_example.png (58.3 kB) Steffen Müller, 2010-07-21 18:00

Associated revisions

Revision 2586bceb
Added by Nico de Haen over 4 years ago

[+BUGFIX] Creating a relation in the "wrong" direction is detected and the target/sorce values are swapped Bug #6915

History

#1 Updated by Steffen Müller over 5 years ago

#2 Updated by Steffen Müller over 5 years ago

See the configuration in attached file kickstarter.json

#3 Updated by Steffen Müller over 5 years ago

... tried using Firefox 3.5.8 on Ubuntu 9.10 and Safari 4.0.4 on Win XP.

#4 Updated by Steffen Müller over 5 years ago

Here's the POST data which is sent via AJAX when clicking save button.

Appending two files, one with POST data with wire, one without wire.

#6 Updated by Sebastian Michaelsen about 5 years ago

  • Category changed from Backend Interface to Code Creation
  • Status changed from New to Needs Feedback
  • Assigned To set to Sebastian Michaelsen
  • Target version set to 0.1

Hi Steffen,

can you check if you can still reproduce this error? I can't.

#7 Updated by Steffen Müller about 5 years ago

reproducable with latest trunk revision 35899.

I have added another screenshot with a different wiring, which works. So this bug is rather about removing a wiring possibility which leads to errors.

#8 Updated by Sy Moen about 5 years ago

I am using 35882 installed on t3 4.4.0, php 5.3.1, and am on a CentOS release 5.4 (Final) with 2.6.18-164.6.1.el5 core via firefox3.6 on a mac

...and I can never get the thing to save... not even a name and description. It always creates the directory and writes directory and the JSON ext header file (kickstarter.json) with 644 perms... and then, obviously, it cannot write anything else. At very least it needs to write the file with 664 perms on my system (so the group user can write it).

So, when I manually change the perms to 664 (group writable) it still chokes. Nothing more gets written... still, "error while saving"

#9 Updated by Sy Moen about 5 years ago

Checked Backend page create mask and it was indeed 644... sorry about that... but I changed it to 664, and dir create to 775 and cleared caches, logged out of the BE and logged back in... and tried another go at the kickstarter:

Perms are now fine, but "error while saving" persists with only name, ext name and desc filled out. No models at all.

#10 Updated by Sebastian Michaelsen almost 5 years ago

After latest changes.. is this error still reproducable?

#11 Updated by Sven Lauritzen almost 5 years ago

Sebastian Michaelsen wrote:

After latest changes.. is this error still reproducable?

Yes, I've just upgraded to the latest version from SVN and it's still reproducible.

I've noticed that the reporter has connected the relation with the relation, not the relation with the object. That's why the backend returns a Status 500 page stating "Connections to other places than SOURCES not supported.". It should be impossible for the user to create connections that are not supported on server side. Possibly it's sufficient to improve the error message and tell the user what went wrong.

Intuitionally, it seems to be the right thing to do to connect the relation with the relation if you want to access the other part of the connections in both directions. There should be only one association table and a name referring to the relation on both sides.

What's the user expected to do to achieve that?

Best regards

Sven Lauritzen

#12 Updated by Nico de Haen over 4 years ago

  • Assigned To changed from Sebastian Michaelsen to Nico de Haen

I improved the error handling, so the user get's an error message, explaining that it is not possible to connect two relation terminals.
I'm not sure if all the reports belong to the same bug. At least it is also possible now to start the connection between model and related model from both sides.

#13 Updated by Rens Admiraal over 4 years ago

  • Tracker changed from Bug to Task
  • Target version deleted (0.1)
  • Parent task set to #11986

#14 Updated by Nico de Haen over 4 years ago

  • Status changed from Needs Feedback to Resolved

#15 Updated by Vincent Mans almost 2 years ago

Saving results in 500 error.

Still exists in 6.1.3 with version 2.5.2 extension builder.

At least take care of a proper message because if others do like I did (search google, follow the directions of others of clearing cache and such) they may loose a few hours of work.


After saving the same latest save again, the error also occurs.

After removing ALL relations and whatever might be double or wrong, I keep receiving:

Error while saving: Server responded with Status-Code: 500
Statustext: Internal Server Error
Show response

I have to say, it didn't start like that, the first saves were okay and the error messages if occurred, very clear.

(Perhaps this issue is not the same as it originally started here.)

#16 Updated by Nico de Haen almost 2 years ago

  • Status changed from Resolved to Needs Feedback

Hi Vincent,

this bug was about the missing client side validation, if someone connects 2 relations with each other instead of connecting a relation with a model.

Not sure if that was your situation. Can't tell you more without more details...

#17 Updated by Vincent Mans almost 2 years ago

Hi Nico,

I see the error now... I have made a mistake with "Extend existing model class". But repairing that mistake doesn't solve the error. I have to remove the extension from the ext directory first.

Thanks, and so it's not an issue.

#18 Updated by Nico de Haen almost 2 years ago

  • Status changed from Needs Feedback to Closed

Also available in: Atom PDF