Duplicated target screens in "Roles" standard screen

Hi, I’m facing this weird issue… when I open the Roles screen, and expand the Other screens node, at the bottom of the list I have a tons of duplicated “mainScreen” entries. This didn’t happen in 6.5 release, it started only after upgrading to 6.6.2

You can find a screenshot attached.

Thx for your support,
Paolo

Screen Shot 2017-09-04 at 20.10.45

Hi,
Unfortunately, we cannot reproduce the problem, so could you bring some details:
Is the problem persistent or does it occur from time to time?
Have you extended main window in your project?
Could you share the following sources from your project?

  1. web-app.properties (WEB module)
  2. web-menu.xml (WEB module)
  3. web-screens.xml (WEB module)
  4. screens.xml (GUI module)
    Regards.

Is the problem persistent or does it occur from time to time?

It seems persistent (on my dev machine) since 6.6.2. I haven’t noticed it before the upgrade, but maybe it was there before…

Have you extended main window in your project?

Yes, and I declared the “mainWindow” screen 3 times in web-screens.xml, one for each agent type:


    <screen id="mainWindow"
            agent="DESKTOP"
            template="it/nexbit/webschool/web/screens/ext-mainwindow.xml"/>
    <screen id="mainWindow"
            agent="PHONE"
            template="it/nexbit/webschool/web/screens/mobile-mainwindow.xml"/>
    <screen id="mainWindow"
            agent="TABLET"
            template="it/nexbit/webschool/web/screens/mobile-mainwindow.xml"/>

I attached the full file below… but I’d expect mainWindow displayed 3 times in roles screen, not 100… :wink:

web-app.properties:


###############################################################################
#                              Configuration                                  #
###############################################################################

cuba.springContextConfig = +it/nexbit/webschool/web-spring.xml

cuba.dispatcherSpringContextConfig = +it/nexbit/webschool/web-dispatcher-spring.xml

cuba.persistenceConfig = +it/nexbit/webschool/persistence.xml

cuba.metadataConfig = +it/nexbit/webschool/metadata.xml

cuba.viewsConfig = +it/nexbit/webschool/views.xml

cuba.windowConfig = +it/nexbit/webschool/web-screens.xml

cuba.menuConfig = +it/nexbit/webschool/web-menu.xml

cuba.permissionConfig = +it/nexbit/webschool/web-permissions.xml

cuba.mainMessagePack = +it.nexbit.webschool.web

cuba.anonymousSessionId = OMISSIS

cuba.creditsConfig = +

###############################################################################
#                                  Other                                      #
###############################################################################

# Middleware connection
cuba.connectionUrlList = http://localhost:8088/webschool-core

# Set to false if the middleware works on different JVM
cuba.useLocalServiceInvocation = true

cuba.webContextName = webschool

# Web session inactivity timeout in seconds
cuba.httpSessionExpirationTimeoutSec = 1800

cuba.web.theme = facebook
cuba.web.useFontIcons = true
cuba.themeConfig = havana-theme.properties halo-theme.properties facebook-theme.properties
cuba.web.foldersPaneEnabled = true
cuba.web.foldersPaneVisibleByDefault = false
# folder icons are missing in the halo theme -> change theme SCSS for better tree appearance
cuba.web.showFolderIcons = false
cuba.availableLocales = English|en;Italiano|it
cuba.localeSelectVisible = true
cuba.restApiUrl = http://localhost:8088/webschool-portal/api
cuba.webAppUrl = http://localhost:8088/webschool
cuba.webPort = 8088

web-menu.xml


<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<menu-config xmlns="http://schemas.haulmont.com/cuba/menu.xsd">
    <menu id="application-webschool"
          insertBefore="administration">
        <item screen="webschool$Section.browse"/>
        <item screen="webschool$Teacher.browse"/>
        <item screen="webschool$Student.browse"/>
        <item screen="webschool$Caregiver.browse"/>
        <separator/>
        <item screen="webschool$TeacherType.browse"/>
        <item screen="webschool$AppointmentType.browse"/>
        <separator/>
        <item screen="webschool$AppointmentSlot.browse"/>
        <item screen="webschool$AppointmentSlot.calendar"/>
    </menu>
</menu-config>

web-screens.xml


