org.kuali.rice.krad.util
Class KRADUtils

java.lang.Object
  extended by org.kuali.rice.krad.util.KRADUtils

public final class KRADUtils
extends Object

Miscellaneous Utility Methods.

Author:
Kuali Rice Team (rice.collab@kuali.org)

Method Summary
static void addAttachmentToResponse(javax.servlet.http.HttpServletResponse response, InputStream inputStream, String contentType, String fileName, long fileSize)
          Adds the header and content of an attachment to the response.
static boolean areDifferentDomains(String firstDomain, String secondDomain)
          Determines whether two URLs point at the same domain.
static String buildAttributeTitleString(String prependText, Class<?> element, Map<String,String> keyValueMap)
          Helper method for building title text for an element and a map of key/value pairs,
static String buildMapParameterString(Map<String,String> map)
          Builds a string from the given map by joining each entry with a comma and each key/value pair with a colon
static String buildViewUrl(String baseUrl, String controllerMapping, String viewId)
          Helper method for building a URL that will invoke the given controller and render the given KRAD view
static String clean(String string)
          Removes all query characters from a string.
static void cleanRequestParameters(Properties requestParameters)
          Removes parameters from the given properties object that are request specific (useful when manupulating the current URL to invoke something else)
static Map<String,Object> coerceRequestParameterTypes(Class<?> dataObjectClass, Map<String,String> parameters)
          This method converts request parameters coming in as String to native types in case of Boolean, Number or java.sql.Date.
static boolean containsSensitiveDataPatternMatch(String fieldValue)
          Check if data might be sensitive
static String convertDecimalIntoInteger(KualiDecimal decimalNumber)
          Convert the given money amount into an integer string.
static Properties convertMapToProperties(Map<String,String> parameters)
          Utility method to convert a Map to a Properties object
static Properties convertRequestMapToProperties(Map<String,String[]> requestParameters)
          Utility method to convert a Request Parameters Map to a Properties object
static List<String> convertStringParameterToList(String parameter)
          Parses a string that is in list format (commas separating list entries) to a new List instance
static Map<String,String> convertStringParameterToMap(String parameter)
          Parses a string that is in map format (commas separating map entries, colon separates map key/value) to a new map instance
static String convertToHTMLAttributeSafeString(String message)
          Helper method to change common characters into HTML attribute safe characters
static
<T> T
createNewObjectFromClass(Class<T> clazz)
          This method safely creates a object from a class Convenience method to create new object and throw a runtime exception if it cannot If the class is an ExternalizableBusinessObject, this method will determine the interface for the EBO and query the appropriate module service to create a new instance.
static Object createObject(Class<?> clazz, Class<?>[] argumentClasses, Object[] argumentValues)
           
static Class easyGetPropertyType(Object object, String propertyName)
          LegacyCase - This method simply uses PojoPropertyUtilsBean logic to get the Class of a Class property.
static String generateRowCssClassString(Map<String,String> conditionalRowCssClasses, int lineIndex, boolean isOdd, Map<String,Object> lineContext, ExpressionEvaluator expressionEvaluator)
          Get the rowCss for the line specified, by evaluating the conditionalRowCssClasses map for that row
static String generateUniqueViewTitle(UifFormBase form, View view)
          Attempts to generate a unique view title by combining the View's headerText with the title attribute for the dataObjectClass found through the DataObjectMetaDataService.
static String getBusinessTitleForClass(Class<? extends Object> clazz)
          Retrieve the title for a business object class
static List<String> getFileNameFromPath(List<String> fullFileNames)
          Picks off the filename from the full path
static String getFullURL(javax.servlet.http.HttpServletRequest request)
          Get the full url for a request (requestURL + queryString)
static Integer getIntegerValue(String numberStr)
          Return the integer value of a string
static Map<String,String> getMapFromParameterString(String parameterString)
          Parses the given string into a Map by splitting on the comma to get the map entries and within each entry splitting by colon to get the key/value pairs
static String getMessageText(ErrorMessage errorMessage, boolean processPrefixSuffix)
          Gets the message associated with ErrorMessage object passed in, using message service.
static Map<String,String> getNamespaceAndActionClass(Class<? extends Object> clazz)
           
static Map<String,String> getNamespaceAndComponentFullName(Class<? extends Object> clazz)
           
static Map<String,String> getNamespaceAndComponentSimpleName(Class<? extends Object> clazz)
           
