You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ofbiz.apache.org by do...@apache.org on 2013/05/14 20:09:32 UTC
svn commit: r1482508 - in /ofbiz/trunk/framework: service/dtd/services.xsd
service/src/org/ofbiz/service/ModelParam.java
service/src/org/ofbiz/service/ModelServiceReader.java
webapp/src/org/ofbiz/webapp/event/ServiceEventHandler.java
Author: doogie
Date: Tue May 14 18:09:31 2013
New Revision: 1482508
URL: http://svn.apache.org/r1482508
Log:
FEATURE: When calling services from an incoming http requests, allow for a different request and session attribute name to be specified.
Modified:
ofbiz/trunk/framework/service/dtd/services.xsd
ofbiz/trunk/framework/service/src/org/ofbiz/service/ModelParam.java
ofbiz/trunk/framework/service/src/org/ofbiz/service/ModelServiceReader.java
ofbiz/trunk/framework/webapp/src/org/ofbiz/webapp/event/ServiceEventHandler.java
Modified: ofbiz/trunk/framework/service/dtd/services.xsd
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/service/dtd/services.xsd?rev=1482508&r1=1482507&r2=1482508&view=diff
==============================================================================
--- ofbiz/trunk/framework/service/dtd/services.xsd (original)
+++ ofbiz/trunk/framework/service/dtd/services.xsd Tue May 14 18:09:31 2013
@@ -401,6 +401,8 @@ under the License.
<xs:attribute name="form-label" type="xs:string"/>
<xs:attribute name="entity-name" type="xs:string"/>
<xs:attribute name="field-name" type="xs:string"/>
+ <xs:attribute name="request-attribute-name" type="xs:string"/>
+ <xs:attribute name="session-attribute-name" type="xs:string"/>
<xs:attribute name="string-map-prefix" type="xs:string"/>
<xs:attribute name="string-list-suffix" type="xs:string"/>
<xs:attribute name="form-display" default="true">
Modified: ofbiz/trunk/framework/service/src/org/ofbiz/service/ModelParam.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/service/src/org/ofbiz/service/ModelParam.java?rev=1482508&r1=1482507&r2=1482508&view=diff
==============================================================================
--- ofbiz/trunk/framework/service/src/org/ofbiz/service/ModelParam.java (original)
+++ ofbiz/trunk/framework/service/src/org/ofbiz/service/ModelParam.java Tue May 14 18:09:31 2013
@@ -61,6 +61,12 @@ public class ModelParam implements Seria
/** The entity field name */
public String fieldName;
+ /** Request attribute to look for if not defined as a parameter */
+ public String requestAttributeName;
+
+ /** Session attribute to look for if not defined as a parameter */
+ public String sessionAttributeName;
+
/** Parameter prefix for creating an attribute Map */
public String stringMapPrefix;
@@ -97,6 +103,8 @@ public class ModelParam implements Seria
this.formLabel = param.formLabel;
this.entityName = param.entityName;
this.fieldName = param.fieldName;
+ this.requestAttributeName = param.requestAttributeName;
+ this.sessionAttributeName = param.sessionAttributeName;
this.stringMapPrefix = param.stringMapPrefix;
this.stringListSuffix = param.stringListSuffix;
this.validators = param.validators;
Modified: ofbiz/trunk/framework/service/src/org/ofbiz/service/ModelServiceReader.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/service/src/org/ofbiz/service/ModelServiceReader.java?rev=1482508&r1=1482507&r2=1482508&view=diff
==============================================================================
--- ofbiz/trunk/framework/service/src/org/ofbiz/service/ModelServiceReader.java (original)
+++ ofbiz/trunk/framework/service/src/org/ofbiz/service/ModelServiceReader.java Tue May 14 18:09:31 2013
@@ -504,6 +504,8 @@ public class ModelServiceReader implemen
param.mode = UtilXml.checkEmpty(attribute.getAttribute("mode")).intern();
param.entityName = UtilXml.checkEmpty(attribute.getAttribute("entity-name")).intern();
param.fieldName = UtilXml.checkEmpty(attribute.getAttribute("field-name")).intern();
+ param.requestAttributeName = UtilXml.checkEmpty(attribute.getAttribute("request-attribute-name")).intern();
+ param.sessionAttributeName = UtilXml.checkEmpty(attribute.getAttribute("session-attribute-name")).intern();
param.stringMapPrefix = UtilXml.checkEmpty(attribute.getAttribute("string-map-prefix")).intern();
param.stringListSuffix = UtilXml.checkEmpty(attribute.getAttribute("string-list-suffix")).intern();
param.formLabel = attribute.hasAttribute("form-label")?attribute.getAttribute("form-label").intern():null;
Modified: ofbiz/trunk/framework/webapp/src/org/ofbiz/webapp/event/ServiceEventHandler.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/webapp/src/org/ofbiz/webapp/event/ServiceEventHandler.java?rev=1482508&r1=1482507&r2=1482508&view=diff
==============================================================================
--- ofbiz/trunk/framework/webapp/src/org/ofbiz/webapp/event/ServiceEventHandler.java (original)
+++ ofbiz/trunk/framework/webapp/src/org/ofbiz/webapp/event/ServiceEventHandler.java Tue May 14 18:09:31 2013
@@ -257,7 +257,7 @@ public class ServiceEventHandler impleme
// next check attributes; do this before parameters so that attribute which can be changed by code can override parameters which can't
if (UtilValidate.isEmpty(value)) {
- Object tempVal = request.getAttribute(name);
+ Object tempVal = request.getAttribute(UtilValidate.isEmpty(modelParam.requestAttributeName) ? name : modelParam.requestAttributeName);
if (tempVal != null) {
value = tempVal;
}
@@ -283,7 +283,7 @@ public class ServiceEventHandler impleme
// then session
if (UtilValidate.isEmpty(value)) {
- Object tempVal = request.getSession().getAttribute(name);
+ Object tempVal = request.getSession().getAttribute(UtilValidate.isEmpty(modelParam.sessionAttributeName) ? name : modelParam.sessionAttributeName);
if (tempVal != null) {
value = tempVal;
}