Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
Clear All
new posts

    #16
    Compass is invoked when you save a skin in the Skin Editor. The DataSource operation involved executes a server method that shells the command-line "compass compile <path-to-skin-template-dir>".

    Assuming Compass is in your PATH, all should be well - you can test that by just running "compass" on your Linux command-line - if it's found, it should work from Skin Editor as well.

    We'll add some of this information to the docs.

    Comment


      #17
      Originally posted by Isomorphic View Post

      This appears to be because one section of our code wasn't expecting an IPv6 address. We're looking into it, but in the meantime can you hit the server from an IPv4 address?
      We've removed the JAR dependency incompatible with IPv6 so you may want to try using the Skin Editor again.

      Comment


        #18
        I added the built-in-ds project to my workspace.

        I 'Navigated' to the http://IP:port//builtinds/tools/skin...skinEditor.jsp and the Skin Editor came up.

        I input a new Skin name, NewSkin and clicked the create and edit skin button. This is the result:

        Code:
        === 2020-08-13 11:42:35,664 [4-64] INFO  Compression - /builtinds/sc/IDACall: 334.0k -> 40.1k
        === 2020-08-13 11:42:36,218 [4-70] INFO  RequestContext - URL: '/builtinds/sc/IDACall', User-Agent: 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36': Safari with Accept-Encoding header
        === 2020-08-13 11:42:36,221 [4-70] ERROR ISCHttpServletRequest - getParameter()
        java.lang.IllegalStateException: Form too large: 783833 > 200000
            at org.eclipse.jetty.server.Request.extractFormParameters(Request.java:365)
            at org.eclipse.jetty.server.Request.extractContentParameters(Request.java:303)
            at org.eclipse.jetty.server.Request.extractParameters(Request.java:257)
            at org.eclipse.jetty.server.Request.getParameterNames(Request.java:854)
            at com.isomorphic.servlet.ServletTools.paramsToMap(ServletTools.java:151)
            at com.isomorphic.servlet.ISCHttpServletRequest.getStringParams(ISCHttpServletRequest.java:136)
            at com.isomorphic.servlet.ISCHttpServletRequest.getParameter(ISCHttpServletRequest.java:359)
            at com.isomorphic.rpc.RPCManager.parseRequest(RPCManager.java:2465)
            at com.isomorphic.rpc.RPCManager.<init>(RPCManager.java:398)
            at com.isomorphic.rpc.RPCManager.<init>(RPCManager.java:378)
            at com.isomorphic.servlet.IDACall.processRequest(IDACall.java:147)
            at com.isomorphic.servlet.IDACall._processRequest(IDACall.java:119)
            at com.isomorphic.servlet.IDACall.doPost(IDACall.java:79)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:648)
            at com.isomorphic.servlet.BaseServlet.service(BaseServlet.java:178)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
            at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:812)
            at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1669)
            at com.isomorphic.servlet.CompressionFilter._doFilter(CompressionFilter.java:263)
            at com.isomorphic.servlet.BaseFilter.doFilter(BaseFilter.java:91)
            at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
            at org.eclipse.jetty.websocket.server.WebSocketUpgradeFilter.doFilter(WebSocketUpgradeFilter.java:224)
            at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
            at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
            at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
            at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)
            at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
            at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
            at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
            at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
            at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
            at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
            at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
            at org.eclipse.jetty.server.handler.RequestLogHandler.handle(RequestLogHandler.java:95)
            at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
            at org.eclipse.jetty.server.Server.handle(Server.java:499)
            at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311)
            at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
            at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544)
            at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
            at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
            at java.lang.Thread.run(Thread.java:748)
        === 2020-08-13 11:42:36,226 [4-70] WARN  RPCManager - Unexpected empty RPCManager transaction: POST'd data appears to have been removed from the request before the server framework received it. This may be due to application / server settings restricting maximum POST / file upload size, or due to security software on your server, browser or network that erroneously blocked the request, or due to bugs in servlet filters.  Please see the documentation for isc.RPCResponse.STATUS_MAX_POST_SIZE_EXCEEDED
        === 2020-08-13 11:42:36,227 [4-70] INFO  Compression - /builtinds/sc/IDACall: 104 -> 112
        === 2020-08-13 11:42:36,293 [4-66] INFO  RequestContext - URL: '/builtinds/tools/skinTools//images/create.png', User-Agent: 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36': Safari with Accept-Encoding header
        [WARN] 404 - GET /builtinds/tools/skinTools//images/create.png (10.230.9.204) 328 bytes
           Request headers
              Host: 10.75.224.44:8877
              Connection: keep-alive
              User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36
              Accept: image/webp,image/apng,image/*,*/*;q=0.8
              Referer: http://10.75.224.44:8877/builtinds/tools/skinTools/skinEditor.jsp
              Accept-Encoding: gzip, deflate
              Accept-Language: en-US,en;q=0.9
              Cookie: isc_cState=ready; GLog=%7B%0A%20%20%20%20trackRPC%3Atrue%2C%20%0A%20%20%20%20isc_pageURL%3A%22http%3A//10.75.224.44%3A8827/beer/tools/skinTools/skinEditor.jsp%22%2C%20%0A%20%20%20%20isc_pageGUID%3A%22906EC2EC-0776-4591-AB42-CCA95610F606%22%2C%20%0A%20%20%20%20priorityDefaults%3A%7B%0A%20%20%20%20%20%20%20%20sgwtInternal%3A1%2C%20%0A%20%20%20%20%20%20%20%20Log%3A4%2C%20%0A%20%20%20%20%20%20%20%20ResultSet%3A3%2C%20%0A%20%20%20%20%20%20%20%20%22New%20Category%22%3A3%2C%20%0A%20%20%20%20%20%20%20%20ResultTree%3A3%0A%20%20%20%20%7D%2C%20%0A%20%20%20%20defaultPriority%3A3%2C%20%0A%20%20%20%20left%3A468%2C%20%0A%20%20%20%20top%3A237%2C%20%0A%20%20%20%20width%3A1854%2C%20%0A%20%20%20%20height%3A857%0A%7D; JSESSIONID=1cd6swf82ywl51xu1gg6nrpt9a
           Response headers
              Date: Thu, 13 Aug 2020 18:42:36 GMT
              Content-Type: text/html; charset=ISO-8859-1
              Cache-Control: must-revalidate,no-cache,no-store
              Content-Length: 328
        === 2020-08-13 11:42:41,805 [4-54] INFO  RequestContext - URL: '/builtinds/sc/skins/Tahoe/images/Dialog/warn.png', User-Agent: 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36': Safari with Accept-Encoding header
        === 2020-08-13 11:42:41,807 [4-69] INFO  RequestContext - URL: '/builtinds/sc/skins/Tahoe/images/headerIcons/close.png', User-Agent: 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36': Safari with Accept-Encoding header
        === 2020-08-13 11:42:41,808 [4-54] INFO  Download - done streaming: /projects/BEER_APP1/users/oconnor/CleanTrunk/eclipse/ISO_built-in-ds/war/builtinds/sc/skins/Tahoe/images/Dialog/warn.png
        === 2020-08-13 11:42:41,809 [4-69] INFO  Download - done streaming: /projects/BEER_APP1/users/oconnor/CleanTrunk/eclipse/ISO_built-in-ds/war/builtinds/sc/skins/Tahoe/images/headerIcons/close.png
        === 2020-08-13 11:42:43,059 [4-70] INFO  RequestContext - URL: '/builtinds/tools/skinTools//images/create.png', User-Agent: 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36': Safari with Accept-Encoding header
        [WARN] 404 - GET /builtinds/tools/skinTools//images/create.png (10.230.9.204) 328 bytes
           Request headers
              Host: 10.75.224.44:8877
              Connection: keep-alive
              User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36
              Accept: image/webp,image/apng,image/*,*/*;q=0.8
              Referer: http://10.75.224.44:8877/builtinds/tools/skinTools/skinEditor.jsp
              Accept-Encoding: gzip, deflate
              Accept-Language: en-US,en;q=0.9
              Cookie: isc_cState=ready; GLog=%7B%0A%20%20%20%20trackRPC%3Atrue%2C%20%0A%20%20%20%20isc_pageURL%3A%22http%3A//10.75.224.44%3A8827/beer/tools/skinTools/skinEditor.jsp%22%2C%20%0A%20%20%20%20isc_pageGUID%3A%22906EC2EC-0776-4591-AB42-CCA95610F606%22%2C%20%0A%20%20%20%20priorityDefaults%3A%7B%0A%20%20%20%20%20%20%20%20sgwtInternal%3A1%2C%20%0A%20%20%20%20%20%20%20%20Log%3A4%2C%20%0A%20%20%20%20%20%20%20%20ResultSet%3A3%2C%20%0A%20%20%20%20%20%20%20%20%22New%20Category%22%3A3%2C%20%0A%20%20%20%20%20%20%20%20ResultTree%3A3%0A%20%20%20%20%7D%2C%20%0A%20%20%20%20defaultPriority%3A3%2C%20%0A%20%20%20%20left%3A468%2C%20%0A%20%20%20%20top%3A237%2C%20%0A%20%20%20%20width%3A1854%2C%20%0A%20%20%20%20height%3A857%0A%7D; JSESSIONID=1cd6swf82ywl51xu1gg6nrpt9a
           Response headers
              Date: Thu, 13 Aug 2020 18:42:43 GMT
              Content-Type: text/html; charset=ISO-8859-1
              Cache-Control: must-revalidate,no-cache,no-store
              Content-Length: 328
        This is what my UI looks like (seems correct)

        Click image for larger version