static String getNamespaceCode(Class<? extends Object> clazz)
          TODO this method will probably need to be exposed in a public KRADUtils class as it is used by several different modules.
static String getNestedAttributePrefix(String attributeName)
          Returns the prefix of a nested attribute name, or the empty string if the attribute name is not nested.
static String getNestedAttributePrimitive(String attributeName)
          Returns the primitive part of an attribute name string.
static Object getNestedValue(Object bo, String fieldName)
          This method safely extracts either simple values OR nested values.
static Map<String,String> getParametersFromRequest(List<String> parameterNames, Class<?> parentObjectClass, Map<String,String> requestParameters)
          Retrieves parameter values from the request that match the requested names.
static Map<String,String> getPropertyKeyValuesFromDataObject(List<String> propertyNames, List<String> securePropertyNames, Object dataObject)
          Builds a Map containing a key/value pair for each property given in the property names list, general security is checked to determine if the value needs to be encrypted along with applying formatting to the value
static Map<String,String> getPropertyKeyValuesFromDataObject(List<String> propertyNames, Object dataObject)
          Builds a Map containing a key/value pair for each property given in the property names list, general security is checked to determine if the value needs to be encrypted along with applying formatting to the value
static Boolean getRequestParameterAsBoolean(javax.servlet.ServletRequest request, String parameterName)
          Retrieves value for the given parameter name in the request and attempts to convert to a Boolean using the BooleanFormatter
static String getRequestStringFromMap(Map<String,String> requestParameters)
          Generate the request parameter portion of the url based on the map of key value pairs passed in
static String getSimpleFieldValue(Object model, Field field)
          Attempts to extract a string value out of the field passed in, varies depending on field type
static UserSession getUserSessionFromRequest(javax.servlet.http.HttpServletRequest request)
          Gets the UserSession object from the HttpServletRequest object's associated session.
static Object hydrateAttributeValue(Class<?> propertyType, String attributeValue)
          Attempt to coerce a String attribute value to the given propertyType.
static boolean isNotNull(Object object)
          This method is a confirms if object is not null, and unproxies if necessary to determine this
static boolean isNull(Object object)
          This method is a confirms if object is null, and unproxies if necessary to determine this
static boolean isProductionEnvironment()
          Check if current deployment is the production environment
static String joinWithQuotes(List<String> list)
          Creates a comma separated String representation of the given list.
static void logErrors()
          Logs the error messages if any in the message map
static Class materializeClassForProxiedObject(Object object)
          Attempts to find the Class for the given potentially proxied object
static void materializeObjects(Collection possiblyProxiedObjects)
          This method runs the KRADUtils.isNotNull() method for each item in a list of BOs.
static void setObjectProperty(Object bo, String propertyName, Class propertyType, Object propertyValue)
          Sets the property of an object with the given value.
static void setObjectProperty(Object bo, String propertyName, Object propertyValue)
          Sets the property of an object with the given value.
static String stripXSSPatterns(String value)
          Strips out common patterns used in cross side scripting.
static String[] stripXSSPatterns(String[] values)
          Strips out common patterns used in cross side scripting.
static void syncClientSideStateForComponent(Component component, Map<String,Object> clientSideState)
          Updates the properties of the given component instance with the value found from the corresponding map of client state (if found)
static Map<String,String> translateRequestParameterMap(Map<String,String[]> requestParameters)
          Translates the given Map of String keys and String array values to a Map of String key and values.
static String translateToMapSafeKey(String key)
          Translates characters in the given string like brackets that will cause problems with binding to characters that do not affect the binding
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getBusinessTitleForClass

public static final String getBusinessTitleForClass(Class<? extends Object> clazz)
Retrieve the title for a business object class

The title is a nicely formatted version of the simple class name.

Parameters:
clazz - business object class
Returns:
title of the business object class

getFileNameFromPath

public static final List<String> getFileNameFromPath(List<String> fullFileNames)
Picks off the filename from the full path

The different OS path separators are being taken into consideration.

Parameters:
fullFileNames - file name with path
Returns:
file name

convertDecimalIntoInteger

public static final String convertDecimalIntoInteger(KualiDecimal decimalNumber)
Convert the given money amount into an integer string.

Since the return string cannot have decimal point, multiplies the amount by 100 so the decimal places are not lost, for example, 320.15 is converted into 32015.

