[SOLVED] Neos 7.1 Problem with old prototype of mine (from Neos 4) No Fusion object found in path page

I try to transfer/transform my own Neos 4 package to Neos 7.1.

My old file NodeTypes.yaml

'Vendor.Site:Menupoint':
  superTypes:
    'Neos.Neos:Document': true
  childNodes:
    main:
      type: 'Neos.Neos:ContentCollection'
    sidebarspecific:
      type: 'Neos.Neos:ContentCollection'

My new file Node.Types.Document.Menupoint.yaml

'Vendor.Site:Document.Menupoint':
  superTypes:
    'Neos.Neos:Document': true
  childNodes:
    main:
      type: 'Neos.Neos:ContentCollection'
    sidebarspecific:
      type: 'Neos.Neos:ContentCollection'

My old file Menupoint.fusion

prototype(Vendor.Site:Menupoint) {
    title = Neos.Fusion:Tag {
        tagName = 'span'
        content = ${q(node).property('title')}
        @process.contentElementEditable = ContentElementEditable {
            property = 'title'
        }
    }
    teaser = Neos.Fusion:Tag {
        tagName = 'span'
        content = ${q(node).property('teaser')}
        @process.contentElementEditable = ContentElementEditable {
            property = 'teaser'
        }
    }
    main = ContentCollection {
        nodePath = 'main'
    }
}

My new file Menupoint.fusion

prototype(Vendor.Site:Menupoint) {
    title = Neos.Fusion:Tag {
        tagName = 'span'
        content = ${q(node).property('title')}
        @process.contentElementEditable = ContentElementEditable {
            property = 'title'
        }
    }
    teaser = Neos.Fusion:Tag {
        tagName = 'span'
        content = ${q(node).property('teaser')}
        @process.contentElementEditable = ContentElementEditable {
            property = 'teaser'
        }
    }
    main = ContentCollection {
        nodePath = 'main'
    }
}

An exception was thrown while Neos tried to render your page

No Fusion object found in path “page” Please make sure to define one in your Fusion configuration.

My package is a „copy“ from Dimitri „Why you might not need a news/blog package for Neos CMS

I think, I have to add < prototype(), but which?

I am thankful for every help

Try to extend Neos.Neos:Page in older Neos versions this was assumed but made it harder to understand.

So we decided to remove this invisible code.

Hi Martin,
Thank you for your advice.
Now this is the next error…

An exception was thrown while Neos tried to render your page

The Fusion object Neos.Fusion:ContentElementEditable cannot be rendered: Most likely you mistyped the prototype name or did not define the Fusion prototype with prototype(Neos.Fusion:ContentElementEditable) < prototype ... . Other possible reasons are a missing parent-prototype or a missing @class annotation for prototypes without parent. It is also possible your Fusion file is not read because of a missing include: statement.

The prototype you are looking for is called Neos.Neos:ContentElementEditable.

Very likely your code only uses ContentElementEditable and was autocompleted to Neos.Neos in the past via Fusion namespace.

Background: Ages ago default namespaces were used in included files aswell. This was changed and now namespace declarations are only valid for the fusion file they are defined in. Otherwise the default namespace is Neos.Fusiom which is probably the reason of your problem.

I recommend to always use full prototype names and an ide that supports autocompleting.

Regards, Martin

BTW: Did you execude the core migrations for your packages with ./flow flow:core:migrate Your.Package that should have adjusted at least the namespace problem.

There are detailed instructions for all releases here: https://docs.neos.io/cms/references/upgrade-instructions.

In general after applying the migrations you should not need much adjustments from 4.x to 7.x. There are some execeptions like http-components and loggers but those are quite rare in projects.

Thank you for that hint. I didn’t make a migration. I’m setting up a new 7.1. My only one project was made on 2018. Since I never touched neos.
So I copy the files Menupoint.yaml and Menupoint.fusion and others from Dimitri’s video example to neos 7.1 and look if it works.
I would like to expand my project to a multisite project. So I need a little bit knowhow to develop it. I practice learnig by doing, but at the moment, it is a hard job for me.

I would recommend https://github.com/neos/Neos.Demo as a blueprint for smaller projects. We keep it up to date to be in line with recent developments and best practices.

There has been quite some changes in the last years an Neos matured a lot.

You are right. Neos.Demo 7.1 has a other construction of yaml and fusion files relating to Neos.Demo 4.3 and I want to render with afx.