Name:	No-Border-2020-08-13.png
Views:	233
Size:	72.0 KB
ID:	263361

        This is what the skin editor looks like:

        Click image for larger version

Name:	SkinEditor-userSkin-popup2.png
Views:	421
Size:	49.0 KB
ID:	263359

        What have I done wrong?

        Attached Files

        Comment


          #19
          Your server's POST message size-limit needs to be increased. Please see the docs on isc.RPCResponse.STATUS_MAX_POST_EXCEEDED.

          Is that a screenshot of just the top left of your screen?

          Comment


            #20
            That is a screenshot of JUST the top left of the screen.

            I figured that it might be a parameter setting that needed increase - but wondered if you had not run across the same in your testing and had made a fix in the release?

            Anyway a Google search on "isc.RPCResponse.STATUS_MAX_POST_EXCEEDED" or "RPCResponse.STATUS_MAX_POST_EXCEEDED" or "STATUS_MAX_POST_EXCEEDED" came up blank. Just FYI. Had to do it the hard way, open the docs and find the Class RPCResponse myself. :-)

            This is what I get when I try, just now, to login to the online skin editor:


            Code:
            javax.servlet.ServletException: Auth failure - see server logs for details
                at com.isomorphic.auth.AuthenticationFilter._doFilter(AuthenticationFilter.java:828)
                at com.isomorphic.servlet.BaseFilter.doFilter(BaseFilter.java:91)
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
                at com.isomorphic.servlet.CompressionFilter._doFilter(CompressionFilter.java:263)
                at com.isomorphic.servlet.BaseFilter.doFilter(BaseFilter.java:91)
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
                at com.isomorphic.servlet.URIRegexFilter.match(URIRegexFilter.java:472)
                at com.isomorphic.servlet.URIRegexFilter.match(URIRegexFilter.java:467)
                at com.isomorphic.servlet.URIRegexFilter.matchedRule(URIRegexFilter.java:443)
                at com.isomorphic.servlet.URIRegexFilter._doFilter(URIRegexFilter.java:349)
                at com.isomorphic.servlet.BaseFilter.doFilter(BaseFilter.java:91)
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
                at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
                at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
                at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541)
                at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
                at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
                at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
                at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
                at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:373)
                at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
                at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868)
                at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1590)
                at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
                at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
                at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
                at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
                at java.lang.Thread.run(Thread.java:748)

            Comment


              #21
              The RPCResponse class documentation discusses how to change the MAX Post size for a Tomcat internal service.

              >> On internal networks, these limits can typically be safely raised or removed. With Tomcat, for example, you can remove the post limit by specifying the following attribute on the <Connector> element in conf/server.xml:

              >> maxPostSize="-1" But this is being run in an eclipse development envir under jetty. The jetty google search came up with this url: https://www.eclipse.org/jetty/docume...form-size.html


              I am uncertain how to modify this parameter for my development mode. Can you advise? Or do I have this entirely wrong?

              How could the RPC post get this big to exceed 200000? Anyway that's a discussion for another time.

              Ah...

              I found this war/WEB-INF/jetty-web.xml. I suppose this is the appropriate place to make the change?

              Yes, in case others come across this, or if you can add it to documentation, adding war/WEB-INF/jetty-web.xml with contents:

              Code:
              <Configure class="org.eclipse.jetty.webapp.WebAppContext">
              
                    <Set name="maxFormContentSize">100000000</Set>
              </Configure>
              fixed that MAX Post size issue.
              Last edited by tece321; 13 Aug 2020, 13:31.

              Comment


                #22
                When I attempt to load the NEWSkin I get this popup error:

                Click image for larger version  Name:	Skin-Load-Error-08132020.png Views:	0 Size:	28.9 KB ID:	263368

                Is this something else that needs to be fixed? I don't see anything in the developer console, or the adminConsole that reflects this error. I opened these consoles on the Skin Editor.

                One can see a path error in the image. The path it is trying to access is "bultinds/sc//skins/Tahoe/skin_styles_editor.css" where it should be ( ? )
                bultinds/sc/skins/Tahoe/skin_styles_editor.css" .

                I'm not generating that. So I will search to see where it is coming from in the project..

                Also I notice that the skin editor comes up with missing icon images. What's up with that? Don't see anything in the console indicating those issues though.

                Click image for larger version