Parameters:
decimalNumber - decimal number to be converted
Returns:
an integer string of the given money amount through multiplying by 100 and removing the fraction portion.

getIntegerValue

public static Integer getIntegerValue(String numberStr)
Return the integer value of a string

If the string contains a decimal value everything after the decimal point is dropped.

Parameters:
numberStr - string
Returns:
integer representation of the given string

hydrateAttributeValue

public static Object hydrateAttributeValue(Class<?> propertyType,
                                           String attributeValue)
Attempt to coerce a String attribute value to the given propertyType. If the transformation can't be made, either because the propertyType is null or because the transformation required exceeds this method's very small bag of tricks, then null is returned.

Parameters:
propertyType - the Class to coerce the attributeValue to
attributeValue - the String value to coerce
Returns:
an instance of the propertyType class, or null the transformation can't be made.

createObject

public static Object createObject(Class<?> clazz,
                                  Class<?>[] argumentClasses,
                                  Object[] argumentValues)

joinWithQuotes

public static String joinWithQuotes(List<String> list)
Creates a comma separated String representation of the given list.

For example 'a','b',c'.

Parameters:
list -
Returns:
the joined String, empty if the list is null or has no elements

getNamespaceCode

public static String getNamespaceCode(Class<? extends Object> clazz)
TODO this method will probably need to be exposed in a public KRADUtils class as it is used by several different modules. That will have to wait until ModuleService and KualiModuleService are moved to core though.

Parameters:
clazz - class to get a namespace code for
Returns:
namespace code

getNamespaceAndComponentSimpleName

public static Map<String,String> getNamespaceAndComponentSimpleName(Class<? extends Object> clazz)

getNamespaceAndComponentFullName

public static Map<String,String> getNamespaceAndComponentFullName(Class<? extends Object> clazz)

getNamespaceAndActionClass

public static Map<String,String> getNamespaceAndActionClass(Class<? extends Object> clazz)

convertStringParameterToMap

public static Map<String,String> convertStringParameterToMap(String parameter)
Parses a string that is in map format (commas separating map entries, colon separates map key/value) to a new map instance

Parameters:
parameter - - string parameter to parse
Returns:
Map instance populated from string parameter

convertStringParameterToList

public static List<String> convertStringParameterToList(String parameter)
Parses a string that is in list format (commas separating list entries) to a new List instance

Parameters:
parameter - - string parameter to parse
Returns:
List instance populated from string parameter

translateToMapSafeKey

public static String translateToMapSafeKey(String key)
Translates characters in the given string like brackets that will cause problems with binding to characters that do not affect the binding

Parameters:
key - - string to translate
Returns:
String translated string

buildMapParameterString

public static String buildMapParameterString(Map<String,String> map)
Builds a string from the given map by joining each entry with a comma and each key/value pair with a colon

Parameters:
map - - map instance to build string for
Returns:
String of map entries

getMapFromParameterString

public static Map<String,String> getMapFromParameterString(String parameterString)
Parses the given string into a Map by splitting on the comma to get the map entries and within each entry splitting by colon to get the key/value pairs

Parameters:
parameterString - - string to parse into map
Returns:
Map map from string

getRequestParameterAsBoolean

public static Boolean getRequestParameterAsBoolean(javax.servlet.ServletRequest request,
                                                   String parameterName)
Retrieves value for the given parameter name in the request and attempts to convert to a Boolean using the BooleanFormatter

Parameters:
request - - servlet request containing parameters
parameterName - - name of parameter to retrieve value for
Returns:
Boolean set to value of parameter, or null if parameter was not found in request

translateRequestParameterMap

public static Map<String,String> translateRequestParameterMap(Map<String,String[]> requestParameters)
Translates the given Map of String keys and String array values to a Map of String key and values. If the String array contains more than one value, the single string is built by joining the values with the vertical bar character

Parameters:
requestParameters - - Map of request parameters to translate
Returns:
Map translated Map

getParametersFromRequest

public static Map<String,String> getParametersFromRequest(List<String> parameterNames,
                                                          Class<?> parentObjectClass,
                                                          Map<String,String> requestParameters)
Retrieves parameter values from the request that match the requested names. In addition, based on the object class an authorization check is performed to determine if the values are secure and should be decrypted. If true, the value is decrypted before returning

