Problem with Images in the CMS

Hello,

All of a sudden images in the CMS started throwing 500 response time error. Which slowed down the website because the image links are broken. I am not really sure what caused the problem. Website was fine till yesterday. Below is the Network header:

  1. Request URL:

https://www.libraryjournal.com/cms/?1-IResourceListener-root-tabs-panel~container-cards-2-panel-left-documents-extension.list-table-body-rows-2-cells-1-cell-renderer-streamIcon&w:lm=1537890744&h:pathmd=1f312319647c4e5a2828adf3cb450569

  1. Request Method:
    GET

  2. Status Code:
    500

  3. Remote Address:
    35.168.183.117:443

  4. Referrer Policy:
    no-referrer-when-downgrade

Any ideas or inputs? Please help.

Thanks,
RK

The problem seems to go away after restarting the server but still not sure what exactly the issue was. Any idea what the issue could be?

Any exceptions or error logs in tomcat/logs/hippo-cms.log?

Woonsan

I see a lot of below warnings which is increasing the size of the log file.

27.09.2018 20:15:32 WARN http-nio-8080-exec-39 [HippoMirror.getReferencedBean:82] Cannot get a dereferenced HippoBean, return null

Is there a way to suppress this warning and fill up my space?

Could you copy and paste the stacktrace after the log line? I guess you must have seen stack traces from a javax.jcr.RepositoryException there.

Woonsan

Below is the stacktrace and yes the same exception.

27.09.2018 20:15:32 WARN http-nio-8080-exec-39 [HippoMirror.getReferencedBean:82] Cannot get a dereferenced HippoBean, return null
javax.jcr.RepositoryException: invalid identifier: /content/documents/Jlibrary/author-bio/Neal Wyatt
at org.apache.jackrabbit.core.SessionImpl.getNodeByIdentifier(SessionImpl.java:1144) ~[?:?]
at org.hippoecm.repository.decorating.SessionDecorator.getNodeByIdentifier(SessionDecorator.java:348) ~[hippo-repository-connector-5.2.0.jar:5.2.0]
at org.hippoecm.hst.content.beans.standard.HippoMirror.getReferencedBean(HippoMirror.java:61) [hst-content-beans-5.2.0.jar:5.2.0]
at org.hippoecm.hst.content.beans.standard.HippoItem.getLinkedBeans(HippoItem.java:448) [hst-content-beans-5.2.0.jar:5.2.0]
at com.hippo.library.beans.Article.getAuthorBio(Article.java:130) [classes/:0.1.0-SNAPSHOT]
at sun.reflect.GeneratedMethodAccessor252.invoke(Unknown Source) ~[?:?]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_171]
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_171]
at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:1458) [freemarker-2.3.24-incubating.jar:2.3.24]
at freemarker.ext.beans.BeanModel.invokeThroughDescriptor(BeanModel.java:236) [freemarker-2.3.24-incubating.jar:2.3.24]
at freemarker.ext.beans.BeanModel.get(BeanModel.java:154) [freemarker-2.3.24-incubating.jar:2.3.24]
at freemarker.core.Dot._eval(Dot.java:43) [freemarker-2.3.24-incubating.jar:2.3.24]
at freemarker.core.Expression.eval(Expression.java:81) [freemarker-2.3.24-incubating.jar:2.3.24]
at freemarker.core.ExistsExpression._eval(ExistsExpression.java:49) [freemarker-2.3.24-incubating.jar:2.3.24]
at freemarker.core.Expression.eval(Expression.java:81) [freemarker-2.3.24-incubating.jar:2.3.24]
at freemarker.core.Expression.evalToBoolean(Expression.java:145) [freemarker-2.3.24-incubating.jar:2.3.24]
at freemarker.core.Expression.evalToBoolean(Expression.java:131) [freemarker-2.3.24-incubating.jar:2.3.24]
at freemarker.core.ConditionalBlock.accept(ConditionalBlock.java:48) [freemarker-2.3.24-incubating.jar:2.3.24]
at freemarker.core.Environment.visit(Environment.java:362) [freemarker-2.3.24-incubating.jar:2.3.24]
at freemarker.core.IteratorBlock$IterationContext.executeNestedContent(IteratorBlock.java:239) [freemarker-2.3.24-incubating.jar:2.3.24]
at freemarker.core.IteratorBlock$IterationContext.accept(IteratorBlock.java:200) [freemarker-2.3.24-incubating.jar:2.3.24]
at freemarker.core.Environment.visitIteratorBlock(Environment.java:595) [freemarker-2.3.24-incubating.jar:2.3.24]
at freemarker.core.IteratorBlock.acceptWithResult(IteratorBlock.java:81) [freemarker-2.3.24-incubating.jar:2.3.24]
at freemarker.core.IteratorBlock.accept(IteratorBlock.java:67) [freemarker-2.3.24-incubating.jar:2.3.24]
at freemarker.core.Environment.visit(Environment.java:326) [freemarker-2.3.24-incubating.jar:2.3.24]
at freemarker.core.Environment.visit(Environment.java:332) [freemarker-2.3.24-incubating.jar:2.3.24]
at freemarker.core.Environment.visit(Environment.java:332) [freemarker-2.3.24-incubating.jar:2.3.24]
at freemarker.core.Environment.include(Environment.java:2505) [freemarker-2.3.24-incubating.jar:2.3.24]

Actually we are trying have an article linked with an author bio but the later is not present in the CMS yet. The articles are being imported from wordpress site but the author bio are still not imported.We will be importing author bio eventually but I am not sure if that would restore the link between the article and author bio.

Is there a way to suppress this warning? Or any other way to deal with this?

Thanks for responding.

RK

The problem is that you have hippo:docbase string property for the hippo:mirror node (you can actually see it through CMS Console) with a path, not UUID. It must have UUID, not a path. So, it has to throw the exception.

I suppose you imported content using a tool such as Content-EXIM, using some groovy scripts like [1].
If so, don’t forget to clean up the interim mirror hippo:docbase properties or string docbase field by groovy scripts afterward. e.g. “Example_Clean_Hippo_Mirror_Docbase_Values_Having_Paths” [2]. Otherwise, your imported content remains with some invalid, interim path strings where a corresponding, valid UUID must be placed.
See [3] as well on why Content-EXIM uses interim path strings while importing.

Woonsan

[1] https://onehippo-forge.github.io/content-export-import/index.html#Example_Groovy_Updater_Scripts_using_the_Task_Components
[2] The “Example_Clean_Hippo_Mirror_Docbase_Values_Having_Paths” script is very generic enough, so you can just execute it and verify the content.
[3] https://onehippo-forge.github.io/content-export-import/index.html#Keep_it_simple_stupid