PSDivTagCleanup error in log when publishing

Hi

We’re seeing this error when publishing but not to sure what it means. it mentions PSDivTagCleanup. Is this something to do with an ephox field?

Cheers
James

2008-06-16 16:57:23,479 WARN [PSProperty] Setting property to null as the interceptor threw an error 
java.lang.RuntimeException: java.lang.StringIndexOutOfBoundsException: String index out of range: -4 
at com.percussion.services.assembly.impl.PSDivTagCleanup.translate(Unknown Source) 
at com.percussion.utils.jsr170.PSProperty.init(Unknown Source) 
at com.percussion.services.contentmgr.data.PSContentNode.o00000(Unknown Source) 
at com.percussion.services.contentmgr.data.PSContentNode.getProperty(Unknown Source) 
at sun.reflect.GeneratedMethodAccessor148.invoke(Unknown Source) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
at java.lang.reflect.Method.invoke(Unknown Source) 
at org.apache.commons.jexl.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:232) 
at org.apache.commons.jexl.parser.ASTMethod.execute(ASTMethod.java:105) 
at org.apache.commons.jexl.parser.ASTReference.execute(ASTReference.java:83) 
at org.apache.commons.jexl.parser.ASTReference.value(ASTReference.java:57) 
at org.apache.commons.jexl.parser.ASTReferenceExpression.value(ASTReferenceExpression.java:51) 
at org.apache.commons.jexl.parser.ASTJexlScript.value(ASTJexlScript.java:58) 
at org.apache.commons.jexl.ScriptImpl.execute(ScriptImpl.java:48) 
at com.percussion.utils.jexl.PSJexlEvaluator.evaluate(Unknown Source) 
at com.percussion.utils.jexl.PSJexlEvaluator.evaluate(Unknown Source) 
at com.percussion.services.assembly.impl.PSAssemblyService.o00000(Unknown Source) 
at com.percussion.services.assembly.impl.PSAssemblyService.assemble(Unknown Source) 
at com.percussion.services.assembly.impl.PSAssemblyService.processServletRequest(Unknown Source) 
at sun.reflect.GeneratedMethodAccessor709.invoke(Unknown Source) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
at java.lang.reflect.Method.invoke(Unknown Source) 
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:318) 
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:198) 
at $Proxy88.processServletRequest(Unknown Source) 
at com.percussion.services.assembly.impl.PSAssemblyServlet.service(Unknown Source) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) 
at com.percussion.webdav.PSWebDavRequestFilter.doFilter(Unknown Source) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) 
at com.percussion.servlets.PSSecurityFilter.doFilter(Unknown Source) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) 
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) 
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) 
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) 
at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39) 
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:159) 
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59) 
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) 
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) 
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) 
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) 
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856) 
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744) 
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) 
at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112) 
at java.lang.Thread.run(Unknown Source) 
Caused by: java.lang.StringIndexOutOfBoundsException: String index out of range: -4 
at java.lang.String.substring(Unknown Source) 
... 52 more 
[ Show » ] James Brett - 17/Jun/08 09:37 AM error in log 2008-06-16 16:57:23,479 WARN [PSProperty] Setting property to null as the interceptor threw an error java.lang.RuntimeException: java.lang.StringIndexOutOfBoundsException: String index out of range: -4 at com.percussion.services.assembly.impl.PSDivTagCleanup.translate(Unknown Source) at com.percussion.utils.jsr170.PSProperty.init(Unknown Source) at com.percussion.services.contentmgr.data.PSContentNode.o00000(Unknown Source) at com.percussion.services.contentmgr.data.PSContentNode.getProperty(Unknown Source) at sun.reflect.GeneratedMethodAccessor148.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.apache.commons.jexl.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:232) at org.apache.commons.jexl.parser.ASTMethod.execute(ASTMethod.java:105) at org.apache.commons.jexl.parser.ASTReference.execute(ASTReference.java:83) at org.apache.commons.jexl.parser.ASTReference.value(ASTReference.java:57) at org.apache.commons.jexl.parser.ASTReferenceExpression.value(ASTReferenceExpression.java:51) at org.apache.commons.jexl.parser.ASTJexlScript.value(ASTJexlScript.java:58) at org.apache.commons.jexl.ScriptImpl.execute(ScriptImpl.java:48) at com.percussion.utils.jexl.PSJexlEvaluator.evaluate(Unknown Source) at com.percussion.utils.jexl.PSJexlEvaluator.evaluate(Unknown Source) at com.percussion.services.assembly.impl.PSAssemblyService.o00000(Unknown Source) at com.percussion.services.assembly.impl.PSAssemblyService.assemble(Unknown Source) at com.percussion.services.assembly.impl.PSAssemblyService.processServletRequest(Unknown Source) at sun.reflect.GeneratedMethodAccessor709.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:318) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:198) at $Proxy88.processServletRequest(Unknown Source) at com.percussion.services.assembly.impl.PSAssemblyServlet.service(Unknown Source) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.percussion.webdav.PSWebDavRequestFilter.doFilter(Unknown Source) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.percussion.servlets.PSSecurityFilter.doFilter(Unknown Source) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39) at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:159) at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112) at java.lang.Thread.run(Unknown Source) Caused by: java.lang.StringIndexOutOfBoundsException: String index out of range: -4 at java.lang.String.substring(Unknown Source) ... 52 more 