Parameters:
parameterNames - - names of the parameters whose values should be retrieved from the request
parentObjectClass - - object class that contains the parameter names as properties and should be consulted for security checks
requestParameters - - all request parameters to pull from
Returns:
Map populated with parameter name/value pairs pulled from the request

getPropertyKeyValuesFromDataObject

public static Map<String,String> getPropertyKeyValuesFromDataObject(List<String> propertyNames,
                                                                    Object dataObject)
Builds a Map containing a key/value pair for each property given in the property names list, general security is checked to determine if the value needs to be encrypted along with applying formatting to the value

Parameters:
propertyNames - - list of property names to get key/value pairs for
dataObject - - object instance containing the properties for which the values will be pulled
Returns:
Map containing entry for each property name with the property name as the map key and the property value as the value

getPropertyKeyValuesFromDataObject

public static Map<String,String> getPropertyKeyValuesFromDataObject(List<String> propertyNames,
                                                                    List<String> securePropertyNames,
                                                                    Object dataObject)
Builds a Map containing a key/value pair for each property given in the property names list, general security is checked to determine if the value needs to be encrypted along with applying formatting to the value

Parameters:
propertyNames - - list of property names to get key/value pairs for
securePropertyNames - - list of secure property names to match for encryption
dataObject - - object instance containing the properties for which the values will be pulled
Returns:
Map containing entry for each property name with the property name as the map key and the property value as the value

convertMapToProperties

public static Properties convertMapToProperties(Map<String,String> parameters)
Utility method to convert a Map to a Properties object

Parameters:
parameters - - map to convert
Returns:
Properties object containing all the map entries

convertRequestMapToProperties

public static Properties convertRequestMapToProperties(Map<String,String[]> requestParameters)
Utility method to convert a Request Parameters Map to a Properties object

Multiple values for a parameter are joined together with comma delimiter

Parameters:
requestParameters - - map to convert
Returns:
Properties object containing all the map entries

coerceRequestParameterTypes

public static Map<String,Object> coerceRequestParameterTypes(Class<?> dataObjectClass,
                                                             Map<String,String> parameters)
This method converts request parameters coming in as String to native types in case of Boolean, Number or java.sql.Date. For boolean the conversion is performed only if an @Converter annotation is set on the JPA entity field.

Parameters:
dataObjectClass - - business object class
parameters - - map of request parameters with field values as String for the fields in the dataObjectClass
Returns:
Map converted values

containsSensitiveDataPatternMatch

public static boolean containsSensitiveDataPatternMatch(String fieldValue)
Check if data might be sensitive

The sensitivity of the data is checked by matching it against the sensitive data patterns that are specified in the system parameter table.

Parameters:
fieldValue - data to be checked for sensitivity
Returns:
true if the data matches the sensitive data pattern, false otherwise

stripXSSPatterns

public static String[] stripXSSPatterns(String[] values)
Strips out common patterns used in cross side scripting.

Parameters:
values - string array to strip patterns from
Returns:
cleaned string array

stripXSSPatterns

public static String stripXSSPatterns(String value)
Strips out common patterns used in cross side scripting.

Parameters:
value - string to strip patterns from
Returns:
cleaned string

getUserSessionFromRequest

public static final UserSession getUserSessionFromRequest(javax.servlet.http.HttpServletRequest request)
Gets the UserSession object from the HttpServletRequest object's associated session.

In some cases (different threads) the UserSession cannot be retrieved from GlobalVariables but can still be accessed via the session object

Parameters:
request - servlet request
Returns:
user session found in the request's servlet session

isProductionEnvironment

public static boolean isProductionEnvironment()
Check if current deployment is the production environment

Returns:
true if the deploy environment is production, false otherwise

getMessageText

public static String getMessageText(ErrorMessage errorMessage,
                                    boolean processPrefixSuffix)
Gets the message associated with ErrorMessage object passed in, using message service. The prefix and suffix will be appended to the retrieved message if processPrefixSuffix is true and if those settings are set on the ErrorMessage passed in.

Parameters:
errorMessage - the ErrorMessage object containing the message key(s)
processPrefixSuffix - if true appends the prefix and suffix to the message if they exist on ErrorMessage
Returns:
the converted/retrieved message

logErrors

public static void logErrors()
Logs the error messages if any in the message map


getRequestStringFromMap

public static String getRequestStringFromMap(Map<String,String> requestParameters)
Generate the request parameter portion of the url based on the map of key value pairs passed in

