[ https://issues.apache.org/jira/browse/OFBIZ-9200?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15852900#comment-15852900 ]
Jacques Le Roux commented on OFBIZ-9200: ---------------------------------------- Another workaround is to create classes to use the images and use these classes in fields widget-style attribute with a display using a description with only a space. But this is quite circonvoluted when image is there! > Form widget: the image element used in the field element does not work when > used with an existing field value > ------------------------------------------------------------------------------------------------------------- > > Key: OFBIZ-9200 > URL: https://issues.apache.org/jira/browse/OFBIZ-9200 > Project: OFBiz > Issue Type: Bug > Components: framework > Affects Versions: Release Branch 13.07, Release Branch 14.12, Trunk, > Release Branch 15.12, Release Branch 16.11 > Reporter: Jacques Le Roux > > When you use the image element with a field name of an existing field value a > fake chained request is weirdly called. This is true in both simple and > list/grid forms, I did not test multi but I guess it's the same. > For example if you add this line > bq. <field name="exampleName"><image > value="/images/defaultImage.jpg"/></field> > just after the line > bq. <field name="exampleName" title="${uiLabelMap.CommonName}" > sort-field="true"><display/></field> > in the ListExamples form you get as much as errors as there are examples, eg: > {code} > 2017-02-04 06:03:27,605 |http-nio-8443-exec-7 |ControlServlet > |E| Error in request handler: > org.apache.ofbiz.webapp.control.RequestHandlerException: Unknown request > [Example 1]; this request does not exist or cannot be called directly. > at > org.apache.ofbiz.webapp.control.RequestHandler.doRequest(RequestHandler.java:197) > ~[ofbiz.jar:?] > at > org.apache.ofbiz.webapp.control.ControlServlet.doGet(ControlServlet.java:210) > [ofbiz.jar:?] > at javax.servlet.http.HttpServlet.service(HttpServlet.java:687) > [javax.servlet-api-3.1.0.jar:3.1.0] > at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) > [javax.servlet-api-3.1.0.jar:3.1.0] > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292) > [tomcat-catalina-8.0.39.jar:8.0.39] > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207) > [tomcat-catalina-8.0.39.jar:8.0.39] > at > org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) > [tomcat-embed-websocket-8.0.39.jar:8.0.39] > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240) > [tomcat-catalina-8.0.39.jar:8.0.39] > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207) > [tomcat-catalina-8.0.39.jar:8.0.39] > at > org.apache.ofbiz.webapp.control.ContextFilter.doFilter(ContextFilter.java:209) > [ofbiz.jar:?] > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240) > [tomcat-catalina-8.0.39.jar:8.0.39] > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207) > [tomcat-catalina-8.0.39.jar:8.0.39] > at > org.apache.ofbiz.webapp.control.ControlFilter.doFilter(ControlFilter.java:156) > [ofbiz.jar:?] > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240) > [tomcat-catalina-8.0.39.jar:8.0.39] > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207) > [tomcat-catalina-8.0.39.jar:8.0.39] > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212) > [tomcat-catalina-8.0.39.jar:8.0.39] > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106) > [tomcat-catalina-8.0.39.jar:8.0.39] > at > org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502) > [tomcat-catalina-8.0.39.jar:8.0.39] > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141) > [tomcat-catalina-8.0.39.jar:8.0.39] > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79) > [tomcat-catalina-8.0.39.jar:8.0.39] > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88) > [tomcat-catalina-8.0.39.jar:8.0.39] > at > org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616) > [tomcat-catalina-8.0.39.jar:8.0.39] > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:509) > [tomcat-catalina-8.0.39.jar:8.0.39] > at > org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1104) > [tomcat-coyote-8.0.39.jar:8.0.39] > at > org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:684) > [tomcat-coyote-8.0.39.jar:8.0.39] > at > org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1520) > [tomcat-coyote-8.0.39.jar:8.0.39] > at > org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1476) > [tomcat-coyote-8.0.39.jar:8.0.39] > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) > [?:1.8.0_112] > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) > [?:1.8.0_112] > at > org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) > [tomcat-util-8.0.39.jar:8.0.39] > {code} > As you can see from the stack trace it's a tricky bug > A workaround is to use a non existing value as field name when you can, for > instance combined with an use-when. But of course this is not satisfactory > and you also can't use entry-name to bypass the issue. -- This message was sent by Atlassian JIRA (v6.3.15#6346)