Hi

Upon further investigate it seems that it’s a problem when rendering a ephox field on a template where the value is

<div class="rxbodyfield"><p> </p></div>

The above happens if previously there was text but has since been removed. If the field has text or is null then the error doesn’t appear.

Where using 6.5.0 patched with RX-13223.

Are there any know issues?

Cheers
James

Hi

I’ve also getting the same issue on a 6.5.2 system (ephox version 6.3.1.51). I’ve checked the database on the content item the rxs_ct_shared.body field has a value of:

<div class="rxbodyfield" />

The error I get when rendering the template is:

Description
Problem processing div tag cleanup

Exception
String index out of range: -4

Cheers
James

Hi -

What did you mean by:

previously there was text but has since been removed

Do you know what steps were taken that caused the div tag to become empty?

Thanks,
Jay

Hi Jay

I’ve been doing some testing on how this value is achieved.

If I save my General (not based on FF) content type which uses the callout, descripion and body shared field with just entering the display and system title then a NULL value is inserted into the callout, description and body fields.

If I enter content into the callout, description and body fields then this content is saved

Using the design view if I remove all the text entered in the ephox fields and save then I get the following error:

  <?xml version="1.0" encoding="utf-8" ?> 
- <PSXLogErrorSet class="Back end update processing" host="localhost" port="9992" protocol="http" root="/Rhythmyx" rxroot="http://localhost:9992/Rhythmyx">
  <Error id="0">An error occurred processing the update submitted by session id c0eb5ff1c6c1463eabefc436af2e79b2adfbf562.</Error> 
  <Error id="1">java.lang.NullPointerException</Error> 
  <Error id="2">modify</Error> 
  </PSXLogErrorSet>

If I go into the source view and remove all the text (from all ephox fields)then save a NULL value is entered into the column.

This is using the 6.5.2 system (ephox version 6.3.1.51).

Hope this helps.

Cheers
James

James -

I think these issues should be logged with Tech Support - I don’t think they can be resolved in this forum.

Jay

Having the same problem.
What ended up being the issue?

I feel like I’ve been looking at this forever and after I made my last post figured out the problem.
It was user error. My error that is.
For me, the reason Preview worked and Publishing failed is because my autoslot was loading up templates with images that were in the initial “Draft” state and not published.
I moved them to public, published, and all is well.

Chad,

The customer logged an issue with Tech Support, but we were unable to reproduce it here at Percussion. I suggest you contact Tech Support with the details of your case.

RLJII