Parameters:
requestParameters - the request parameters to use in the string
Returns:
a request parameter string starting with "?" with "&" separators, or blank if the mapped passed in is blank

addAttachmentToResponse

public static void addAttachmentToResponse(javax.servlet.http.HttpServletResponse response,
                                           InputStream inputStream,
                                           String contentType,
                                           String fileName,
                                           long fileSize)
                                    throws IOException
Adds the header and content of an attachment to the response.

Parameters:
response - HttpServletResponse instance
contentType - the content type of the attachment
inputStream - the content of the attachment
fileName - the file name of the attachment
fileSize - the size of the attachment
Throws:
IOException - if attachment to the results fails due to an IO error

buildViewUrl

public static String buildViewUrl(String baseUrl,
                                  String controllerMapping,
                                  String viewId)
Helper method for building a URL that will invoke the given controller and render the given KRAD view

Parameters:
baseUrl - base url (domain, port)
controllerMapping - mapping for the controller that should be invoked
viewId - id for the view that should be rendered
Returns:
url for invoking the view

cleanRequestParameters

public static void cleanRequestParameters(Properties requestParameters)
Removes parameters from the given properties object that are request specific (useful when manupulating the current URL to invoke something else)

Parameters:
requestParameters - properties instance containing the parameters to clean

getFullURL

public static String getFullURL(javax.servlet.http.HttpServletRequest request)
Get the full url for a request (requestURL + queryString)

Parameters:
request - the request
Returns:
the fullUrl

areDifferentDomains

public static boolean areDifferentDomains(String firstDomain,
                                          String secondDomain)
Determines whether two URLs point at the same domain.

Parameters:
firstDomain - first URL string to compare
secondDomain - second URL string to compare
Returns:
true if the domains are different, false otherwise

generateUniqueViewTitle

public static String generateUniqueViewTitle(UifFormBase form,
                                             View view)
Attempts to generate a unique view title by combining the View's headerText with the title attribute for the dataObjectClass found through the DataObjectMetaDataService. If the title attribute cannot be found, just the headerText is returned.

Parameters:
form - the form
view - the view
Returns:
the headerText with the title attribute in parenthesis or just the headerText if it title attribute cannot be determined

buildAttributeTitleString

public static String buildAttributeTitleString(String prependText,
                                               Class<?> element,
                                               Map<String,String> keyValueMap)
Helper method for building title text for an element and a map of key/value pairs,

Each key of the key value map is assumed to be an attribute for the given element class. The label is then retrieved for the attribute from the data dictionary and used in the title (instead of the key)

Parameters:
prependText - text to prepend to the title
element - element class the title is being generated for, used as the parent for getting the key labels
keyValueMap - map of key value pairs to add to the title text
Returns:
title string

getSimpleFieldValue

public static String getSimpleFieldValue(Object model,
                                         Field field)
Attempts to extract a string value out of the field passed in, varies depending on field type

If the field is a dataField, it will use its propertyName to retrieve a value, otherwise it will try to retrieve textual content out of various component types. If the field is a FieldGroup, only the first component's determined value will be used. This function is used for sorting.

Parameters:
model - the current model
field - the field to get a value from
Returns:
the field's String value, false if it cant be determined

convertToHTMLAttributeSafeString

public static String convertToHTMLAttributeSafeString(String message)
Helper method to change common characters into HTML attribute safe characters

Parameters:
message - the string to convert
Returns:
the converted string with quotes, sing quotes, and slash replaced

generateRowCssClassString

public static String generateRowCssClassString(Map<String,String> conditionalRowCssClasses,
                                               int lineIndex,
                                               boolean isOdd,
                                               Map<String,Object> lineContext,
                                               ExpressionEvaluator expressionEvaluator)
Get the rowCss for the line specified, by evaluating the conditionalRowCssClasses map for that row

Parameters:
conditionalRowCssClasses - the conditionalRowCssClass map, where key is the condition and value is the class(es)
lineIndex - the line/row index
isOdd - true if the row is considered odd
lineContext - the lineContext for expressions, pass null if not applicable
expressionEvaluator - the expressionEvaluator, pass null if not applicable
Returns:
row csss class String for the class attribute of this row

easyGetPropertyType

public static Class easyGetPropertyType(Object object,
                                        String propertyName)
                                 throws IllegalAccessException,
                                        NoSuchMethodException,
                                        InvocationTargetException
