Uploaded image for project: 'PUBLIC - Liferay Faces'
  1. PUBLIC - Liferay Faces
  2. FACES-2518

Alloy Reslib causes infinite loop of requests for aui javascript resources when the Faces Servlet is path mapped

    Details

      Description

      {markdown}
      Steps to reproduce:

      1. Add the following code to your webapps `web.xml`:

      <servlet-mapping>
      <servlet-name>Faces Servlet</servlet-name>
      <url-pattern>/faces/*</url-pattern>
      </servlet-mapping>

      2. Navigate to an `xhtml` page with the following code:

      <html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:alloy="http://liferay.com/faces/alloy">

      <alloy:head>
      </alloy:head>

      <alloy:body>
      <alloy:inputDate />
      </alloy:body>
      </html>

      If the bug still exists, the console log will show the following infinitely repeating error message:

      SyntaxError: expected expression, got '<'{markdown}

      Note that when this error occurs, aui script resource markup looks like this:

      <script id="yui_patched_v3_11_0_2_1447970566090_4" charset="utf-8"
          src="#{resource['liferay-faces-reslib:combo']}&build/oop/oop-min.js&build/event-custom-base/event-custom-base-min.js&build/event-custom-complex/event-custom-complex-min.js&build/intl/intl-min.js&build/calendar-base/lang/calendar-base_en.js&build/attribute-core/attribute-core-min.js&build/attribute-observable/attribute-observable-min.js&build/attribute-extras/attribute-extras-min.js&build/attribute-base/attribute-base-min.js&build/attribute-complex/attribute-complex-min.js&build/base-core/base-core-min.js&build/base-observable/base-observable-min.js&build/base-base/base-base-min.js&build/pluginhost-base/pluginhost-base-min.js&build/pluginhost-config/pluginhost-config-min.js&build/base-pluginhost/base-pluginhost-min.js&build/classnamemanager/classnamemanager-min.js&build/dom-core/dom-core-min.js&build/dom-base/dom-base-min.js&build/selector-native/selector-native-min.js&build/selector/selector-min.js&build/node-core/node-core-min.js&build/node-base/node-base-min.js&build/event-base/event-base-min.js" async="">
      

      When the Faces Servlet is extension mapped (and everything is working correctly), aui script resource markup looks like this:

      <script id="yui_patched_v3_11_0_2_1447970936787_4" charset="utf-8"
          src="/html5/javax.faces.resource/combo.faces?ln=liferay-faces-reslib&build/oop/oop-min.js&build/event-custom-base/event-custom-base-min.js&build/event-custom-complex/event-custom-complex-min.js&build/intl/intl-min.js&build/calendar-base/lang/calendar-base_en.js&build/attribute-core/attribute-core-min.js&build/attribute-observable/attribute-observable-min.js&build/attribute-extras/attribute-extras-min.js&build/attribute-base/attribute-base-min.js&build/attribute-complex/attribute-complex-min.js&build/base-core/base-core-min.js&build/base-observable/base-observable-min.js&build/base-base/base-base-min.js&build/pluginhost-base/pluginhost-base-min.js&build/pluginhost-config/pluginhost-config-min.js&build/base-pluginhost/base-pluginhost-min.js&build/classnamemanager/classnamemanager-min.js&build/dom-core/dom-core-min.js&build/dom-base/dom-base-min.js&build/selector-native/selector-native-min.js&build/selector/selector-min.js&build/node-core/node-core-min.js&build/node-base/node-base-min.js" async="">
      

        Attachments

          Activity

            People

            Assignee:
            kyle.stiemann Kyle Stiemann (Inactive)
            Reporter:
            kyle.stiemann Kyle Stiemann (Inactive)
            Participants of an Issue:
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Packages

                Version Package
                alloy-2.0.0
                alloy-3.0.0