Modified: ofbiz/site/dtds/simple-methods.xsd
URL: http://svn.apache.org/viewvc/ofbiz/site/dtds/simple-methods.xsd?view=diff&rev=494724&r1=494723&r2=494724 ============================================================================== --- ofbiz/site/dtds/simple-methods.xsd (original) +++ ofbiz/site/dtds/simple-methods.xsd Tue Jan 9 21:45:00 2007 @@ -123,17 +123,17 @@ <xs:element name="simple-method"> <xs:annotation> <xs:documentation> - A simple method can be called in either an event context from the Control - Servlet (or another event) or in a service context through the Service - Engine, or any other component that has access to a service dispatcher. - - The field-to-request and field-to-session elements will be IGNORED when - called in a service context. So, they are ONLY used when called in an event context. - - The field-to-result elements will be ignored in an event context, ie only used in a service. - - The parameter-map-name env entry will contain the HttpRequest parameters for - running in an event context and and the input context when running in a service. + A simple method can be called in either an event context from the Control + Servlet (or another event) or in a service context through the Service + Engine, or any other component that has access to a service dispatcher. + + The field-to-request and field-to-session elements will be IGNORED when + called in a service context. So, they are ONLY used when called in an event context. + + The field-to-result elements will be ignored in an event context, ie only used in a service. + + The parameter-map-name env entry will contain the HttpRequest parameters for + running in an event context and and the input context when running in a service. </xs:documentation> </xs:annotation> <xs:complexType> @@ -142,9 +142,28 @@ </xs:complexType> </xs:element> <xs:attributeGroup name="attlist.simple-method"> - <xs:attribute type="xs:string" name="method-name" use="required"/> - <xs:attribute type="xs:string" name="short-description" use="required"/> + <xs:attribute type="xs:string" name="method-name" use="required"> + <xs:annotation> + <xs:documentation> + A name (preferably a legal Java identifier) for this method. + This name must be unique for the XML file it is in as it will be used to reference this method externally. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="short-description" use="required"> + <xs:annotation> + <xs:documentation> + A short description of the method for certain system error messages. + </xs:documentation> + </xs:annotation> + </xs:attribute> <xs:attribute name="login-required" default="true"> + <xs:annotation> + <xs:documentation> + Is a logged in user (UserLogin object, or login.username and login.password Strings) required to run this method? + "true" or "false" (defauts to "true") + </xs:documentation> + </xs:annotation> <xs:simpleType> <xs:restriction base="xs:token"> <xs:enumeration value="true"/> @@ -153,6 +172,12 @@ </xs:simpleType> </xs:attribute> <xs:attribute name="use-transaction" default="true"> + <xs:annotation> + <xs:documentation> + Create a transaction if none exists for this thread? + "true" or "false" (defauts to "true") + </xs:documentation> + </xs:annotation> <xs:simpleType> <xs:restriction base="xs:token"> <xs:enumeration value="true"/> @@ -160,46 +185,211 @@ </xs:restriction> </xs:simpleType> </xs:attribute> - <xs:attribute type="xs:string" name="default-error-code" default="error"/> - <xs:attribute type="xs:string" name="default-success-code" default="success"/> - <xs:attribute type="xs:string" name="parameter-map-name" default="parameters"/> - <xs:attribute type="xs:string" name="event-request-object-name" default="request"/> - <xs:attribute type="xs:string" name="event-response-object-name" default="response"/> - <xs:attribute type="xs:string" name="event-response-code-name" default="_response_code_"/> - <xs:attribute type="xs:string" name="event-error-message-name" default="_error_message_"/> - <xs:attribute type="xs:string" name="event-event-message-name" default="_event_message_"/> - <xs:attribute type="xs:string" name="service-response-message-name" default="responseMessage"/> - <xs:attribute type="xs:string" name="service-error-message-name" default="errorMessage"/> - <xs:attribute type="xs:string" name="service-error-message-list-name" default="errorMessageList"/> - <xs:attribute type="xs:string" name="service-error-message-map-name" default="errorMessageMap"/> - <xs:attribute type="xs:string" name="service-success-message-name" default="successMessage"/> - <xs:attribute type="xs:string" name="service-success-message-list-name" default="successMessageList"/> - <xs:attribute type="xs:string" name="locale-name" default="locale"/> - <xs:attribute type="xs:string" name="delegator-name" default="delegator"/> - <xs:attribute type="xs:string" name="security-name" default="security"/> - <xs:attribute type="xs:string" name="dispatcher-name" default="dispatcher"/> - <xs:attribute type="xs:string" name="user-login-name" default="userLogin"/> + <xs:attribute type="xs:string" name="default-error-code" default="error"> + <xs:annotation> + <xs:documentation> + The default error return code. (defauts to "error") + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="default-success-code" default="success"> + <xs:annotation> + <xs:documentation> + The default success return code. (defauts to "success") + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="parameter-map-name" default="parameters"> + <xs:annotation> + <xs:documentation> + As event: copy of request parameters. + As service: incoming context. + (defauts to "parameters") + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="event-request-object-name" default="request"> + <xs:annotation> + <xs:documentation> + As event only (defauts to "request") + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="event-response-object-name" default="response"> + <xs:annotation> + <xs:documentation> + As event only (defauts to "response") + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="event-response-code-name" default="_response_code_"> + <xs:annotation> + <xs:documentation> + As event only (defauts to "_response_code") + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="event-error-message-name" default="_error_message_"> + <xs:annotation> + <xs:documentation> + As event only (defauts to "_error_message_") + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="event-event-message-name" default="_event_message_"> + <xs:annotation> + <xs:documentation> + As event only (defauts to "_event_message_") + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="service-response-message-name" default="responseMessage"> + <xs:annotation> + <xs:documentation> + As service only (defauts to "responseMessage") + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="service-error-message-name" default="errorMessage"> + <xs:annotation> + <xs:documentation> + As service only (defauts to "errorMessage") + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="service-error-message-list-name" default="errorMessageList"> + <xs:annotation> + <xs:documentation> + As service only (defauts to "errorMessageList") + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="service-error-message-map-name" default="errorMessageMap"> + <xs:annotation> + <xs:documentation> + As service only (defauts to "errorMessageMap") + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="service-success-message-name" default="successMessage"> + <xs:annotation> + <xs:documentation> + As service only (defauts to "successMessage") + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="service-success-message-list-name" default="successMessageList"> + <xs:annotation> + <xs:documentation> + As service only (defauts to "successMessageList") + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="locale-name" default="locale"> + <xs:annotation> + <xs:documentation> + Name of locale variable (defauts to "locale") + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="delegator-name" default="delegator"> + <xs:annotation> + <xs:documentation> + A GenericDelegator object to use in the method (defauts to "delegator") + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="security-name" default="security"> + <xs:annotation> + <xs:documentation> + A Security object to use in the method (defauts to "security") + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="dispatcher-name" default="dispatcher"> + <xs:annotation> + <xs:documentation> + A LocalDispatcher object to use in the method (defauts to "dispatcher") + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="user-login-name" default="userLogin"> + <xs:annotation> + <xs:documentation> + Name of user login variable (defauts to "userLogin") + </xs:documentation> + </xs:annotation> + </xs:attribute> </xs:attributeGroup> <xs:element name="call-map-processor" substitutionGroup="CallOperations"> <xs:annotation> <xs:documentation> - If both an external and an inline map-processor are specified, the external - one will be called first, allowing the inline one to override its behavior + The call-map-processor tag invokes a simple map processor from an existing map, creating a new map or adding to an existing one + if the named out-map already exists. Resulting messages are added to the named list, and a new list is created if a list with + the given name does not yet exist. Note that all lists and maps exist in the same context and must have unique names. + + An inline simple-map-processor can be used by putting a simple-map-processor tag under the call-map-processor tag. + + If both an external and an inline map-processor are specified, the external + one will be called first, allowing the inline one to override its behavior. </xs:documentation> </xs:annotation> <xs:complexType> <xs:sequence> - <xs:element minOccurs="0" ref="simple-map-processor"/> + <xs:element minOccurs="0" ref="simple-map-processor"> + <xs:annotation> + <xs:documentation> + Uses the same definition as the simple-map-processor in the context of a simple-map-processors XML file. + Allows for an inlined simple-map-processor. + </xs:documentation> + </xs:annotation> + </xs:element> </xs:sequence> <xs:attributeGroup ref="attlist.call-map-processor"/> </xs:complexType> </xs:element> <xs:attributeGroup name="attlist.call-map-processor"> - <xs:attribute type="xs:string" name="xml-resource"/> - <xs:attribute type="xs:string" name="processor-name"/> - <xs:attribute type="xs:string" name="in-map-name" use="required"/> - <xs:attribute type="xs:string" name="out-map-name" use="required"/> - <xs:attribute type="xs:string" name="error-list-name" default="error_list"/> + <xs:attribute type="xs:string" name="xml-resource"> + <xs:annotation> + <xs:documentation> + The full path and filename on the classpath of the XML file which contains an external map processor to execute. + This is only required if an external map processor is desired. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="processor-name"> + <xs:annotation> + <xs:documentation> + The name of the external map processor to execute in the specified xml-resource. + This is only required if an external map processor is desired. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="in-map-name" use="required"> + <xs:annotation> + <xs:documentation> + The name of a map in the method environment to use as the input map. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="out-map-name" use="required"> + <xs:annotation> + <xs:documentation> + The name of a map in the method environment to use as the output map. + Will be created if it does not exist already. + If already exists will be added to in place. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="error-list-name" default="error_list"> + <xs:annotation> + <xs:documentation> + The name of a list in the method environment that the error messages will be added to. + Will be created if it does not exist. + Defaults to "error_list". + </xs:documentation> + </xs:annotation> + </xs:attribute> </xs:attributeGroup> <xs:element name="set-service-fields" substitutionGroup="CallOperations"> <xs:complexType> @@ -214,8 +404,11 @@ <xs:element name="call-service" substitutionGroup="CallOperations"> <xs:annotation> <xs:documentation> - The result-to-request and result-to-session elements will be IGNORED when - called in a service context. So, they are ONLY used when called in an event context. + The call-service tag invokes a service through the Service Engine. + If the specified error code is returned from the service, the event is aborted and the transaction in the current thread is rolled back. Otherwise, the remaining operations are invoked. + + The result-to-request and result-to-session elements will be IGNORED when + called in a service context. So, they are ONLY used when called in an event context. </xs:documentation> </xs:annotation> <xs:complexType> @@ -243,6 +436,11 @@ <xs:attribute type="xs:string" name="in-map-name"/> <xs:attribute name="include-user-login" default="true"> <xs:simpleType> + <xs:annotation> + <xs:documentation> + Defaults to "true". + </xs:documentation> + </xs:annotation> <xs:restriction base="xs:token"> <xs:enumeration value="true"/> <xs:enumeration value="false"/> @@ -251,14 +449,31 @@ </xs:attribute> <xs:attribute name="break-on-error" default="true"> <xs:simpleType> + <xs:annotation> + <xs:documentation> + Defaults to "true". + </xs:documentation> + </xs:annotation> <xs:restriction base="xs:token"> <xs:enumeration value="true"/> <xs:enumeration value="false"/> </xs:restriction> </xs:simpleType> </xs:attribute> - <xs:attribute type="xs:string" name="error-code" default="error"/> - <xs:attribute type="xs:string" name="success-code" default="success"/> + <xs:attribute type="xs:string" name="error-code" default="error"> + <xs:annotation> + <xs:documentation> + Defaults to "error". + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="success-code" default="success"> + <xs:annotation> + <xs:documentation> + Defaults to "success". + </xs:documentation> + </xs:annotation> + </xs:attribute> </xs:attributeGroup> <xs:element name="error-prefix"> <xs:complexType mixed="true"> @@ -334,9 +549,9 @@ <xs:element name="result-to-result"> <xs:annotation> <xs:documentation> - NOTE that these attributes are somewhat confusing: result-name is the name of the field in the result of this service call that the value comes FROM; - service-result-name is the name of the field in the result of this simple-method called as a service where the value goes TO; - in other words FROM result-name and TO service-result-name + NOTE that these attributes are somewhat confusing: result-name is the name of the field in the result of this service call that the value comes FROM; + service-result-name is the name of the field in the result of this simple-method called as a service where the value goes TO; + in other words FROM result-name and TO service-result-name. </xs:documentation> </xs:annotation> <xs:complexType> @@ -350,9 +565,9 @@ <xs:element name="call-service-asynch" substitutionGroup="CallOperations"> <xs:annotation> <xs:documentation> - Calls a service asynchronously and ignores the result, so no return messages - are used; that doesn't mean no errors will result, but they would just be - system errors like database failures, etc which all have system error messages. + Calls a service asynchronously and ignores the result, so no return messages + are used; that doesn't mean no errors will result, but they would just be + system errors like database failures, etc. which all have system error messages. </xs:documentation> </xs:annotation> <xs:complexType> @@ -364,6 +579,11 @@ <xs:attribute type="xs:string" name="in-map-name"/> <xs:attribute name="include-user-login" default="true"> <xs:simpleType> + <xs:annotation> + <xs:documentation> + Defaults to "true". + </xs:documentation> + </xs:annotation> <xs:restriction base="xs:token"> <xs:enumeration value="true"/> <xs:enumeration value="false"/> @@ -374,16 +594,16 @@ <xs:element name="call-bsh" substitutionGroup="CallOperations"> <xs:annotation> <xs:documentation> - Runs an external bsh script from the classpath if resource is specified and - then runs the inlined bsh script if any is specified. - - The bsh context is the current simple-method environment including maps, lists - and special objects whose names are defined in the simple-method attributes. - - The current env cannot be modified, but if a Map is returned by the bsh block - the entries in the map will be put into the current env. - - Error messages go on the error list and are handled with the check-errors tag. + Runs an external bsh script from the classpath if resource is specified and + then runs the inlined bsh script if any is specified. + + The bsh context is the current simple-method environment including maps, lists + and special objects whose names are defined in the simple-method attributes. + + The current env cannot be modified, but if a Map is returned by the bsh block + the entries in the map will be put into the current env. + + Error messages go on the error list and are handled with the check-errors tag. </xs:documentation> </xs:annotation> <xs:complexType mixed="true"> @@ -392,169 +612,604 @@ </xs:element> <xs:attributeGroup name="attlist.call-bsh"> <xs:attribute type="xs:string" name="resource"/> - <xs:attribute type="xs:string" name="error-list-name" default="error_list"/> + <xs:attribute type="xs:string" name="error-list-name" default="error_list"> + <xs:annotation> + <xs:documentation> + Defaults to "error_list". + </xs:documentation> + </xs:annotation> + </xs:attribute> </xs:attributeGroup> <xs:element name="call-simple-method" substitutionGroup="CallOperations"> + <xs:annotation> + <xs:documentation> + The call-simple-method tag calls another simple-method in the same context as the current one. + In other words the called simple-method will have the same environment as the calling simple-method, + including all environment fields, and either the event or service objects that the calling simple-method was called with. + </xs:documentation> + </xs:annotation> <xs:complexType> <xs:attributeGroup ref="attlist.call-simple-method"/> </xs:complexType> </xs:element> <xs:attributeGroup name="attlist.call-simple-method"> - <xs:attribute type="xs:string" name="xml-resource"/> - <xs:attribute type="xs:string" name="method-name" use="required"/> + <xs:attribute type="xs:string" name="xml-resource"> + <xs:annotation> + <xs:documentation> + The full path and filename on the classpath of the XML file which contains an external simple-method to execute. + This is only required if a simple-method in a different file is desired. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="method-name" use="required"> + <xs:annotation> + <xs:documentation> + The name of the simple-method to execute in the specified xml-resource, + or in the current XML file if no xml-resource is specified. + </xs:documentation> + </xs:annotation> + </xs:attribute> </xs:attributeGroup> <!-- Operations to call Java methods and create Java objects --> <xs:element name="call-object-method" substitutionGroup="CallOperations"> + <xs:annotation> + <xs:documentation> + Calls a method on an existing object that exists in a field in the environment or in a map in the environment. + + The string and field sub-elements are passed to the method as arguments in the order they are specified. + If the sub-elements do not match the method arguments an error will be returned. + + The return value will be put in the named field if an value is returned and + if a field and optionally a map name are specified. + </xs:documentation> + </xs:annotation> <xs:complexType> <xs:choice minOccurs="0" maxOccurs="unbounded"> - <xs:element ref="string"/> - <xs:element ref="field"/> + <xs:element ref="string"> + <xs:annotation> + <xs:documentation> + Used to specify an inline String argument to the method call. + </xs:documentation> + </xs:annotation> + </xs:element> + <xs:element ref="field"> + <xs:annotation> + <xs:documentation> + Used to specify a field to be passed as an argument to the method call. + The field can be in a map in the environment or if no map-name is specified + then the field will come directly from the environment. + </xs:documentation> + </xs:annotation> + </xs:element> </xs:choice> <xs:attributeGroup ref="attlist.call-object-method"/> </xs:complexType> </xs:element> <xs:attributeGroup name="attlist.call-object-method"> - <xs:attribute type="xs:string" name="obj-field-name" use="required"/> - <xs:attribute type="xs:string" name="obj-map-name"/> - <xs:attribute type="xs:string" name="method-name" use="required"/> - <xs:attribute type="xs:string" name="ret-field-name"/> - <xs:attribute type="xs:string" name="ret-map-name"/> + <xs:attribute type="xs:string" name="obj-field-name" use="required"> + <xs:annotation> + <xs:documentation> + The name of the field the object is in that has the method to be called. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="obj-map-name"> + <xs:annotation> + <xs:documentation> + The name of the map the field of the object is in that has the method to be called. + If this is not specified the environment will be used to find the field in. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="method-name" use="required"> + <xs:annotation> + <xs:documentation> + The name of the method to call on the given object. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="ret-field-name"> + <xs:annotation> + <xs:documentation> + The name of the field to put the result in. + If not specified any return value will be ignored. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="ret-map-name"> + <xs:annotation> + <xs:documentation> + The name of the map the field of the return value is in. + If not specified but the field name is then the environment will be used to find the field in. + </xs:documentation> + </xs:annotation> + </xs:attribute> </xs:attributeGroup> <xs:element name="call-class-method" substitutionGroup="CallOperations"> + <xs:annotation> + <xs:documentation> + Calls a static method on a class. + + The string and field sub-elements are passed to the method as arguments in the order they are specified. + If the sub-elements do not match the method arguments an error will be returned. + + The return value will be put in the named field if an value is returned and if a + field and optionally a map name are specified. + </xs:documentation> + </xs:annotation> <xs:complexType> <xs:choice minOccurs="0" maxOccurs="unbounded"> - <xs:element ref="string"/> - <xs:element ref="field"/> + <xs:element ref="string"> + <xs:annotation> + <xs:documentation> + Used to specify an inline String argument to the method call. + </xs:documentation> + </xs:annotation> + </xs:element> + <xs:element ref="field"> + <xs:annotation> + <xs:documentation> + Used to specify a field to be passed as an argument to the method call. + The field can be in a map in the environment or if no map-name is specified then + the field will come directly from the environment. + </xs:documentation> + </xs:annotation> + </xs:element> </xs:choice> <xs:attributeGroup ref="attlist.call-class-method"/> </xs:complexType> </xs:element> <xs:attributeGroup name="attlist.call-class-method"> - <xs:attribute type="xs:string" name="class-name" use="required"/> - <xs:attribute type="xs:string" name="method-name" use="required"/> - <xs:attribute type="xs:string" name="ret-field-name"/> - <xs:attribute type="xs:string" name="ret-map-name"/> + <xs:attribute type="xs:string" name="class-name" use="required"> + <xs:annotation> + <xs:documentation> + The name of the class to call the static method on. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="method-name" use="required"> + <xs:annotation> + <xs:documentation> + The name of the static method to call on the given class. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="ret-field-name"> + <xs:annotation> + <xs:documentation> + The name of the field to put the result in. If not specified any return value will be ignored. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="ret-map-name"> + <xs:annotation> + <xs:documentation> + The name of the map the field of the return value is in. + If not specified but the field name is then the environment will be used to find the field in. + </xs:documentation> + </xs:annotation> + </xs:attribute> </xs:attributeGroup> <xs:element name="create-object" substitutionGroup="CallOperations"> + <xs:annotation> + <xs:documentation> + Creates an object of the given class and if the field-name is specified saves it in that field. + + The string and field sub-elements are passed to the constructor method as arguments in the order they are specified. + If the sub-elements do not match the constructor method arguments an error will be returned. + </xs:documentation> + </xs:annotation> <xs:complexType> <xs:choice minOccurs="0" maxOccurs="unbounded"> - <xs:element ref="string"/> - <xs:element ref="field"/> + <xs:element ref="field"> + <xs:annotation> + <xs:documentation> + Used to specify an inline String argument to the constructor method. + </xs:documentation> + </xs:annotation> + </xs:element> + <xs:element ref="string"> + <xs:annotation> + <xs:documentation> + Used to specify a field to be passed as an argument to the constructor method. + The field can be in a map in the environment or if no map-name is specified then + the field will come directly from the environment. + </xs:documentation> + </xs:annotation> + </xs:element> </xs:choice> <xs:attributeGroup ref="attlist.create-object"/> </xs:complexType> </xs:element> <xs:attributeGroup name="attlist.create-object"> - <xs:attribute type="xs:string" name="class-name" use="required"/> - <xs:attribute type="xs:string" name="field-name"/> - <xs:attribute type="xs:string" name="map-name"/> + <xs:attribute type="xs:string" name="class-name" use="required"> + <xs:annotation> + <xs:documentation> + The name of the class to construct an object of. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="field-name"> + <xs:annotation> + <xs:documentation> + The name of a field to put the new object in. + If not specified the object will be created but ignored after that. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="map-name"> + <xs:annotation> + <xs:documentation> + The name of the map the field will go in. + If not specified the field will be put in the environment. + </xs:documentation> + </xs:annotation> + </xs:attribute> </xs:attributeGroup> <!-- Operations to copy map fields in the current env to context specific containers --> <!-- Event specific operations --> <xs:element name="field-to-request" substitutionGroup="EventOperations"> + <xs:annotation> + <xs:documentation> + The field-to-request tag copies a field from a map to the specified servlet request attribute. + The tag is only used when the simple-method is called as an event, it is ignored otherwise. + </xs:documentation> + </xs:annotation> <xs:complexType> <xs:attributeGroup ref="attlist.field-to-request"/> </xs:complexType> </xs:element> <xs:attributeGroup name="attlist.field-to-request"> - <xs:attribute type="xs:string" name="map-name"/> - <xs:attribute type="xs:string" name="field-name" use="required"/> - <xs:attribute type="xs:string" name="request-name"/> + <xs:attribute type="xs:string" name="map-name"> + <xs:annotation> + <xs:documentation> + The name of the map in the method environment. + If not specified the field-name will be used to get the field from the method environment. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="field-name" use="required"> + <xs:annotation> + <xs:documentation> + The name (key) of the map field to use. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="request-name"> + <xs:annotation> + <xs:documentation> + The name of the request attribute to use. Defaults to the field-name. + </xs:documentation> + </xs:annotation> + </xs:attribute> </xs:attributeGroup> <xs:element name="field-to-session" substitutionGroup="EventOperations"> + <xs:annotation> + <xs:documentation> + The field-to-session tag copies a field from a map to the specified servlet session attribute. + The tag is only used when the simple-method is called as an event, it is ignored otherwise. + </xs:documentation> + </xs:annotation> <xs:complexType> <xs:attributeGroup ref="attlist.field-to-session"/> </xs:complexType> </xs:element> <xs:attributeGroup name="attlist.field-to-session"> - <xs:attribute type="xs:string" name="map-name"/> - <xs:attribute type="xs:string" name="field-name" use="required"/> - <xs:attribute type="xs:string" name="session-name"/> + <xs:attribute type="xs:string" name="map-name"> + <xs:annotation> + <xs:documentation> + The name of the map in the method environment. + If not specified the field-name will be used to get the field from the method environment. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="field-name" use="required"> + <xs:annotation> + <xs:documentation> + The name (key) of the map field to use. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="session-name"> + <xs:annotation> + <xs:documentation> + The name of the session attribute to use. Defaults to the field-name. + </xs:documentation> + </xs:annotation> + </xs:attribute> </xs:attributeGroup> <xs:element name="request-to-field" substitutionGroup="EventOperations"> + <xs:annotation> + <xs:documentation> + The request-to-field tag copies an attribute from the servlet request to a field of a map in the method environment. + The tag is only used when the simple-method is called as an event, it is ignored otherwise (except the default value, if specified). + </xs:documentation> + </xs:annotation> <xs:complexType> <xs:attributeGroup ref="attlist.request-to-field"/> </xs:complexType> </xs:element> <xs:attributeGroup name="attlist.request-to-field"> - <xs:attribute type="xs:string" name="map-name"/> - <xs:attribute type="xs:string" name="field-name" use="required"/> - <xs:attribute type="xs:string" name="default"/> - <xs:attribute type="xs:string" name="request-name"/> + <xs:attribute type="xs:string" name="map-name"> + <xs:annotation> + <xs:documentation> + The name of the map in the method environment. + If not specified the field-name will be used to set the field in the method environment. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="field-name" use="required"> + <xs:annotation> + <xs:documentation> + The name (key) of the map field to use. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="default"> + <xs:annotation> + <xs:documentation> + A default value to use if the request attribute is null or is a String and is empty. + This will also be used when NOT running as an event. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="request-name"> + <xs:annotation> + <xs:documentation> + The name of the request attribute to use. Defaults to the field-name. + </xs:documentation> + </xs:annotation> + </xs:attribute> </xs:attributeGroup> <xs:element name="request-parameters-to-list" substitutionGroup="EventOperations"> + <xs:annotation> + <xs:documentation> + The request-parameters-to-list tag appends a request parameter values from the servlet request to the specified list. + The tag is only used when the simple-method is called as an event, it is ignored otherwise. + </xs:documentation> + </xs:annotation> <xs:complexType> <xs:attributeGroup ref="attlist.request-parameters-to-list"/> </xs:complexType> </xs:element> <xs:attributeGroup name="attlist.request-parameters-to-list"> - <xs:attribute type="xs:string" name="request-name" use="required"/> - <xs:attribute type="xs:string" name="list-name"/> + <xs:attribute type="xs:string" name="request-name" use="required"> + <xs:annotation> + <xs:documentation> + The name of the request parameter values to use. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="list-name"> + <xs:annotation> + <xs:documentation> + The name of the list in the method environment that the request parameter values will be appended to. (default: request-name) + </xs:documentation> + </xs:annotation> + </xs:attribute> </xs:attributeGroup> <xs:element name="session-to-field" substitutionGroup="EventOperations"> + <xs:annotation> + <xs:documentation> + The session-to-field tag copies an attribute from the servlet session to a field of a map in the method environment. + The tag is only used when the simple-method is called as an event, it is ignored otherwise (except the default value, if specified). + </xs:documentation> + </xs:annotation> <xs:complexType> <xs:attributeGroup ref="attlist.session-to-field"/> </xs:complexType> </xs:element> <xs:attributeGroup name="attlist.session-to-field"> - <xs:attribute type="xs:string" name="map-name"/> - <xs:attribute type="xs:string" name="field-name" use="required"/> - <xs:attribute type="xs:string" name="default"/> - <xs:attribute type="xs:string" name="session-name"/> + <xs:attribute type="xs:string" name="map-name"> + <xs:annotation> + <xs:documentation> + The name of the map in the method environment. + If not specified the field-name will be used to set the field in the method environment. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="field-name" use="required"> + <xs:annotation> + <xs:documentation> + The name (key) of the map field to use. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="default"> + <xs:annotation> + <xs:documentation> + A default value to use if the session attribute is null or is a String and is empty. + This will also be used when NOT running as an event. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="session-name"> + <xs:annotation> + <xs:documentation> + The name of the session attribute to use. Defaults to the field-name. + </xs:documentation> + </xs:annotation> + </xs:attribute> </xs:attributeGroup> <xs:element name="webapp-property-to-field" substitutionGroup="EventOperations"> + <xs:annotation> + <xs:documentation> + The webapp-property-to-field tag copies a property value from a properties file in a ServletContext resource to a field. + The tag is only used when the simple-method is called as an event, it is ignored otherwise (except the default value, if specified). + </xs:documentation> + </xs:annotation> <xs:complexType> <xs:attributeGroup ref="attlist.webapp-property-to-field"/> </xs:complexType> </xs:element> <xs:attributeGroup name="attlist.webapp-property-to-field"> - <xs:attribute type="xs:string" name="resource" use="required"/> - <xs:attribute type="xs:string" name="property" use="required"/> - <xs:attribute type="xs:string" name="default"/> - <xs:attribute type="xs:string" name="field-name" use="required"/> - <xs:attribute type="xs:string" name="session-name"/> + <xs:attribute type="xs:string" name="resource" use="required"> + <xs:annotation> + <xs:documentation> + The resource location of the properties file inside the webapp, and relative to the root of the webapp (can be inside a war file). + An example of this is "/WEB-INF/myprops.properties". + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="property" use="required"> + <xs:annotation> + <xs:documentation> + The property whose value will be put in the field. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="default"> + <xs:annotation> + <xs:documentation> + A default value to use if the property value is null or empty. + This will also be used when NOT running as an event. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="field-name" use="required"> + <xs:annotation> + <xs:documentation> + The name of the map in the method environment. + If not specified the field-name will be used to set the field in the method environment. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="session-name"> + <xs:annotation> + <xs:documentation> + The name (key) of the map field to use. + </xs:documentation> + </xs:annotation> + </xs:attribute> </xs:attributeGroup> <!-- Service specific operations --> <xs:element name="field-to-result" substitutionGroup="ServiceOperations"> + <xs:annotation> + <xs:documentation> + The field-to-result tag copies a field from a map to the specified service result field. + The tag is only used when the simple-method is called as a service, it is ignored otherwise. + </xs:documentation> + </xs:annotation> <xs:complexType> <xs:attributeGroup ref="attlist.field-to-result"/> </xs:complexType> </xs:element> <xs:attributeGroup name="attlist.field-to-result"> - <xs:attribute type="xs:string" name="map-name"/> - <xs:attribute type="xs:string" name="field-name" use="required"/> - <xs:attribute type="xs:string" name="result-name"/> + <xs:attribute type="xs:string" name="map-name"> + <xs:annotation> + <xs:documentation> + The name of the map in the method environment. + If not specified the field-name will be used to get the field from the method environment. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="field-name" use="required"> + <xs:annotation> + <xs:documentation> + The name (key) of the map field to use. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="result-name"> + <xs:annotation> + <xs:documentation> + The name of the request attribute to use. Defaults to the field-name. + </xs:documentation> + </xs:annotation> + </xs:attribute> </xs:attributeGroup> <!-- Environment specific operations --> <xs:element name="map-to-map" substitutionGroup="EnvOperations"> + <xs:annotation> + <xs:documentation> + The map-to-map tag copies all fields from one map to another map. + </xs:documentation> + </xs:annotation> <xs:complexType> <xs:attributeGroup ref="attlist.map-to-map"/> </xs:complexType> </xs:element> <xs:attributeGroup name="attlist.map-to-map"> - <xs:attribute type="xs:string" name="map-name" use="required"/> - <xs:attribute type="xs:string" name="to-map-name"/> + <xs:attribute type="xs:string" name="map-name" use="required"> + <xs:annotation> + <xs:documentation> + The name of the map in the method environment the fields will come from. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="to-map-name"> + <xs:annotation> + <xs:documentation> + The name of the map in the method environment the fields will go to. If empty the fields will be copied to the environment. + </xs:documentation> + </xs:annotation> + </xs:attribute> </xs:attributeGroup> <xs:element name="field-to-list" substitutionGroup="EnvOperations"> + <xs:annotation> + <xs:documentation> + The field-to-list tag appends a field to the specified list. + </xs:documentation> + </xs:annotation> <xs:complexType> <xs:attributeGroup ref="attlist.field-to-list"/> </xs:complexType> </xs:element> <xs:attributeGroup name="attlist.field-to-list"> - <xs:attribute type="xs:string" name="map-name"/> - <xs:attribute type="xs:string" name="field-name" use="required"/> - <xs:attribute type="xs:string" name="list-name" use="required"/> + <xs:attribute type="xs:string" name="map-name"> + <xs:annotation> + <xs:documentation> + The name of the map in the method environment. If not specified the field-name will be used to get the field from the method environment. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="field-name" use="required"> + <xs:annotation> + <xs:documentation> + The name (key) of the map field to use. + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="list-name" use="required"> + <xs:annotation> + <xs:documentation> + The name of the list in the method environment that the object will be appended to. + </xs:documentation> + </xs:annotation> + </xs:attribute> </xs:attributeGroup> <xs:element name="list-to-list" substitutionGroup="EnvOperations"> + <xs:annotation> + <xs:documentation> + + </xs:documentation> + </xs:annotation> <xs:complexType> <xs:attributeGroup ref="attlist.list-to-list"/> </xs:complexType> </xs:element> <xs:attributeGroup name="attlist.list-to-list"> - <xs:attribute type="xs:string" name="list-name" use="required"/> - <xs:attribute type="xs:string" name="to-list-name" use="required"/> + <xs:attribute type="xs:string" name="list-name" use="required"> + <xs:annotation> + <xs:documentation> + + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="to-list-name" use="required"> + <xs:annotation> + <xs:documentation> + + </xs:documentation> + </xs:annotation> + </xs:attribute> </xs:attributeGroup> <xs:element name="order-map-list" substitutionGroup="EnvOperations"> + <xs:annotation> + <xs:documentation> + + </xs:documentation> + </xs:annotation> <xs:complexType> <xs:sequence> <xs:element maxOccurs="unbounded" ref="order-by"/> @@ -563,20 +1218,60 @@ </xs:complexType> </xs:element> <xs:attributeGroup name="attlist.order-map-list"> - <xs:attribute type="xs:string" name="list-name" use="required"/> + <xs:attribute type="xs:string" name="list-name" use="required"> + <xs:annotation> + <xs:documentation> + + </xs:documentation> + </xs:annotation> + </xs:attribute> </xs:attributeGroup> <xs:element name="set" substitutionGroup="EnvOperations"> + <xs:annotation> + <xs:documentation> + + </xs:documentation> + </xs:annotation> <xs:complexType> <xs:attributeGroup ref="attlist.set"/> </xs:complexType> </xs:element> <xs:attributeGroup name="attlist.set"> - <xs:attribute type="xs:string" name="field" use="required"/> - <xs:attribute type="xs:string" name="from-field"/> - <xs:attribute type="xs:string" name="value"/> - <xs:attribute type="xs:string" name="default-value"/> + <xs:attribute type="xs:string" name="field" use="required"> + <xs:annotation> + <xs:documentation> + + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="from-field"> + <xs:annotation> + <xs:documentation> + + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="value"> + <xs:annotation> + <xs:documentation> + + </xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute type="xs:string" name="default-value"> + <xs:annotation> + <xs:documentation> + + </xs:documentation> + </xs:annotation> + </xs:attribute> <xs:attribute name="type"> + <xs:annotation> + <xs:documentation> + + </xs:documentation> + </xs:annotation> <xs:simpleType> <xs:restriction base="xs:token"> <xs:enumeration value="PlainString"/> @@ -595,6 +1290,11 @@ </xs:simpleType> </xs:attribute> <xs:attribute name="set-if-null" default="false"> + <xs:annotation> + <xs:documentation> + + </xs:documentation> + </xs:annotation> <xs:simpleType> <xs:restriction base="xs:token"> <xs:enumeration value="true"/> @@ -603,6 +1303,11 @@ </xs:simpleType> </xs:attribute> <xs:attribute name="set-if-empty" default="true"> + <xs:annotation> + |
Free forum by Nabble | Edit this page |