code: public String format(final Object value) {
          
          if(value == null) {
              return "null";
          }
          
          final Class<?> clazz = value.getClass();
          if(clazz.isPrimitive()) {
              if(clazz.equals(Boolean.TYPE)) {
                  return format((boolean) value);
              } else if(clazz.equals(Byte.TYPE)) {
                  return format((byte) value);
              } else if(clazz.equals(Character.TYPE)) {
                  return format((char) value);
              } else if(clazz.equals(Short.TYPE)) {
                  return format((short) value);
              } else if(clazz.equals(Integer.TYPE)) {
                  return format((int) value);
              } else if(clazz.equals(Long.TYPE)) {
                  return format((long) value);
              } else if(clazz.equals(Float.TYPE)) {
                  return format((float) value);
              } else if(clazz.equals(Double.TYPE)) {
                  return format((double) value);
              } 
              
          } else if(clazz.isArray()) {
              if(value instanceof boolean[]) {
                  return format((boolean[]) value);
              } else if(value instanceof char[]) {
                  return format((char[]) value);
              }
docs: JavaオブジェクトをOGNL式に変換する。
  @param value 変換対象のオブジェクト。
  @return OGNL式。
  @throws IllegalArgumentException value class type is not supported.