Announcement

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

    Disable skin generation in workspace\myproj\war\myproj\sc\skins during gwtc run

    Hi Isomorphic,

    I noticed that during a gwtc run the following directories are created:
    • workspace\myproj\war\myproj\sc\skins\Enterprise
    • workspace\myproj\war\myproj\sc\skins\Graphite
    • workspace\myproj\war\myproj\sc\skins\ToolSkin
    • workspace\myproj\war\myproj\sc\skins\ToolSkinNative

    Later I copy my own skin there in an ant task.
    In my .gwt.xml I inherit

    Code:
    	<inherits name='com.google.gwt.user.User' />
    	<inherits name="com.smartgwt.tools.SmartGwtTools" />
    	<inherits name="com.smartgwtee.tools.Tools" />
    	<inherits name="com.smartgwt.SmartGwtNoScript" />
    and nothing more.

    I copy and use only my skin from my bootstrap-html-file. Also do not have a skin-changer as in the showcase. Therefore I think I don't need the four directories from above. Right now, they clutter my war-directory and also the war-file I want to deploy.
    Of course I could delete them after gwtc before war, but I think it would be better if they were not generated in the first place.

    How can I control this?

    Thank you & Best regards,
    Blama

    #2
    These are skins and other resources that really are required by the combination of your app (Enterprise) and various tools (the others).

    They are not clutter and you should not delete them.

    Comment


      #3
      Hi Isomorphic,

      I'm not sure were are talking about the same thing. I asked about the four different skins in myproj\war\myproj\sc\skins.
      The rest (=the inherits) I gave in order to give you an idea why those four directories might be generated. I know that I'll need the inherhits-tags.

      I load my skin (modified, based on Simplicity) in the bootstrap html with
      Code:
      <script type="text/javascript" src="myproj/sc/skins/Simplicity/load_skin.js"></script>
      For me, also the developer console has the modified skin, so I really don't think I'll need those four different skin-directories.

      Best regards,
      Blama

      Comment


        #4
        To avoid the Enterprise directory being created, use the *NoTheme variant of your main SmartGWT inherit.

        Again the other directories come from the EE Tools include.

        Comment


          #5
          Hi Isomorphic,

          I changed:
          Code:
          <inherits name="com.smartgwt.SmartGwtNoScript" />
          to
          Code:
          <inherits name="com.smartgwt.SmartGwtNoTheme" />
          I needed SmartGwtNoScript because of the used Linker. I get this error when building with SmartGwtNoTheme:
          Code:
               [java]    Invoking Linker Cross-Site-Iframe
               [java]       [ERROR] The Cross-Site-Iframe linker does not support <script> tags in the gwt.xml files, but the gwt.xml file (or the gwt.xml files which it includes) contains the following script tags: 
               [java] sc/modules/ISC_Core.js
               [java] sc/modules/ISC_Foundation.js
               [java] sc/modules/ISC_Containers.js
               [java] sc/modules/ISC_Grids.js
               [java] sc/modules/ISC_Forms.js
               [java] sc/modules/ISC_RichTextEditor.js
               [java] sc/modules/ISC_Calendar.js
               [java] sc/modules/ISC_DataBinding.js
               [java] In order for your application to run correctly, you will need to include these tags in your host page directly. In order to avoid this error, you will need to remove the script tags from the gwt.xml file, or add this property to the gwt.xml file: <set-configuration-property name='xsiframe.failIfScriptTag' value='FALSE'/>
          I inspected your main jar and saw that there is no "NoScriptNoTheme.gwt.xml". Could you add this (no priority for me, I will just delete the generated sc\skins\Enterprise with ant for now)?

          Regarding the other three skins I understood this now, but still wonder when they are used.
          Also they are still generated for me with only these inherits:
          Code:
          	<inherits name='com.google.gwt.user.User' />
          	<inherits name="com.smartgwt.SmartGwtNoScript" />
          Best regards,
          Blama

          Comment


            #6
            We'll check on the NoScriptNoTheme possibility.

            As far as seeing those folders created with no Tools include, are you saying you're seeing empty folders or the actual resources?

            Comment


              #7
              These are really filled directories. Please see this text file.

              Please note the following:
              - There are serveral load_skin.js.gz and skin_styles.css.gz files.
              - ToolSkinNative has no images

              Best regards,
              Blama

              Comment


                #8
                We are certainly not reproducing that.

                Most likely, because of some IDE staleness issue, the old <inherits> are still being used when you run a GWT compile.

                Comment


                  #9
                  Hi Isomorphic,

                  sorry, the Simplicity folder in the text file is from my skin. If I leave the copy-skin-ant-task away, I get the following:

                  Code:
                  <inherits name='com.google.gwt.user.User'
                  <inherits name="com.smartgwt.SmartGwtNoScript" />
                  leads to: myproj\war\lms\sc\skins\Graphite, ToolSkin, ToolSkinNative.
                  and
                  Code:
                  <inherits name='com.google.gwt.user.User'
                  <inherits name="com.smartgwt.tools.SmartGwtTools" />
                  <inherits name="com.smartgwtee.tools.Tools" />
                  <inherits name="com.smartgwt.SmartGwtNoScript" />
                  leads to: myproj\war\lms\sc\skins\[B]Enterprise[/B], Graphite, ToolSkin, ToolSkinNative (generated in this order).
                  Best regards,
                  Blama

                  Comment


                    #10
                    Didn't see your last post. Will try clean/exit now and come back.

                    Comment


                      #11
                      Hi Isomorphic,

                      I definitely see this behaviour, even for a simple build of SmartGWTEE builtInDS-sample:

                      I use this BuiltInDS.gwt.xml (only change to plain v9.1p_2014-05-11/EVAL Deployment 2014-05-11) and do a default build with the build.xml
                      Code:
                      <?xml version="1.0" encoding="UTF-8"?>
                      <!DOCTYPE module PUBLIC "-//Google Inc.//DTD Google Web Toolkit 2.5.1//EN"
                         "http://google-web-toolkit.googlecode.com/svn/tags/2.5.1/distro-source/core/src/gwt-module.dtd">
                      <module rename-to="builtinds">
                          <inherits name='com.google.gwt.user.User'/>
                          <inherits name="com.smartgwtee.SmartGwtEENoScript"/>
                          <set-property name="user.agent" value="gecko1_8" />
                          <entry-point class='com.smartgwt.sample.client.BuiltInDS'/>
                      </module>
                      Result: Generated directories Graphite, ToolSkin, ToolSkinNative as described.

                      Best regards,
                      Blama

                      Comment


                        #12
                        Adding
                        Code:
                        <inherits name="com.smartgwt.tools.SmartGwtTools"/>
                        <inherits name="com.smartgwtee.tools.Tools"/>
                        also adds the Enterprise skin-dir, most likely because of the contents of smartgwtee.jar:com.smartgwt.tools/SmartGwtTools.gwt.xml:
                        Code:
                        <!--
                        Packages the files required to run the Developer Console. You must inherit this
                        module if you want to launch the Developer Console using SC.showConsole()
                        -->        
                        <module>
                            <inherits name='com.google.gwt.user.User'/>
                            <inherits name="com.google.gwt.xml.XML"/>
                            <inherits name="com.google.gwt.i18n.I18N"/>    
                            <inherits name="com.google.gwt.json.JSON"/>
                            <inherits name="com.google.gwt.http.HTTP"/>
                            <inherits name="com.google.gwt.event.Event"/>
                        
                            <inherits name="com.smartgwt.SmartGwtNoSmartClient"/>
                            [B]<inherits name="com.smartclient.theme.enterprise.EnterpriseResources"/>[/B]
                            <inherits name="com.smartclient.tools.SmartClientTools"/>
                        
                        </module>
                        Best regards,
                        Blama

                        Comment


                          #13
                          We've gone ahead and created the NoScriptNoTheme variant, which should be available in tomorrow's build (2014-05-20).

                          Comment


                            #14
                            Hi Isomorphic,

                            I did not find a SmartGwt(EE)NoScriptNoTheme.gwt.xml, neither in com.smartgwt nor in com.smartgwtee.
                            I checked in current nightly v9.1p_2014-05-21/EVAL Deployment's smartgwtee.jar.

                            Best regards,
                            Blama

                            Comment


                              #15
                              Sorry, we could have made that clearer. It's present in current versions of the 5.0d line, but was merged back to 4.1p. You might expect to see it there as early as next week.

                              Comment

                              Working...
                              X