Package org.apache.jasper.runtime
Class JspRuntimeLibrary
- java.lang.Object
-
- org.apache.jasper.runtime.JspRuntimeLibrary
-
public class JspRuntimeLibrary extends java.lang.Object
Bunch of util methods that are used by code generated for useBean, getProperty and setProperty. The __begin, __end stuff is there so that the JSP engine can actually parse this file and inline them if people don't want runtime dependencies on this class. However, I'm not sure if that works so well right now. It got forgotten at some point. -akv- Author:
- Mandar Raje, Shawn Bayern
-
-
Field Summary
Fields Modifier and Type Field Description static boolean
GRAAL
-
Constructor Summary
Constructors Constructor Description JspRuntimeLibrary()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static java.lang.String
capitalize(java.lang.String name)
Reverse of Introspector.decapitalize.static java.lang.Object
coerce(java.lang.String s, java.lang.Class<?> target)
static boolean
coerceToBoolean(java.lang.String s)
static byte
coerceToByte(java.lang.String s)
static char
coerceToChar(java.lang.String s)
static double
coerceToDouble(java.lang.String s)
static float
coerceToFloat(java.lang.String s)
static int
coerceToInt(java.lang.String s)
static long
coerceToLong(java.lang.String s)
static short
coerceToShort(java.lang.String s)
static java.lang.Object
convert(java.lang.String propertyName, java.lang.String s, java.lang.Class<?> t, java.lang.Class<?> propertyEditorClass)
static void
createTypedArray(java.lang.String propertyName, java.lang.Object bean, java.lang.reflect.Method method, java.lang.String[] values, java.lang.Class<?> t, java.lang.Class<?> propertyEditorClass)
Create a typed array.static java.lang.String
escapeQueryString(java.lang.String unescString)
Escape special shell characters.static java.lang.String
getContextRelativePath(ServletRequest request, java.lang.String relativePath)
Convert a possibly relative resource path into a context-relative resource path that starts with a '/'.static java.lang.reflect.Method
getReadMethod(java.lang.Class<?> beanClass, java.lang.String prop)
static java.lang.Throwable
getThrowable(ServletRequest request)
Returns the value of the jakarta.servlet.error.exception request attribute value, if present, otherwise the value of the jakarta.servlet.jsp.jspException request attribute value.static java.lang.Object
getValueFromBeanInfoPropertyEditor(java.lang.Class<?> attrClass, java.lang.String attrName, java.lang.String attrValue, java.lang.Class<?> propertyEditorClass)
static java.lang.Object
getValueFromPropertyEditorManager(java.lang.Class<?> attrClass, java.lang.String attrName, java.lang.String attrValue)
static java.lang.reflect.Method
getWriteMethod(java.lang.Class<?> beanClass, java.lang.String prop)
static java.lang.Object
handleGetProperty(java.lang.Object o, java.lang.String prop)
static void
handleSetProperty(java.lang.Object bean, java.lang.String prop, boolean value)
static void
handleSetProperty(java.lang.Object bean, java.lang.String prop, byte value)
static void
handleSetProperty(java.lang.Object bean, java.lang.String prop, char value)
static void
handleSetProperty(java.lang.Object bean, java.lang.String prop, double value)
static void
handleSetProperty(java.lang.Object bean, java.lang.String prop, float value)
static void
handleSetProperty(java.lang.Object bean, java.lang.String prop, int value)
static void
handleSetProperty(java.lang.Object bean, java.lang.String prop, long value)
static void
handleSetProperty(java.lang.Object bean, java.lang.String prop, short value)
static void
handleSetProperty(java.lang.Object bean, java.lang.String prop, java.lang.Object value)
static void
handleSetPropertyExpression(java.lang.Object bean, java.lang.String prop, java.lang.String expression, PageContext pageContext, ProtectedFunctionMapper functionMapper)
static void
include(ServletRequest request, ServletResponse response, java.lang.String relativePath, JspWriter out, boolean flush)
Perform a RequestDispatcher.include() operation, with optional flushing of the response beforehand.static void
introspect(java.lang.Object bean, ServletRequest request)
static void
introspecthelper(java.lang.Object bean, java.lang.String prop, java.lang.String value, ServletRequest request, java.lang.String param, boolean ignoreMethodNF)
protected static void
releaseTag(Tag tag, InstanceManager instanceManager)
static void
releaseTag(Tag tag, InstanceManager instanceManager, boolean reused)
static JspWriter
startBufferedBody(PageContext pageContext, BodyTag tag)
static java.lang.String
toString(boolean b)
static java.lang.String
toString(byte b)
static java.lang.String
toString(char c)
static java.lang.String
toString(double d)
static java.lang.String
toString(float f)
static java.lang.String
toString(int i)
static java.lang.String
toString(long l)
static java.lang.String
toString(short s)
static java.lang.String
toString(java.lang.Object o)
static java.lang.String
URLEncode(java.lang.String s, java.lang.String enc)
URL encodes a string, based on the supplied character encoding.
-
-
-
Method Detail
-
getThrowable
public static java.lang.Throwable getThrowable(ServletRequest request)
Returns the value of the jakarta.servlet.error.exception request attribute value, if present, otherwise the value of the jakarta.servlet.jsp.jspException request attribute value. This method is called at the beginning of the generated servlet code for a JSP error page, when the "exception" implicit scripting language variable is initialized.- Parameters:
request
- The Servlet request- Returns:
- the throwable in the error attribute if any
-
coerceToBoolean
public static boolean coerceToBoolean(java.lang.String s)
-
coerceToByte
public static byte coerceToByte(java.lang.String s)
-
coerceToChar
public static char coerceToChar(java.lang.String s)
-
coerceToDouble
public static double coerceToDouble(java.lang.String s)
-
coerceToFloat
public static float coerceToFloat(java.lang.String s)
-
coerceToInt
public static int coerceToInt(java.lang.String s)
-
coerceToShort
public static short coerceToShort(java.lang.String s)
-
coerceToLong
public static long coerceToLong(java.lang.String s)
-
coerce
public static java.lang.Object coerce(java.lang.String s, java.lang.Class<?> target)
-
convert
public static java.lang.Object convert(java.lang.String propertyName, java.lang.String s, java.lang.Class<?> t, java.lang.Class<?> propertyEditorClass) throws JasperException
- Throws:
JasperException
-
introspect
public static void introspect(java.lang.Object bean, ServletRequest request) throws JasperException
- Throws:
JasperException
-
introspecthelper
public static void introspecthelper(java.lang.Object bean, java.lang.String prop, java.lang.String value, ServletRequest request, java.lang.String param, boolean ignoreMethodNF) throws JasperException
- Throws:
JasperException
-
toString
public static java.lang.String toString(java.lang.Object o)
-
toString
public static java.lang.String toString(byte b)
-
toString
public static java.lang.String toString(boolean b)
-
toString
public static java.lang.String toString(short s)
-
toString
public static java.lang.String toString(int i)
-
toString
public static java.lang.String toString(float f)
-
toString
public static java.lang.String toString(long l)
-
toString
public static java.lang.String toString(double d)
-
toString
public static java.lang.String toString(char c)
-
createTypedArray
public static void createTypedArray(java.lang.String propertyName, java.lang.Object bean, java.lang.reflect.Method method, java.lang.String[] values, java.lang.Class<?> t, java.lang.Class<?> propertyEditorClass) throws JasperException
Create a typed array. This is a special case where params are passed through the request and the property is indexed.- Parameters:
propertyName
- The property namebean
- The beanmethod
- The methodvalues
- Array valuest
- The classpropertyEditorClass
- The editor for the property- Throws:
JasperException
- An error occurred
-
escapeQueryString
public static java.lang.String escapeQueryString(java.lang.String unescString)
Escape special shell characters.- Parameters:
unescString
- The string to shell-escape- Returns:
- The escaped shell string.
-
handleGetProperty
public static java.lang.Object handleGetProperty(java.lang.Object o, java.lang.String prop) throws JasperException
- Throws:
JasperException
-
handleSetPropertyExpression
public static void handleSetPropertyExpression(java.lang.Object bean, java.lang.String prop, java.lang.String expression, PageContext pageContext, ProtectedFunctionMapper functionMapper) throws JasperException
- Throws:
JasperException
-
handleSetProperty
public static void handleSetProperty(java.lang.Object bean, java.lang.String prop, java.lang.Object value) throws JasperException
- Throws:
JasperException
-
handleSetProperty
public static void handleSetProperty(java.lang.Object bean, java.lang.String prop, int value) throws JasperException
- Throws:
JasperException
-
handleSetProperty
public static void handleSetProperty(java.lang.Object bean, java.lang.String prop, short value) throws JasperException
- Throws:
JasperException
-
handleSetProperty
public static void handleSetProperty(java.lang.Object bean, java.lang.String prop, long value) throws JasperException
- Throws:
JasperException
-
handleSetProperty
public static void handleSetProperty(java.lang.Object bean, java.lang.String prop, double value) throws JasperException
- Throws:
JasperException
-
handleSetProperty
public static void handleSetProperty(java.lang.Object bean, java.lang.String prop, float value) throws JasperException
- Throws:
JasperException
-
handleSetProperty
public static void handleSetProperty(java.lang.Object bean, java.lang.String prop, char value) throws JasperException
- Throws:
JasperException
-
handleSetProperty
public static void handleSetProperty(java.lang.Object bean, java.lang.String prop, byte value) throws JasperException
- Throws:
JasperException
-
handleSetProperty
public static void handleSetProperty(java.lang.Object bean, java.lang.String prop, boolean value) throws JasperException
- Throws:
JasperException
-
capitalize
public static java.lang.String capitalize(java.lang.String name)
Reverse of Introspector.decapitalize.- Parameters:
name
- The name- Returns:
- the capitalized string
-
getWriteMethod
public static java.lang.reflect.Method getWriteMethod(java.lang.Class<?> beanClass, java.lang.String prop) throws JasperException
- Throws:
JasperException
-
getReadMethod
public static java.lang.reflect.Method getReadMethod(java.lang.Class<?> beanClass, java.lang.String prop) throws JasperException
- Throws:
JasperException
-
getValueFromBeanInfoPropertyEditor
public static java.lang.Object getValueFromBeanInfoPropertyEditor(java.lang.Class<?> attrClass, java.lang.String attrName, java.lang.String attrValue, java.lang.Class<?> propertyEditorClass) throws JasperException
- Throws:
JasperException
-
getValueFromPropertyEditorManager
public static java.lang.Object getValueFromPropertyEditorManager(java.lang.Class<?> attrClass, java.lang.String attrName, java.lang.String attrValue) throws JasperException
- Throws:
JasperException
-
getContextRelativePath
public static java.lang.String getContextRelativePath(ServletRequest request, java.lang.String relativePath)
Convert a possibly relative resource path into a context-relative resource path that starts with a '/'.- Parameters:
request
- The servlet request we are processingrelativePath
- The possibly relative resource path- Returns:
- an absolute path
-
include
public static void include(ServletRequest request, ServletResponse response, java.lang.String relativePath, JspWriter out, boolean flush) throws java.io.IOException, ServletException
Perform a RequestDispatcher.include() operation, with optional flushing of the response beforehand.- Parameters:
request
- The servlet request we are processingresponse
- The servlet response we are processingrelativePath
- The relative path of the resource to be includedout
- The Writer to whom we are currently writingflush
- Should we flush before the include is processed?- Throws:
java.io.IOException
- if thrown by the included servletServletException
- if thrown by the included servlet
-
URLEncode
public static java.lang.String URLEncode(java.lang.String s, java.lang.String enc)
URL encodes a string, based on the supplied character encoding. This performs the same function as java.next.URLEncode.encode in J2SDK1.4, and should be removed if the only platform supported is 1.4 or higher.- Parameters:
s
- The String to be URL encoded.enc
- The character encoding- Returns:
- The URL encoded String
-
startBufferedBody
public static JspWriter startBufferedBody(PageContext pageContext, BodyTag tag) throws JspException
- Throws:
JspException
-
releaseTag
public static void releaseTag(Tag tag, InstanceManager instanceManager, boolean reused)
-
releaseTag
protected static void releaseTag(Tag tag, InstanceManager instanceManager)
-
-