Name:	Skin-Load-Error-08142020.png
Views:	82
Size:	145.0 KB
ID:	263373
                Last edited by tece321; 14 Aug 2020, 08:26.

                Comment


                  #23
                  Hello? Anyone out there? This is not working for me yet.

                  Comment


                    #24
                    Hi Tony, sorry you had a problem with Jetty. That's an absurdly low POST limit, far lower than the defaults for other servlet engines. We'll be adding some docs warning about this, also, we've implemented a workaround so that you won't hit this limit in the Skin Editor.

                    That path with the double slashes, while ugly, should still have worked. Are you saying the file is present on disk? If not, you may need to run a GWT compile after adding the base skins that the Skin Editor starts from. The same is probably also true of the missing icons, which should have been present after a GWT compile once you included the tools module.

                    Comment


                      #25
                      Two other notes here:

                      1. we previously told you that we'd eliminated the third-party library that broke IPv6 access, so you should be able to use the online Skin Editor again

                      2. using the Skin Editor does not involve Java development, front end or backend, so while we make it possible to run the Skin Editor within an Eclipse, GWT and Jetty environment, all of those things just get in the way and do not provide any value. You have been struggling with a toolchain you will not be using.

                      So, if you have a reason to run the Skin Editor locally, you might just use the SmartClient SDK (which you are licensed to use as well), since there, you just start the server and that's it, it just works. GWT can't get in the way and break things.

                      Comment


                        #26
                        2. I hear you about the tool chain. But I would have to build a war file and deploy it to one of our Tomcat servers in order to remove the development chain. Then where is the new skin created? Out on a file system, in another site on which the Tomcat servers are running. You're just not considering the big/huge company environment and the million restrictions placed, (example my Compass war of earlier in the week).

                        The file : bultinds/sc/skins/Tahoe/skin_styles_editor.css exists on the file system - within the development environment. So why is there any "failed to load" error? Let's fix that...

                        Why do I see that error, and all the missing image errors too? And preview is not working. There are no skins being applied in my environment.
                        This is from the development console of Chrome:


                        Click image for larger version