<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<screen-config xmlns="http://schemas.haulmont.com/cuba/screens.xsd">
    <include file="it/nexbit/webschool/screens.xml"/>
    <screen id="webschool$Section.browse"
            agent="DESKTOP"
            template="it/nexbit/webschool/web/section/composite-section-browse.xml"/>
    <screen id="webschool$Section.browse"
            agent="TABLET"
            template="it/nexbit/webschool/web/section/section-browse.xml"/>
    <screen id="webschool$Section.browse"
            agent="PHONE"
            template="it/nexbit/webschool/web/section/section-browse.xml"/>
    <screen id="webschool$Grade.edit"
            template="it/nexbit/webschool/web/grade/grade-edit.xml"/>
    <screen id="webschool$Student.browse"
            agent="DESKTOP"
            template="it/nexbit/webschool/web/student/composite-student-browse.xml"/>
    <screen id="webschool$Student.browse"
            agent="TABLET"
            template="it/nexbit/webschool/web/student/student-browse.xml"/>
    <screen id="webschool$Student.browse"
            agent="PHONE"
            template="it/nexbit/webschool/web/student/student-browse.xml"/>
    <screen id="webschool$Student.lookup"
            template="it/nexbit/webschool/web/student/student-lookup.xml"/>
    <screen id="webschool$Student.edit"
            template="it/nexbit/webschool/web/student/student-edit.xml"/>
    <screen id="webschool$Teacher.lookup"
            template="it/nexbit/webschool/web/teacher/teacher-lookup.xml"/>
    <screen id="webschool$TeacherType.browse"
            agent="DESKTOP"
            template="it/nexbit/webschool/web/teachertype/composite-teacher-type-browse.xml"/>
    <screen id="webschool$TeacherType.browse"
            agent="TABLET"
            template="it/nexbit/webschool/web/teachertype/teacher-type-browse.xml"/>
    <screen id="webschool$TeacherType.browse"
            agent="PHONE"
            template="it/nexbit/webschool/web/teachertype/teacher-type-browse.xml"/>
    <screen id="webschool$TeacherType.edit"
            template="it/nexbit/webschool/web/teachertype/teacher-type-edit.xml"/>
    <screen id="webschool$Teacher.browse"
            agent="DESKTOP"
            template="it/nexbit/webschool/web/teacher/composite-teacher-browse.xml"/>
    <screen id="webschool$Teacher.browse"
            agent="TABLET"
            template="it/nexbit/webschool/web/teacher/teacher-browse.xml"/>
    <screen id="webschool$Teacher.browse"
            agent="PHONE"
            template="it/nexbit/webschool/web/teacher/teacher-browse.xml"/>
    <screen id="webschool$Teacher.edit"
            template="it/nexbit/webschool/web/teacher/teacher-edit.xml"/>
    <screen id="webschool$Grade.lookup"
            template="it/nexbit/webschool/web/grade/grade-lookup.xml"/>
    <screen id="webschool$Caregiver.lookup"
            template="it/nexbit/webschool/web/caregiver/caregiver-lookup.xml"/>
    <screen id="webschool$Caregiver.browse"
            agent="DESKTOP"
            template="it/nexbit/webschool/web/caregiver/composite-caregiver-browse.xml"/>
    <screen id="webschool$Caregiver.browse"
            agent="TABLET"
            template="it/nexbit/webschool/web/caregiver/caregiver-browse.xml"/>
    <screen id="webschool$Caregiver.browse"
            agent="PHONE"
            template="it/nexbit/webschool/web/caregiver/caregiver-browse.xml"/>
    <screen id="webschool$Caregiver.edit"
            template="it/nexbit/webschool/web/caregiver/caregiver-edit.xml"/>
    <screen id="webschool$AppointmentType.browse"
            agent="DESKTOP"
            template="it/nexbit/webschool/web/appointmenttype/composite-appointment-type-browse.xml"/>
    <screen id="webschool$AppointmentType.browse"
            agent="TABLET"
            template="it/nexbit/webschool/web/appointmenttype/appointment-type-browse.xml"/>
    <screen id="webschool$AppointmentType.browse"
            agent="PHONE"
            template="it/nexbit/webschool/web/appointmenttype/appointment-type-browse.xml"/>
    <screen id="webschool$AppointmentType.edit"
            template="it/nexbit/webschool/web/appointmenttype/appointment-type-edit.xml"/>
    <screen id="entityRestore"
            template="it/nexbit/webschool/web/screens/ext-entity-restore.xml"/>
    <screen id="webschool$AppointmentType.lookup"
            template="it/nexbit/webschool/web/appointmenttype/appointment-type-lookup.xml"/>
    <screen id="webschool$AppointmentSlot.browse"
            agent="DESKTOP"
            template="it/nexbit/webschool/web/appointmentslot/composite-appointment-slot-browse.xml"/>
    <screen id="webschool$AppointmentSlot.browse"
            agent="TABLET"
            template="it/nexbit/webschool/web/appointmentslot/appointment-slot-browse.xml"/>
    <screen id="webschool$AppointmentSlot.browse"
            agent="PHONE"
            template="it/nexbit/webschool/web/appointmentslot/appointment-slot-browse.xml"/>
    <screen id="webschool$AppointmentSlot.edit"
            template="it/nexbit/webschool/web/appointmentslot/appointment-slot-edit.xml"/>
    <screen id="webschool$AppointmentSlot.calendar"
            template="it/nexbit/webschool/web/appointmentslot/appointment-slot-calendar.xml"/>
    <screen id="mainWindow"
            agent="DESKTOP"
            template="it/nexbit/webschool/web/screens/ext-mainwindow.xml"/>
    <screen id="mainWindow"
            agent="PHONE"
            template="it/nexbit/webschool/web/screens/mobile-mainwindow.xml"/>
    <screen id="mainWindow"
            agent="TABLET"
            template="it/nexbit/webschool/web/screens/mobile-mainwindow.xml"/>
    <screen id="webschool$Section.edit"
            template="it/nexbit/webschool/web/section/section-edit.xml"/>
    <screen id="createAppointmentSlotSerie"
            template="it/nexbit/webschool/web/appointmentslot/appointment-slot-create-multiple.xml"/>
    <screen id="webschool$TeacherType.lookup"
            template="it/nexbit/webschool/web/teachertype/teacher-type-lookup.xml"/>
</screen-config>

screens.xml is empty…

Thx
Paolo

The sources helped us. Thank you.
The link to the related YouTrack issue is on the right.

Hi, tested the fix and working fine.

You can mark as resolved…

Thx
Paolo

:ticket: See the following issue in our bug tracker:

https://youtrack.cuba-platform.com/issue/PL-9659