Rx Publish Choking on non-breaking space

DB Publish is choking on non-breaking space (aka ). This is particularly strange because ephox is setting the ASCII values. You’d think ephox and rhythmyx publish would be sync’d up to handle this. And, if you attempt to modify &#160 to its html name (&nbsp) ephox reverts your change back to the numeric representation. Ephox should do this seeing how &nbsp is not valid xhtml… So, it seems the problem is with Rx publishing code. Is this db publish specific or does this happen with other types of publishing?

Has anyone experienced this problem? Does anyone know to get Rx to recognize as valid xhtml?

Oop! It appears some of my whitespace tags are being rendered as html tags…

Here is a repost where non-breaking space tags are missing a ;

DB Publish is choking on non-breaking space (aka &#160 ). This is particularly strange because ephox is setting the ASCII values. You’d think ephox and rhythmyx publish would be sync’d up to handle this. And, if you attempt to modify &#160 to its html name (nbsp) ephox reverts your change back to the numeric representation. Ephox should do this seeing how nbsp is not valid xhtml… So, it seems the problem is with Rx publishing code. Is this db publish specific or does this happen with other types of publishing?

Has anyone experienced this problem? Does anyone know to get Rx to recognize &#160 as valid xhtml?

Jonathan,

In what way is DB Publishing “choking”? Does the publishing fail for Content Items containing that character? If so, what error is being logged for the failure?

Can you preview the Content Items? If preview fails, what errors are you seeing?

RLJII

Yes, publish fails for content items containing non-breaking space characters. If I remove non-breaking space from content item publish is successful for that content item.

Below is the error log a content item w/ non-breaking space char

org.xml.sax.SAXParseException: Invalid byte 1 of 1-byte UTF-8 sequence.
at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)
at com.percussion.xml.PSXmlDocumentBuilder.createXmlDocument(Unknown Source)
at com.percussion.xml.PSXmlDocumentBuilder.createXmlDocument(Unknown Source)
at com.percussion.publisher.client.PSDatabasePublisherHandler.performAction(Unknown Source)
at com.percussion.publisher.client.PSDatabasePublisherHandler.publish(Unknown Source)
at com.percussion.publisher.client.PSContentItem.publish(Unknown Source)
at com.percussion.publisher.client.PSContentItem.process(Unknown Source)
at com.percussion.publisher.client.PSContentPublisher.process(Unknown Source)
at com.percussion.publisher.client.PSContentPublisher.execute(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.soap.server.RPCRouter.invoke(RPCRouter.java:146)
at org.apache.soap.providers.RPCJavaProvider.invoke(RPCJavaProvider.java:129)
at org.apache.soap.server.http.RPCRouterServlet.doPost(RPCRouterServlet.java:354)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
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 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)

Jonathan,

I think you need to contact Tech Support. This does not look to me like an issue we can debug effectively on the support forum.

RLJII

Thanks rljohnson.

I’ve contacted tech support and they recommend I change my db publish encoding to base64 for all rich text fields. I am hoping that fixes the problem.

For those of you with a similar problem, info on db publishing is in the Rx Implementation guide…“Rhythmyx_Implementation_Guide_Version_6_5_2.pdf”, which goes over database publishing in detail starting on page 357.
You may find the necessary bindings starting on page 379 to your database
publishing templates. Other notable pages are 416, 417, and 430.