Name:	Skin-Load-Error-2-08142020.png
Views:	125
Size:	77.9 KB
ID:	263380

                        Am not clear - sorry - by exactly what you mean by "you just start the server and that's it, it just works."

                        I'm familiar with running under eclipse development system, and with Tomcat deployments. What does "just start the server" mean? Sorry to be so unfamiliar with the process.

                        Comment


                          #27
                          The SmartClient SDK comes with an embedded version of Tomcat, and start scripts for various platforms (Windows, MacOS, Linux), so you just run one of those scripts and navigate to localhost:8080 (by default). No deployment involved. So unless you're not allowed to run software on your own machine, this is another approach that bypasses the whole GWT toolchain problem, in addition to just using the online Skin Editor, which again, should also be working for you now.

                          In both cases, once you have the skin how you want it, you just export it and apply it to the target project, or you can load it dynamically by just pointing to the URL where you've got the Skin Editor running.

                          If you want to continue to do battle with GWT, please also check whether those icons are missing from disk, as previously mentioned. Again, a GWT compile may be necessary, as that's what copies the relevant resources from the .jars we provide to the deployment where you're trying to use the Skin Editor.

                          If they are present, then we are probably looking at two more Jetty bugs:

                          1. it's lying to us about the relative path (inserted an extra slash)

                          2. it's refusing to load files when there is a double slash in a path (most engines handle this fine)

                          We can and will work around both, if only for other users, but again, setting up the Skin Editor inside a GWT environment, only to not use GWT at all, is not the approach we'd recommend here.

                          Comment


                            #28
                            Note that we've worked around all of the issues with Skin Editor under Jetty - with a build dated August 18 or later, Skin Editor should work out of the box, with no missing styles or images, and without changing jetty-web.xml.

                            Comment

                            Working...
                            X