After 6.8.0 Update - Views cannot have cyclic references. View _minimal for entity xxx

Since the 6.8.0 update I am receiving the message Views cannot have cyclic references. View _minimal for entity xxx on a number of my views in Cuba when I attempt to open them in Studio.

The entities behind these views have a fairly complex hierarchy, but I have never had this error before and these relationships work in my screens as well as my rest API.

I created a test view from scratch and can see when I add the property surveySites in Studio the exception is triggered when I try to save the view.

<view class="gov.azgfd.fins.entity.FsSurvey"
      extends="_local"
      name="fsSurvey-testview">
    <property name="aZGFDProgramID"
              view="_minimal"/>
    <property name="surveyTypeID"
              view="_minimal"/>
    <property name="masterWaterbodyID"
              view="_minimal"/>
    <property name="devices"
              view="_minimal">
        <property name="surveyID"
                  view="_minimal"/>
        <property name="deviceStatus"
                  view="_minimal"/>
        <property name="validDeviceID"
                  view="_minimal"/>
    </property>
    <property name="species"
              view="_minimal"/>
    <property name="fundings"
              view="_minimal">
        <property name="fundingSource"
                  view="_minimal"/>
    </property>
    <property name="surveyStatusID"
              view="_minimal"/>
    <property name="reaches"
              view="_minimal">
        <property name="surveySites"
                  view="_minimal"/>
    </property>
</view>

Has there been view validation added to 6.8.0 that is generating this exception? Is it a bug?

I can probably hand code the changes I need to made in the views.xml file, but obviously I need a long term solution.

In fact this is happening on virtually every view I have with relationships.

I created another entity represented by the property compTests that is the same as the reaches property. I add the same properties including a composition to surveySites which is the same property I am trying to added to `reaches’.

The compTests>surveySites works, where as the reaches>surveySites throws the exception.

As far as I can see the compTests entity has the same properties and settings.

I would hate to create my entities from scratch, but in this instance creating an entity from scratch that mirrors my reaches entity seems to work.

<view class="gov.azgfd.fins.entity.FsSurvey"
      extends="_local"
      name="fsSurvey-testview">
    <property name="aZGFDProgramID"
              view="_minimal"/>
    <property name="surveyTypeID"
              view="_minimal"/>
    <property name="masterWaterbodyID"
              view="_minimal"/>
    <property name="devices"
              view="_minimal">
        <property name="surveyID"
                  view="_minimal"/>
        <property name="deviceStatus"
                  view="_minimal"/>
        <property name="validDeviceID"
                  view="_minimal"/>
    </property>
    <property name="species"
              view="_minimal"/>
    <property name="fundings"
              view="_minimal">
        <property name="fundingSource"
                  view="_minimal"/>
    </property>
    <property name="surveyStatusID"
              view="_minimal"/>
    <property name="reaches"
              view="_minimal">
    </property>
    <property name="compTests"
              view="_minimal">
        <property name="masterWaterbodySurveyReach"
                  view="_minimal"/>
        <property name="surveySites"
                  view="_minimal"/>
    </property>
</view>

I’m getting the same issue with lots of views

1 Like

I should also add that my Enterprise application is using Cuba as a backend administrative tool utilizing the Cuba rest API and synchronizes data two ways between Cuba and an iPad application. So what may seem cyclical in fact greatly simplifies my iPad code as I can have a master view with all my attributes containing relationships, that contain relationships etc. all in one JSON object sent to the iPad. I then process this JSON object knowing that certain attributes will containing a value even though it may be cyclical.

If this limitation becomes permanent, then I will be force to rewrite lots of iPad code (that was working prior to 6.8.0) or look at other solutions as this limitation is unreasonable.

This is duplicate for issue raised by me:

https://www.cuba-platform.com/discuss/t/error-in-studio-in-opening-some-views-post-upgrade-to-6-8-0/3528/8

It is already a acknowledged issue in Studio 6.8.0 and would be fixed in 6.8.1

2 Likes