[ 
https://issues.apache.org/jira/browse/OFBIZ-5312?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14229153#comment-14229153
 ] 

Josip Almasi commented on OFBIZ-5312:
-------------------------------------

:)
That would surelly be already spotted.
Obviously something is wrong with my data.

Is there a way to migrate 13.07 data to SEO branch?

In the meantime, here's stacktrace of the thread eating up CPU:

     [java] "http-bio-8080-exec-1" daemon prio=10 tid=0x00007fbd1c033800 
nid=0x2fe8 runnable [0x00007fbd6f2a4000]
     [java]    java.lang.Thread.State: RUNNABLE
     [java]     at org.ofbiz.entity.GenericEntity.get(GenericEntity.java:372)
     [java]     at 
org.ofbiz.entity.GenericEntity.getString(GenericEntity.java:679)
     [java]     at 
org.ofbiz.content.webapp.ftl.LimitedSubContentCacheTransform$1.getRandomEntity(LimitedSubContentCacheTransform.java:308)
     [java]     at 
org.ofbiz.content.webapp.ftl.LimitedSubContentCacheTransform$1.getNextMatchingEntity(LimitedSubContentCacheTransform.java:321)
     [java]     at 
org.ofbiz.content.webapp.ftl.LimitedSubContentCacheTransform$1.afterBody(LimitedSubContentCacheTransform.java:213)
     [java]     at 
freemarker.core.Environment.visitAndTransform(Environment.java:371)
     [java]     at freemarker.core.UnifiedCall.accept(UnifiedCall.java:104)
     [java]     at freemarker.core.Environment.visit(Environment.java:257)
     [java]     at freemarker.core.MixedContent.accept(MixedContent.java:57)
     [java]     at freemarker.core.Environment.visit(Environment.java:257)
     [java]     at freemarker.core.Environment.process(Environment.java:235)
     [java]     at 
org.ofbiz.base.util.template.FreeMarkerWorker.renderTemplate(FreeMarkerWorker.java:256)
     [java]     at 
org.ofbiz.widget.screen.HtmlWidget.renderHtmlTemplate(HtmlWidget.java:157)
     [java]     at 
org.ofbiz.widget.screen.HtmlWidget$HtmlTemplate.renderWidgetString(HtmlWidget.java:202)
     [java]     at 
org.ofbiz.widget.screen.HtmlWidget.renderWidgetString(HtmlWidget.java:130)
     [java]     at 
org.ofbiz.widget.screen.ModelScreenWidget$PlatformSpecific.renderWidgetString(ModelScreenWidget.java:1100)
     [java]     at 
org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:103)
     [java]     at 
org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:270)
     [java]     at 
org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:164)
     [java]     at 
org.ofbiz.widget.screen.ScreenFactory.renderReferencedScreen(ScreenFactory.java:210)
     [java]     at 
org.ofbiz.widget.screen.ModelScreenWidget$IncludeScreen.renderWidgetString(ModelScreenWidget.java:695)
     [java]     at 
org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:103)
     [java]     at 
org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:270)
     [java]     at 
org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:164)
     [java]     at 
org.ofbiz.widget.screen.ScreenFactory.renderReferencedScreen(ScreenFactory.java:210)
     [java]     at 
org.ofbiz.widget.screen.ModelScreenWidget$IncludeScreen.renderWidgetString(ModelScreenWidget.java:695)
     [java]     at 
org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:103)
     [java]     at 
org.ofbiz.widget.screen.ModelScreenWidget$Container.renderWidgetString(ModelScreenWidget.java:423)
     [java]     at 
org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:103)
     [java]     at 
org.ofbiz.widget.screen.ModelScreenWidget$Container.renderWidgetString(ModelScreenWidget.java:423)
     [java]     at 
org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:103)
     [java]     at 
org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:270)
     [java]     at 
org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:103)
     [java]     at 
org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:270)
     [java]     at 
org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:164)
     [java]     at 
org.ofbiz.widget.screen.ScreenFactory.renderReferencedScreen(ScreenFactory.java:210)
     [java]     at 
org.ofbiz.widget.screen.ModelScreenWidget$DecoratorScreen.renderWidgetString(ModelScreenWidget.java:763)
     [java]     at 
org.ofbiz.widget.screen.ModelScreenWidget.renderSubWidgetsString(ModelScreenWidget.java:103)
     [java]     at 
org.ofbiz.widget.screen.ModelScreenWidget$Section.renderWidgetString(ModelScreenWidget.java:270)
     [java]     at 
org.ofbiz.widget.screen.ModelScreen.renderScreenString(ModelScreen.java:164)
     [java]     at 
org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:133)
     [java]     at 
org.ofbiz.widget.screen.ScreenRenderer.render(ScreenRenderer.java:95)
     [java]     at 
org.ofbiz.widget.screen.MacroScreenViewHandler.render(MacroScreenViewHandler.java:97)
     [java]     at 
org.ofbiz.webapp.control.RequestHandler.renderView(RequestHandler.java:987)
     [java]     at 
org.ofbiz.webapp.control.RequestHandler.doRequest(RequestHandler.java:674)
     [java]     at 
org.ofbiz.webapp.control.ControlServlet.doGet(ControlServlet.java:210)
     [java]     at 
org.ofbiz.product.category.SeoControlServlet.doGet(SeoControlServlet.java:85)
     [java]     at javax.servlet.http.HttpServlet.service(HttpServlet.java:620)
     [java]     at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
     [java]     at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
     [java]     at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
     [java]     at 
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:748)
     [java]     at 
