Bonjour,

Nous travaillons avec le build 15221 de Jahia 5.

Fréquemment nous avons l'erreur suivante, qui apparaît "spontanément" au bout 
de plusieurs chargements d'une page à laquelle nous avons ajouté des Containers 
dans un ContainerList de navigation (dont le code a été copié de celui fourni 
par Jahia) :


Erreur :

org.springframework.orm.hibernate3.HibernateObjectRetrievalFailureException: No 
row with the given identifier exists: 
[org.jahia.hibernate.model.JahiaFieldsDef#-2147483586]; nested exception is 
org.hibernate.ObjectNotFoundException: No row with the given identifier exists: 
[org.jahia.hibernate.model.JahiaFieldsDef#-2147483586]
org.hibernate.ObjectNotFoundException: No row with the given identifier exists: 
[org.jahia.hibernate.model.JahiaFieldsDef#-2147483586]


Code à la source de l'erreur (ligne en rouge) :

<content:declareContainerList name='navigationContainerList'
        title='@navigation.containerList' titleKey="navigation.containerList"
        bundleKey="<%=resBundleID%>">
        <content:declareContainer>
                <content:declareField name='navigationLinkField'
                        title='@navigation.navigationLinkField' type='Page'
                        titleKey="navigation.navigationLinkField"
                        bundleKey="<%=resBundleID%>" />
                <content:declareField name='navigationLinkDescription'
                        title='@navigation.navigationLinkDescription' 
type='SmallText'
                        titleKey="navigation.navigationLinkDescription"
                        bundleKey="<%=resBundleID%>" />
                <content:declareField name="navigationLinkExterne"
                        title='@navigation.navigationLinkExterne'
                        titleKey='navigation.navigationLinkExterne' 
type="Boolean"
                        bundleKey="<%=resBundleID%>" />
        </content:declareContainer>
</content:declareContainerList>


<%

JahiaContainerList topNavigationContainerList = 
jData.containers().getAbsoluteContainerList( "navigationContainerList", 
homePageId );
out.println("<div id=\"topmenu\">");
if(topNavigationContainerList!=null){
        Enumeration topNavigationContainers = 
topNavigationContainerList.getContainers();
        out.println("<ul class=\"menu_head\">");
        int nbMenu=0;
        while (topNavigationContainers.hasMoreElements()) {
            nbMenu++;
            JahiaContainer topNavigationContainer = (JahiaContainer) 
topNavigationContainers.nextElement();
            JahiaPage jNavigationLinkField = (JahiaPage) 
topNavigationContainer.getFieldObject("navigationLinkField");
            String linkDescription = (String) 
topNavigationContainer.getFieldValue("navigationLinkDescription");
          Boolean isLinkExterne = 
(Boolean)topNavigationContainer.getFieldObject("navigationLinkExterne");
            if (jNavigationLinkField != null) {
                out.println("<li id=\"menu"+nbMenu+"\" 
onmouseover=\"javascript:montre('smenu"+nbMenu+"','menu"+nbMenu+"');\"onmouseout=\"javascript:montre('','');\">");
               
                out.println("<a 
href=\""+jNavigationLinkField.getURL(jParams)+"\"");
                if(linkDescription!=null&&!"".equals(linkDescription)){
                out.print(" title=\""+linkDescription+"\"");
            }
                if(isLinkExterne != null && isLinkExterne.booleanValue()){
                        out.print(" target=\"new\"");
            }
                
out.println("><span>"+jNavigationLinkField.getTitle()+"</span></a>");
              if (isEditMode) {
                if 
(topNavigationContainer.getContentContainer().getPickedObject() == null) {
                    out.println("<div class=\"actions\">");
                    jData.gui().html().drawBeginActionMenu(new 
ContainerBean(topNavigationContainer,jParams),null, null, false, 
".navigationLink", "jahiatemplates.Clients_portal_templates", null, out);
                    out.println("</div>");
                }
            }
              out.println("</li>");
            }
     }
}
%>

Quelqu'un a-t-il une piste ?

Merci,

Antoine Taillefer
Smile - Levallois

Répondre à