LegacyCase - This method simply uses PojoPropertyUtilsBean logic to get the Class of a Class property. This method does not have any of the logic needed to obtain the Class of an element of a Collection specified in the DataDictionary.

Parameters:
object - An instance of the Class of which we're trying to get the property Class.
propertyName - The name of the property.
Returns:
property type
Throws:
IllegalAccessException
NoSuchMethodException
InvocationTargetException

setObjectProperty

public static void setObjectProperty(Object bo,
                                     String propertyName,
                                     Object propertyValue)
                              throws FormatException,
                                     IllegalAccessException,
                                     InvocationTargetException,
                                     NoSuchMethodException
Sets the property of an object with the given value. Converts using the formatter of the type for the property. Note: propertyType does not need passed, is found by util method.

Parameters:
bo - business object
propertyName - property name
propertyValue - propery value
Throws:
IllegalAccessException
InvocationTargetException
NoSuchMethodException
FormatException

setObjectProperty

public static void setObjectProperty(Object bo,
                                     String propertyName,
                                     Class propertyType,
                                     Object propertyValue)
                              throws FormatException,
                                     IllegalAccessException,
                                     InvocationTargetException,
                                     NoSuchMethodException
Sets the property of an object with the given value. Converts using the formatter of the given type if one is found.

Parameters:
bo -
propertyName -
propertyType -
propertyValue -
Throws:
NoSuchMethodException
InvocationTargetException
IllegalAccessException
FormatException

clean

public static String clean(String string)
Removes all query characters from a string.

Parameters:
string -
Returns:
Cleaned string

isNull

public static boolean isNull(Object object)
This method is a confirms if object is null, and unproxies if necessary to determine this

Parameters:
object - - any object, proxied or not, materialized or not
Returns:
true if the object (or underlying materialized object) is null, false otherwise

isNotNull

public static boolean isNotNull(Object object)
This method is a confirms if object is not null, and unproxies if necessary to determine this

Parameters:
object - - any object, proxied or not, materialized or not
Returns:
true if the object (or underlying materialized object) is not null, true if its null

materializeClassForProxiedObject

public static Class materializeClassForProxiedObject(Object object)
Attempts to find the Class for the given potentially proxied object

Parameters:
object - the potentially proxied object to find the Class of
Returns:
the best Class which could be found for the given object

materializeObjects

public static void materializeObjects(Collection possiblyProxiedObjects)
This method runs the KRADUtils.isNotNull() method for each item in a list of BOs. KRADUtils.isNotNull() will materialize the objects if they are currently OJB proxies.

Parameters:
possiblyProxiedObjects - - a Collection of objects that may be proxies

getNestedAttributePrefix

public static String getNestedAttributePrefix(String attributeName)
Returns the prefix of a nested attribute name, or the empty string if the attribute name is not nested.

Parameters:
attributeName -
Returns:
everything BEFORE the last "." character in attributeName

getNestedAttributePrimitive

public static String getNestedAttributePrimitive(String attributeName)
Returns the primitive part of an attribute name string.

Parameters:
attributeName -
Returns:
everything AFTER the last "." character in attributeName

getNestedValue

public static Object getNestedValue(Object bo,
                                    String fieldName)
This method safely extracts either simple values OR nested values. For example, if the bo is SubAccount, and the fieldName is a21SubAccount.subAccountTypeCode, this thing makes sure it gets the value off the very end attribute, no matter how deeply nested it is. The code would be slightly simpler if this was done recursively, but this is safer, and consumes a constant amount of memory, no matter how deeply nested it goes.

Parameters:
bo -
fieldName -
Returns:
The field value if it exists. If it doesnt, and the name is invalid, and

createNewObjectFromClass

public static <T> T createNewObjectFromClass(Class<T> clazz)
This method safely creates a object from a class Convenience method to create new object and throw a runtime exception if it cannot If the class is an ExternalizableBusinessObject, this method will determine the interface for the EBO and query the appropriate module service to create a new instance.

Parameters:
clazz -
Returns:
a newInstance() of clazz

syncClientSideStateForComponent

public static void syncClientSideStateForComponent(Component component,
                                                   Map<String,Object> clientSideState)
Updates the properties of the given component instance with the value found from the corresponding map of client state (if found)

Parameters:
component - component instance to update
clientSideState - map of state to sync with


Copyright © 2005–2015 The Kuali Foundation. All rights reserved.