org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:486)
     [java]     at 
org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:411)
     [java]     at 
org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:338)
     [java]     at 
org.ofbiz.product.category.SeoContextFilter.doFilter(SeoContextFilter.java:255)
     [java]     at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
     [java]     at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
     [java]     at 
org.ofbiz.product.category.SeoContentUrlFilter.doFilter(SeoContentUrlFilter.java:107)
     [java]     at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
     [java]     at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
     [java]     at 
org.ofbiz.product.category.CatalogUrlFilter.doFilter(CatalogUrlFilter.java:336)
     [java]     at 
org.ofbiz.product.category.CatalogUrlSeoFilter.doFilter(CatalogUrlSeoFilter.java:68)
     [java]     at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
     [java]     at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
     [java]     at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
     [java]     at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
     [java]     at 
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:503)
     [java]     at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
     [java]     at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
     [java]     at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
     [java]     at 
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
     [java]     at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421)
     [java]     at 
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1070)
     [java]     at 
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
     [java]     at 
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:314)
     [java]     - locked <0x00000000e6054538> (a 
org.apache.tomcat.util.net.SocketWrapper)
     [java]     at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
     [java]     at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
     [java]     at 
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
     [java]     at java.lang.Thread.run(Thread.java:744)


> Proposal: URL-Generation Changes (mostly for SEO reasons but not only)
> ----------------------------------------------------------------------
>
>                 Key: OFBIZ-5312
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-5312
>             Project: OFBiz
>          Issue Type: New Feature
>          Components: specialpurpose/ecommerce
>    Affects Versions: Trunk
>            Reporter: Jacques Le Roux
>            Assignee: Jacques Le Roux
>            Priority: Minor
>              Labels: changes, ecommerce, friendly, seo, url
>         Attachments: OFBIZ-5312 - ofbiz-ecommerce-seo.patch, OFBIZ-5312 - 
> ofbiz-ecommerce-seo.patch, OFBIZ-5312 - ofbiz-ecommerce-seo.patch, OFBIZ-5312 
> - ofbiz-ecommerce-seo.patch, OFBIZ-5312 - ofbiz-ecommerce-seo.patch, 
> OFBIZ-5312 - ofbiz-ecommerce-seo.patch, OFBIZ-5312 - 
> ofbiz-ecommerce-seo.patch, OFBIZ-5312 - ofbiz-ecommerce-seo.patch, OFBIZ-5312 
> - ofbiz-ecommerce-seo.patch, OFBIZ-5312 - ofbiz-ecommerce-seo.patch, 
> OFBIZ-5312 - ofbiz-ecommerce-seo.patch, OFBIZ-5312 - 
> ofbiz-ecommerce-seo.patch, 
> OFBiz-5312-allowpaths-email-jsp-patch-20140625.patch, 
> OFBiz-5312-product-ecommerce-seo-20131031.patch, 
> OFBiz-5312-product-ecommerce-seo-for-seo-branch.patch, 
> OFBiz-5312-product-ecommerce-seo.patch, SeoContextFilter.java.patch, 
> classloaderpatch.txt
>
>
> [This was proposed by Paul Piper in Nabble 7 months 
> ago|http://ofbiz.135035.n4.nabble.com/Proposal-URL-Generation-Changes-td4639289.html].
>  Here is quoted Paul's proposal
> {quote}
> Hey Everyone,
> over at ilscipio (www.ilscipio.com) we developed a set of functional OFBiz 
> changes that we believe the entire community could benefit from. The changes 
> have been implemented in parts in Syracus (www.syracus.net) for a while now, 
> but we figured that some of which are too crucial for ofbiz' success in the 
> long run, so we are considering the contribution (as we did with the SOLR 
> component).
> As you are probably aware, OFBiz has a pretty uncommon way of generating 
> URLs. Most of this has to do with the fact that OFBiz uses a servlet 
> (ControlServlet)  to handle all requests. The servlet is mounted at /control, 
> so that it won't interfere with other servlets. Though functionally valid, 
> this has the sideeffect that all urls are actually created on /control, which 
> is neither pretty, nor good by any measures of SEO. It also means that a few 
> 302 redirects are necessary to forward the user from / to /control/main. It 
> also makes requests more complicated, since many forwards are necessary 
> whenever somebody wants to move away from this implementation.
> Since this is hurtful to many of the implementers, I wanted to discuss 
> whether or not you guys would be interested in the changes we have made. The 
> functional changes contain:
> * Removal of /control out of all the urls
> * SEO-friendly URLS
> * Configurable product/category and other URLs
> * Frontpage mapping from /main to /
> It was tested on our end and contains all necessary improvements (Transforms, 
> Sample Configuration, Servlets & Filters) for it to be applicable.
> If interested, I would create a new JIRA ticket for this and after a few 
> minor internal discussions, we will gladly provide the rest of you with it.
> Regards,
> Paul 
> {quote}
> There is even a patch, mostly done by Jinghai Shi, that I attach here. Even 
> if it has been already used in [Syracus|http://syracus.net/] since early this 
> year, some help would be needed to test it thoroughly in OFBiz.
> Then we should discuss if it's the way to go. I believe it is. Who needs a 
> /control/ or /main by default in ecommerce urls? Would you not prefer 
> http://localhost:8080/ecommerce/ over 
> http://localhost:8080/ecommerce/control/main ?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to