diff --git a/config/alfresco/web-client-application-context.xml b/config/alfresco/web-client-application-context.xml
index be9061cf12..fa5317f912 100644
--- a/config/alfresco/web-client-application-context.xml
+++ b/config/alfresco/web-client-application-context.xml
@@ -155,6 +155,9 @@
classpath:alfresco/messages/webclient
+
+ ${xforms.formatCaption}
+
diff --git a/source/java/org/alfresco/web/forms/xforms/Schema2XForms.java b/source/java/org/alfresco/web/forms/xforms/Schema2XForms.java
index 4f3e0fe13d..3056a7326e 100644
--- a/source/java/org/alfresco/web/forms/xforms/Schema2XForms.java
+++ b/source/java/org/alfresco/web/forms/xforms/Schema2XForms.java
@@ -118,6 +118,7 @@ public class Schema2XForms implements Serializable
private final String action;
private final SubmitMethod submitMethod;
private final String base;
+ private final boolean formatCaption;
@SuppressWarnings("unchecked")
private final Stack parentStack = new Stack();
@@ -145,13 +146,15 @@ public class Schema2XForms implements Serializable
*
* @param action _UNDOCUMENTED_
* @param submitMethod _UNDOCUMENTED_
+ * @param formatCaption
*/
public Schema2XForms(final String action,
final SubmitMethod submitMethod,
- final String base)
+ final String base, final boolean formatCaption)
{
reset();
+ this.formatCaption = formatCaption;
this.action = action;
this.submitMethod = submitMethod;
this.base = base;
@@ -2389,6 +2392,10 @@ public class Schema2XForms implements Serializable
*/
public String createCaption(String text)
{
+ if (formatCaption == false)
+ {
+ return text;
+ }
// if the word is all upper case, then set to lower case and continue
if (text.equals(text.toUpperCase()))
{
diff --git a/source/java/org/alfresco/web/forms/xforms/Schema2XFormsProperties.java b/source/java/org/alfresco/web/forms/xforms/Schema2XFormsProperties.java
index 3e0b6dca3f..850871f887 100644
--- a/source/java/org/alfresco/web/forms/xforms/Schema2XFormsProperties.java
+++ b/source/java/org/alfresco/web/forms/xforms/Schema2XFormsProperties.java
@@ -106,6 +106,7 @@ public class Schema2XFormsProperties
private final NamespaceService namespaceService;
private final NodeService nodeService;
private final SearchService searchService;
+ private boolean formatCaption = true;
private String[] locations;
public Schema2XFormsProperties(final ContentService contentService,
@@ -197,6 +198,17 @@ public class Schema2XFormsProperties
this.locations = locations;
}
+
+ public boolean isFormatCaption()
+ {
+ return formatCaption;
+ }
+
+ public void setFormatCaption(boolean formatCaption)
+ {
+ this.formatCaption = formatCaption;
+ }
+
public String toString()
{
return (this.getClass().getName() + "{" +
diff --git a/source/java/org/alfresco/web/forms/xforms/Schema2XFormsTest.java b/source/java/org/alfresco/web/forms/xforms/Schema2XFormsTest.java
index 6bc6d322e1..bea4e69286 100644
--- a/source/java/org/alfresco/web/forms/xforms/Schema2XFormsTest.java
+++ b/source/java/org/alfresco/web/forms/xforms/Schema2XFormsTest.java
@@ -643,7 +643,7 @@ public class Schema2XFormsTest
{
final Schema2XForms s2xf = new Schema2XForms("/test_action",
Schema2XForms.SubmitMethod.POST,
- "echo://fake.base.url");
+ "echo://fake.base.url", true);
return s2xf.buildXForm(instanceDocument,
schemaDocument,
rootElementName,
diff --git a/source/java/org/alfresco/web/forms/xforms/XFormsBean.java b/source/java/org/alfresco/web/forms/xforms/XFormsBean.java
index 2f3db3d389..74acc0ca56 100644
--- a/source/java/org/alfresco/web/forms/xforms/XFormsBean.java
+++ b/source/java/org/alfresco/web/forms/xforms/XFormsBean.java
@@ -129,14 +129,15 @@ public class XFormsBean implements Serializable
public XFormsSession(final Document formInstanceData,
final String formInstanceDataName,
final Form form,
- final String baseUrl)
+ final String baseUrl,
+ final boolean formatCaption)
{
this.formInstanceData = formInstanceData;
this.formInstanceDataName = formInstanceDataName;
this.form = form;
this.schema2XForms = new Schema2XForms(/* "/ajax/invoke/XFormsBean.handleAction" */ null,
Schema2XForms.SubmitMethod.POST,
- /* baseUrl */ "alfresco:" + XFormsBean.class.getName());
+ /* baseUrl */ "alfresco:" + XFormsBean.class.getName(), formatCaption);
}
public void destroy()
@@ -314,7 +315,7 @@ public class XFormsBean implements Serializable
request.getServerName() + ':' +
request.getServerPort() +
request.getContextPath());
- return this.new XFormsSession(formInstanceData, formInstanceDataName, form, baseUrl);
+ return this.new XFormsSession(formInstanceData, formInstanceDataName, form, baseUrl, getSchema2XFormsProperties().isFormatCaption());
}
/**