This is an automated email from the ASF dual-hosted git repository.
mridulpathak pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/ofbiz-framework.git
The following commit(s) were added to refs/heads/trunk by this push:
new 04cfc34698 Removed: obsolete screenxls view-handler type, superseded
by screenxlsx (OFBIZ-13578)
04cfc34698 is described below
commit 04cfc34698af9c6c1a0a12e7063c32cdfc725547
Author: Mridul Pathak <[email protected]>
AuthorDate: Sun Sep 13 12:17:21 2026 +0530
Removed: obsolete screenxls view-handler type, superseded by screenxlsx
(OFBIZ-13578)
- Removed the screenxls handler registration, its Theme.xml template block,
and its three FTL macro libraries plus the outer Simple.xls.ftl layout template
- Removed the now-orphaned <xls> platform-specific wiring in
CommonScreens.xml, the "xls" entry in ModelScreenWidget.java's rendering-type
list, and the corresponding <xls> element from widget-screen.xsd (kept in sync
with the Java-side removal)
- Removed the WebtoolsLayoutDemoXls demo request-map/view-map
- Replaced testXlsMacroLibrary with testXlsxViewHandler, verifying the real
OOXML/ZIP magic bytes and content-type
- Updated developer-manual.adoc's view-handler list entry
---
docs/asciidoc/developer-manual.adoc | 2 +-
.../webcommon/WEB-INF/handlers-controller.xml | 1 -
.../webapp/webtools/WEB-INF/controller.xml | 2 -
framework/widget/dtd/widget-screen.xsd | 8 -
.../ofbiz/widget/model/ModelScreenWidget.java | 2 +-
.../ofbiz/widget/test/WidgetMacroLibraryTests.java | 28 ++--
.../common-theme/template/includes/Simple.xls.ftl | 57 --------
.../template/macro/XlsFormMacroLibrary.ftl | 162 ---------------------
.../template/macro/XlsScreenMacroLibrary.ftl | 56 -------
.../template/macro/XlsTreeMacroLibrary.ftl | 33 -----
themes/common-theme/widget/CommonScreens.xml | 1 -
themes/common-theme/widget/Theme.xml | 5 -
12 files changed, 20 insertions(+), 337 deletions(-)
diff --git a/docs/asciidoc/developer-manual.adoc
b/docs/asciidoc/developer-manual.adoc
index d058745023..1c8d14e2ae 100644
--- a/docs/asciidoc/developer-manual.adoc
+++ b/docs/asciidoc/developer-manual.adoc
@@ -163,7 +163,7 @@ View types can be one of:
- screenxml: An XML document.
- simple-content; A special MIME content type (like binary files).
- ftl: An HTML document generated directly from a FreeMarker template.
-- screenxls: An Excel spreadsheet.
+- screenxlsx: A genuine OOXML .xlsx spreadsheet generated via Apache POI.
In the findInvoices example, the view-map type is a normal screen which is
mapped to the screen:
diff --git a/framework/common/webcommon/WEB-INF/handlers-controller.xml
b/framework/common/webcommon/WEB-INF/handlers-controller.xml
index f0080c20f6..5860b21a07 100644
--- a/framework/common/webcommon/WEB-INF/handlers-controller.xml
+++ b/framework/common/webcommon/WEB-INF/handlers-controller.xml
@@ -40,7 +40,6 @@ under the License.
<handler name="screenxml" type="view"
class="org.apache.ofbiz.widget.renderer.macro.MacroScreenViewHandler"/>
<handler name="screentext" type="view"
class="org.apache.ofbiz.widget.renderer.macro.MacroScreenViewHandler"/>
<handler name="screencsv" type="view"
class="org.apache.ofbiz.widget.renderer.macro.MacroScreenViewHandler"/>
- <handler name="screenxls" type="view"
class="org.apache.ofbiz.widget.renderer.macro.MacroScreenViewHandler"/>
<handler name="screenxlsx" type="view"
class="org.apache.ofbiz.widget.renderer.xlsx.ScreenXlsxViewHandler"/>
<handler name="screenfop" type="view"
class="org.apache.ofbiz.widget.renderer.fo.ScreenFopViewHandler"/>
<handler name="jsp" type="view"
class="org.apache.ofbiz.webapp.view.JspViewHandler"/>
diff --git a/framework/webtools/webapp/webtools/WEB-INF/controller.xml
b/framework/webtools/webapp/webtools/WEB-INF/controller.xml
index 8f2990fbd2..4c81e6c6cb 100644
--- a/framework/webtools/webapp/webtools/WEB-INF/controller.xml
+++ b/framework/webtools/webapp/webtools/WEB-INF/controller.xml
@@ -740,7 +740,6 @@ under the License.
<request-map uri="WebtoolsLayoutDemoText"><security https="true"
auth="true"/><response name="success" type="view"
value="WebtoolsLayoutDemoText"/></request-map>
<request-map uri="WebtoolsLayoutDemoXml"><security https="true"
auth="true"/><response name="success" type="view"
value="WebtoolsLayoutDemoXml"/></request-map>
<request-map uri="WebtoolsLayoutDemoCsv"><security https="true"
auth="true"/><response name="success" type="view"
value="WebtoolsLayoutDemoCsv"/></request-map>
- <request-map uri="WebtoolsLayoutDemoXls"><security https="true"
auth="true"/><response name="success" type="view"
value="WebtoolsLayoutDemoXls"/></request-map>
<request-map uri="WebtoolsLayoutDemoXlsx"><security https="true"
auth="true"/><response name="success" type="view"
value="WebtoolsLayoutDemoXlsx"/></request-map>
<request-map uri="AvailableUelList"><security https="true"
auth="true"/><response name="success" type="view"
value="AvailableUelList"/></request-map>
@@ -857,7 +856,6 @@ under the License.
<view-map name="WebtoolsLayoutDemoText" type="screentext"
page="component://webtools/widget/MiscScreens.xml#WebtoolsLayoutDemoText"/>
<view-map name="WebtoolsLayoutDemoXml" type="screenxml"
page="component://webtools/widget/MiscScreens.xml#WebtoolsLayoutDemoText"
content-type="text/xml"/>
<view-map name="WebtoolsLayoutDemoCsv" type="screencsv"
page="component://webtools/widget/MiscScreens.xml#WebtoolsLayoutDemoText"
content-type="text/csv"/>
- <view-map name="WebtoolsLayoutDemoXls" type="screenxls"
page="component://webtools/widget/MiscScreens.xml#WebtoolsLayoutDemoText"
content-type="application/vnd.ms-excel"/>
<view-map name="WebtoolsLayoutDemoXlsx" type="screenxlsx"
page="component://webtools/widget/MiscScreens.xml#WebtoolsLayoutDemoText"
content-type="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"/>
<view-map name="AvailableUelList" type="screen"
page="component://webtools/widget/MiscScreens.xml#AvailableUelList"/>
diff --git a/framework/widget/dtd/widget-screen.xsd
b/framework/widget/dtd/widget-screen.xsd
index 7e02513a07..799a1588ed 100644
--- a/framework/widget/dtd/widget-screen.xsd
+++ b/framework/widget/dtd/widget-screen.xsd
@@ -473,7 +473,6 @@ under the License.
<xs:element minOccurs="0" ref="xml" />
<xs:element minOccurs="0" ref="text" />
<xs:element minOccurs="0" ref="csv" />
- <xs:element minOccurs="0" ref="xls" />
</xs:sequence>
</xs:complexType>
</xs:element>
@@ -500,13 +499,6 @@ under the License.
</xs:sequence>
</xs:complexType>
</xs:element>
- <xs:element name="xls">
- <xs:complexType>
- <xs:sequence>
- <xs:element minOccurs="0" maxOccurs="unbounded"
ref="HtmlWidgets" />
- </xs:sequence>
- </xs:complexType>
- </xs:element>
<xs:element name="text">
<xs:complexType>
<xs:sequence>
diff --git
a/framework/widget/src/main/java/org/apache/ofbiz/widget/model/ModelScreenWidget.java
b/framework/widget/src/main/java/org/apache/ofbiz/widget/model/ModelScreenWidget.java
index 0a220f3f8c..88f3947fee 100644
---
a/framework/widget/src/main/java/org/apache/ofbiz/widget/model/ModelScreenWidget.java
+++
b/framework/widget/src/main/java/org/apache/ofbiz/widget/model/ModelScreenWidget.java
@@ -1349,7 +1349,7 @@ public abstract class ModelScreenWidget extends
ModelWidget {
}
public static final class PlatformSpecific extends ModelScreenWidget {
- private static final List<String>
PLATEFORM_SPECIFIC_SUPPORT_RENDERING_TYPE = UtilMisc.toList("html", "xsl-fo",
"xml", "text", "csv", "xls");
+ private static final List<String>
PLATEFORM_SPECIFIC_SUPPORT_RENDERING_TYPE = UtilMisc.toList("html", "xsl-fo",
"xml", "text", "csv");
public static final String TAG_NAME = "platform-specific";
private final Map<String, ModelScreenWidget> subWidgets;
diff --git
a/framework/widget/src/test/java/org/apache/ofbiz/widget/test/WidgetMacroLibraryTests.java
b/framework/widget/src/test/java/org/apache/ofbiz/widget/test/WidgetMacroLibraryTests.java
index 5a7d717c7a..af083362f5 100644
---
a/framework/widget/src/test/java/org/apache/ofbiz/widget/test/WidgetMacroLibraryTests.java
+++
b/framework/widget/src/test/java/org/apache/ofbiz/widget/test/WidgetMacroLibraryTests.java
@@ -145,23 +145,31 @@ public class WidgetMacroLibraryTests implements
JupiterTestHelper {
}
/**
- * Test xls macro library.
+ * Test the screenxlsx view handler produces a genuine binary OOXML
workbook.
* @throws Exception the exception
*/
@Test
@Order(5)
- public void testXlsMacroLibrary() throws Exception {
- String screenxlsUrl = screenUrl.concat("Xls");
+ public void testXlsxViewHandler() throws Exception {
+ String screenxlsxUrl = screenUrl.concat("Xlsx");
HttpClient http = initHttpClient();
- http.setUrl(screenxlsUrl.concat(authentificationQuery));
- String screenOutString = http.post();
- assertNotNull(screenOutString, "Response failed from ofbiz");
- assertEquals("application/vnd.ms-excel;charset=UTF-8",
+ http.setUrl(screenxlsxUrl.concat(authentificationQuery));
+ InputStream screenInputStream = http.postStream();
+ assertNotNull(screenInputStream, "Response failed from ofbiz");
+ assertEquals(200, http.getResponseCode(), "Response code isn't good :
" + http.getResponseCode());
+
assertEquals("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8",
http.getResponseContentType(), "Response contentType isn't
good : " + http.getResponseContentType());
- //Test if a ftl macro error is present
- assertFalse(screenOutString.contains("FreeMarker template error:"),
- "Csv Screen contains Macro on error : see " + screenxlsUrl + "
for more detail");
+ //Test that the response is a genuine OOXML/ZIP binary (magic bytes
PK\x03\x04),
+ //not HTML markup masquerading as a spreadsheet.
+ byte[] magic = new byte[4];
+ try {
+ assertEquals(4, screenInputStream.read(magic), "Response body was
shorter than the ZIP magic bytes");
+ } finally {
+ screenInputStream.close();
+ }
+ assertEquals("504b0304", String.format("%02x%02x%02x%02x", magic[0],
magic[1], magic[2], magic[3]),
+ "Response body doesn't start with the ZIP/OOXML magic bytes :
" + screenxlsxUrl + " for more detail");
}
/**
diff --git a/themes/common-theme/template/includes/Simple.xls.ftl
b/themes/common-theme/template/includes/Simple.xls.ftl
deleted file mode 100644
index 36f205cd54..0000000000
--- a/themes/common-theme/template/includes/Simple.xls.ftl
+++ /dev/null
@@ -1,57 +0,0 @@
-<#--
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements. See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership. The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License. You may obtain a copy of the License at
-
-http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied. See the License for the
-specific language governing permissions and limitations
-under the License.
--->
-
-<#assign docLangAttr = locale.toString()?replace("_", "-")>
-<#assign langDir = "ltr">
-<#if "ar.iw"?contains(docLangAttr?substring(0, 2))><#assign langDir =
"rtl"></#if>
-
-<html lang="${docLangAttr}" dir="${langDir}"
xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
- </head>
-
- <body>
- <style>
- .txf {
- mso-number-format: \@
- } <#-- Text format-->
-
- .cf {
- mso-number-format: "\#\#0.00"
- } <#-- currency format-->
-
- .nf {
- mso-number-format: "0.00"
- } <#-- number format-->
-
- .tf {
- mso-number-format: "HH:mm:ss"
- } <#-- time format-->
-
- .df {
- mso-number-format: "yyyy-MM-dd"
- } <#-- date format-->
-
- .dtf {
- mso-number-format: "yyyy-MM-dd HH:mm:ss"
- } <#-- date-time format-->
- </style>
- ${sections.render("body")}
- </body>
-</html>
diff --git a/themes/common-theme/template/macro/XlsFormMacroLibrary.ftl
b/themes/common-theme/template/macro/XlsFormMacroLibrary.ftl
deleted file mode 100644
index 601b8dd788..0000000000
--- a/themes/common-theme/template/macro/XlsFormMacroLibrary.ftl
+++ /dev/null
@@ -1,162 +0,0 @@
-<#--
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements. See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership. The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License. You may obtain a copy of the License at
-
-http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied. See the License for the
-specific language governing permissions and limitations
-under the License.
--->
-
-<#macro renderField text=""><#if text??>${text}</#if></#macro>
-
-<#macro renderItemField value cellType cellStyle=""><td class="${cellType!}"
<#if cellStyle?has_content>${cellStyle!}</#if>>${value!}</td></#macro>
-
-<#macro renderDisplayField type imageLocation idName description title class
alert inPlaceEditorUrl="" inPlaceEditorParams="">
-<#if type=="currency"><#local value =
StringUtil.makeStringWrapper(description!)><@renderItemField value "cf" class/>
-<#elseif type=="date"><@renderItemField description "dt" class/>
-<#elseif type=="date-time"><@renderItemField description "dtf" class/>
-<#elseif type=="accounting-number"><@renderItemField description "nf" class/>
-<#else><@renderItemField description "txf" class/></#if>
-</#macro>
-<#macro renderHyperlinkField></#macro>
-
-<#macro renderTextField type step pattern name className alert min max
value="" textSize="" maxlength="" id="" event="" action=""
-disabled=false clientAutocomplete="" ajaxUrl="" ajaxEnabled="" mask=""
tabindex="" readonly="" required=false
-placeholder="" delegatorName="default"><@renderItemField value "txf"
className/></#macro>
-
-<#macro renderTextareaField name className alert cols="" rows="" maxlength=""
id="" readonly="" value="" visualEditorEnable="" buttons="" tabindex=""
language="" disabled=false placeholder=""></#macro>
-
-<#macro renderDateTimeField name className timeDropdownParamName
defaultDateTimeString localizedIconTitle timeHourName timeMinutesName ampmName
compositeType alert=false isTimeType=false isDateType=false amSelected=false
pmSelected=false timeDropdown="" classString="" isTwelveHour=false hour1=""
hour2="" minutes=0 shortDateInput="" title="" value="" size="" maxlength=""
id="" formName="" mask="" event="" action="" step="" timeValues="" tabindex=""
disabled=false isXMLHttpRequest=false>
-<#if isTimeType ><@renderItemField value "tf" className/>
-<#elseif isDateType><@renderItemField value "dt" className/>
-<#else><@renderItemField value "dtf" className/></#if>
-</#macro>
-
-<#macro renderDropDownField name className id formName explicitDescription
options ajaxEnabled
- otherFieldName="" otherValue="" otherFieldSize=""
- alert="" conditionGroup="" tabindex="" multiple=false event="" size=""
placeCurrentValueAsFirstOption=false
- currentValue="" allowEmpty=false dDFCurrent="" noCurrentSelectedKey=""
disabled=false action="">
-<@renderItemField explicitDescription "txf" className/>
-</#macro>
-
-<#macro renderCheckField items className alert id currentValue name event
action conditionGroup tabindex disabled allChecked=""><@renderItemField
currentValue "txf" className/></#macro>
-
-<#macro renderRadioField items className alert currentValue
noCurrentSelectedKey name event action conditionGroup tabindex
disabled><@renderItemField currentValue "txf" className/></#macro>
-
-<#macro renderSubmitField buttonType className alert formName action imgSrc
ajaxUrl id title="" name="" event="" confirmation="" containerId="" tabindex=""
disabled=false closeOnSubmit="true"></#macro>
-
-<#macro renderResetField className alert name title></#macro>
-
-<#macro renderHiddenField name conditionGroup="" value="" id="" event=""
action="" disabled=false></#macro>
-
-<#macro renderIgnoredField></#macro>
-
-<#macro renderFieldTitle style title id fieldHelpText=""
for=""><@renderItemField title "txf" style/></#macro>
-<#macro renderEmptyFormDataMessage message></#macro>
-
-<#macro renderSingleFormFieldTitle></#macro>
-
-<#macro renderFormOpen linkUrl formType targetWindow containerId
containerStyle autocomplete name viewIndexField viewSizeField viewIndex
viewSize useRowSubmit focusFieldName hasRequiredField csrfNameValue></#macro>
-<#macro renderFormClose></#macro>
-<#macro renderMultiFormClose></#macro>
-
-<#macro renderFormatListWrapperOpen formName style
columnStyles><table></#macro>
-
-<#macro renderFormatListWrapperClose formName></table></#macro>
-
-<#macro renderFormatHeaderOpen><thead></#macro>
-<#macro renderFormatHeaderClose></thead></#macro>
-
-<#macro renderFormatHeaderRowOpen style>
-<tr>
-</#macro>
-<#macro renderFormatHeaderRowClose>
-</tr>
-</#macro>
-<#macro renderFormatHeaderRowCellOpen style positionSpan></#macro>
-<#macro renderFormatHeaderRowCellClose></#macro>
-
-<#macro renderFormatHeaderRowFormCellOpen style></#macro>
-<#macro renderFormatHeaderRowFormCellClose></#macro>
-<#macro renderFormatHeaderRowFormCellTitleSeparator style isLast></#macro>
-
-<#macro renderFormatItemRowOpen formName itemIndex altRowStyles evenRowStyle
oddRowStyle>
-<tr>
-</#macro>
-<#macro renderFormatItemRowClose formName>
-</tr>
-</#macro>
-<#macro renderFormatItemRowCellOpen fieldName style positionSpan></#macro>
-<#macro renderFormatItemRowCellClose fieldName></#macro>
-<#macro renderFormatItemRowFormCellOpen style></#macro>
-<#macro renderFormatItemRowFormCellClose></#macro>
-
-<#macro renderFormatSingleWrapperOpen formName style><table></#macro>
-<#macro renderFormatSingleWrapperClose formName></table></#macro>
-
-<#macro renderFormatFieldRowOpen>
-<tr>
-</#macro>
-<#macro renderFormatFieldRowClose>
-</tr>
-</#macro>
-<#macro renderFormatFieldRowTitleCellOpen style></#macro>
-<#macro renderFormatFieldRowTitleCellClose></#macro>
-<#macro renderFormatFieldRowSpacerCell></#macro>
-<#macro renderFormatFieldRowWidgetCellOpen positionSpan style>
-</#macro>
-<#macro renderFormatFieldRowWidgetCellClose>
-</#macro>
-
-<#macro renderFormatEmptySpace><@renderItemField "" "txf"/></#macro>
-
-<#macro renderTextFindField name value defaultOption opEquals opBeginsWith
opContains opIsEmpty opNotEqual className alert size maxlength autocomplete
titleStyle hideIgnoreCase ignCase ignoreCase conditionGroup tabindex></#macro>
-
-<#macro renderDateFindField id name formName defaultOptionFrom
defaultOptionThru opEquals opSameDay opGreaterThanFromDayStart opGreaterThan
opGreaterThan opLessThan opUpToDay opUpThruDay opIsEmpty className=""
alert=false imgSrc="" value="" isTimeType=false isDateType=false
conditionGroup="" localizedInputTitle="" value2="" size="" maxlength=""
titleStyle="" tabindex="" disabled=false></#macro>
-
-<#macro renderRangeFindField className alert name value size maxlength
autocomplete titleStyle defaultOptionFrom opEquals opGreaterThan
opGreaterThanEquals opLessThan opLessThanEquals value2 defaultOptionThru
conditionGroup tabindex></#macro>
-
-<#macro renderLookupField name formName fieldFormName conditionGroup
className="" alert="false" value="" size="" maxlength="" id="" event=""
action="" readonly=false autocomplete="" descriptionFieldName=""
targetParameterIter="" imgSrc="" ajaxUrl="" ajaxEnabled=javaScriptEnabled
presentation="layer" width="" height="" position="" fadeBackground="true"
clearText="" showDescription="" initiallyCollapsed="" lastViewName="main"
tabindex="" delegatorName="default">><@renderItemField value "tx [...]
-
-<#macro renderNextPrev paginateStyle paginateFirstStyle viewIndex highIndex
listSize viewSize ajaxEnabled javaScriptEnabled ajaxFirstUrl firstUrl
paginateFirstLabel paginatePreviousStyle ajaxPreviousUrl previousUrl
paginatePreviousLabel pageLabel ajaxSelectUrl selectUrl ajaxSelectSizeUrl
selectSizeUrl commonDisplaying paginateNextStyle ajaxNextUrl nextUrl
paginateNextLabel paginateLastStyle ajaxLastUrl lastUrl paginateLastLabel
paginateViewSizeLabel></#macro>
-
-<#macro renderFileField className alert name value size maxlength autocomplete
tabindex></#macro>
-<#macro renderPasswordField className alert name value size maxlength id
autocomplete tabindex></#macro>
-<#macro renderImageField value description alternate style event
action></#macro>
-
-<#macro renderBanner style leftStyle rightStyle leftText text
rightText></#macro>
-
-<#macro renderContainerField id className></#macro>
-
-<#macro renderFieldGroupOpen style id title collapsed collapsibleAreaId
collapsible expandToolTip collapseToolTip></#macro>
-
-<#macro renderFieldGroupClose style id title></#macro>
-
-<#macro renderHyperlinkTitle name title showSelectAll="N"></#macro>
-
-<#macro renderSortField style title linkUrl ajaxEnabled
tooltip=""><td>${title!}</td></#macro>
-
-<#macro formatBoundaryComment boundaryType widgetType widgetName></#macro>
-
-<#macro renderTooltip tooltip tooltipStyle></#macro>
-
-<#macro renderClass className="" alert=""></#macro>
-
-<#macro renderAsterisks requiredField></#macro>
-
-<#macro makeHiddenFormLinkForm actionUrl name parameters targetWindow></#macro>
-<#macro makeHiddenFormLinkAnchor linkStyle hiddenFormName event action imgSrc
description confirmation><td>${description!}</td></#macro>
-<#macro makeHyperlinkString hiddenFormName imgSrc imgTitle title alternate
linkUrl description text="" linkStyle="" event="" action="" targetParameters=""
targetWindow="" confirmation="" uniqueItemName="" height="" width="" id="">
</#macro>
-<#macro renderDateRangePicker className alert id name value formName event
action locale alwaysShowCalendars applyButtonClasses applyLabel autoApply
buttonClasses cancelButtonClasses cancelLabel clearTitle
-drops linkedCalendars maxSpan maxYear minYear opens rangeLastMonthLabel
rangeLastWeekLabel rangeNextMonthLabel rangeNextWeekLabel rangeThisMonthLabel
rangeThisWeekLabel showDropdowns showIsoWeekNumbers showRanges showWeekNumbers
-singleDatePicker timePicker timePicker24Hour timePickerIncrement
timePickerSeconds conditionGroup="" value2="" titleStyle=""
tabindex=""></#macro>
\ No newline at end of file
diff --git a/themes/common-theme/template/macro/XlsScreenMacroLibrary.ftl
b/themes/common-theme/template/macro/XlsScreenMacroLibrary.ftl
deleted file mode 100644
index fbead56157..0000000000
--- a/themes/common-theme/template/macro/XlsScreenMacroLibrary.ftl
+++ /dev/null
@@ -1,56 +0,0 @@
-<#--
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements. See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership. The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License. You may obtain a copy of the License at
-
-http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied. See the License for the
-specific language governing permissions and limitations
-under the License.
--->
-
-<#macro renderBegin></#macro>
-
-<#macro renderEnd></#macro>
-
-<#macro renderScreenBegin></#macro>
-
-<#macro renderScreenEnd></#macro>
-
-<#macro renderSectionBegin boundaryComment></#macro>
-
-<#macro renderSectionEnd boundaryComment></#macro>
-
-<#macro renderContainerBegin id style autoUpdateLink type
autoUpdateInterval></#macro>
-<#macro renderContainerEnd type></#macro>
-<#macro renderContentBegin editRequest enableEditValue
editContainerStyle></#macro>
-<#macro renderContentBody></#macro>
-<#macro renderContentEnd urlString editMode editContainerStyle editRequest
enableEditValue></#macro>
-<#macro renderSubContentBegin editContainerStyle editRequest
enableEditValue></#macro>
-<#macro renderSubContentBody></#macro>
-<#macro renderSubContentEnd urlString editMode editContainerStyle editRequest
enableEditValue></#macro>
-
-<#macro renderHorizontalSeparator id style></#macro>
-<#macro renderLabel text id style></#macro>
-<#macro renderLink parameterList targetWindow target uniqueItemName linkType
actionUrl id style name height width linkUrl text imgStr></#macro>
-<#macro renderImage src id style wid hgt border alt urlString></#macro>
-
-<#macro renderContentFrame fullUrl width height border></#macro>
-<#macro renderScreenletBegin id title collapsible saveCollapsed
collapsibleAreaId expandToolTip collapseToolTip fullUrlString padded menuString
showMore collapsed javaScriptEnabled title="" screenHeader=""></#macro>
-<#macro renderScreenletSubWidget></#macro>
-<#macro renderScreenletEnd></#macro>
-
-<#macro renderScreenletPaginateMenu lowIndex actualPageSize ofLabel listSize
paginateLastStyle lastLinkUrl paginateLastLabel paginateNextStyle nextLinkUrl
paginateNextLabel paginatePreviousStyle paginatePreviousLabel previousLinkUrl
paginateFirstStyle paginateFirstLabel firstLinkUrl></#macro>
-
-<#macro renderColumnContainerBegin id style></#macro>
-<#macro renderColumnContainerEnd></#macro>
-<#macro renderColumnBegin id style></#macro>
-<#macro renderColumnEnd></#macro>
diff --git a/themes/common-theme/template/macro/XlsTreeMacroLibrary.ftl
b/themes/common-theme/template/macro/XlsTreeMacroLibrary.ftl
deleted file mode 100644
index 421dda4b51..0000000000
--- a/themes/common-theme/template/macro/XlsTreeMacroLibrary.ftl
+++ /dev/null
@@ -1,33 +0,0 @@
-<#--
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements. See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership. The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License. You may obtain a copy of the License at
-
-http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied. See the License for the
-specific language governing permissions and limitations
-under the License.
--->
-
-<#macro renderNodeBegin style></#macro>
-
-<#macro renderLastElement style></#macro>
-
-<#macro renderNodeEnd processChildren isRootNode></#macro>
-
-<#macro renderLabel id style labelText></#macro>
-
-<#macro formatBoundaryComment boundaryType widgetType widgetName></#macro>
-
-<#macro renderLink id style name title targetWindow linkUrl linkText
imgStr></#macro>
-
-<#macro renderImage src id style wid hgt border alt urlString></#macro>
-
\ No newline at end of file
diff --git a/themes/common-theme/widget/CommonScreens.xml
b/themes/common-theme/widget/CommonScreens.xml
index f2431fc13b..860c90f088 100644
--- a/themes/common-theme/widget/CommonScreens.xml
+++ b/themes/common-theme/widget/CommonScreens.xml
@@ -482,7 +482,6 @@ under the License.
<xml><html-template
location="component://common-theme/template/includes/MinimalDecorator.ftl"/></xml>
<text><html-template
location="component://common-theme/template/includes/MinimalDecorator.ftl"/></text>
<csv><html-template
location="component://common-theme/template/includes/MinimalDecorator.ftl"/></csv>
- <xls><html-template
location="component://common-theme/template/includes/Simple.xls.ftl"/></xls>
</platform-specific>
</widgets>
</section>
diff --git a/themes/common-theme/widget/Theme.xml
b/themes/common-theme/widget/Theme.xml
index 10fad851cd..c6dbbbfa2e 100644
--- a/themes/common-theme/widget/Theme.xml
+++ b/themes/common-theme/widget/Theme.xml
@@ -99,11 +99,6 @@ under the License.
<template-file widget="form"
location="component://common-theme/template/macro/XmlFormMacroLibrary.ftl"/>
<template-file widget="tree"
location="component://common-theme/template/macro/XmlTreeMacroLibrary.ftl"/>
</template>
- <template name="screenxls" type="xls"
content-type="application/vnd.ms-excel" encoding="none" encoder="html">
- <template-file widget="screen"
location="component://common-theme/template/macro/XlsScreenMacroLibrary.ftl"/>
- <template-file widget="form"
location="component://common-theme/template/macro/XlsFormMacroLibrary.ftl"/>
- <template-file widget="tree"
location="component://common-theme/template/macro/XlsTreeMacroLibrary.ftl"/>
- </template>
<template name="screenfop" type="xsl-fo"
content-type="application/pdf" encoding="none">
<template-file widget="screen"
location="component://common-theme/template/macro/FoScreenMacroLibrary.ftl"/>
<template-file widget="form"
location="component://common-theme/template/macro/FoFormMacroLibrary.ftl"/>