http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/json/JsonParser.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/json/JsonParser.java 
b/juneau-core/src/main/java/org/apache/juneau/json/JsonParser.java
index 8fb7fd2..17825a5 100644
--- a/juneau-core/src/main/java/org/apache/juneau/json/JsonParser.java
+++ b/juneau-core/src/main/java/org/apache/juneau/json/JsonParser.java
@@ -13,6 +13,7 @@
 package org.apache.juneau.json;
 
 import static org.apache.juneau.parser.ParserContext.*;
+import static org.apache.juneau.internal.StringUtils.*;
 
 import java.io.*;
 import java.lang.reflect.*;
@@ -202,7 +203,7 @@ public class JsonParser extends ReaderParser {
                        o = parseIntoBeanMap2(session, r, m).getBean();
                } else if (sType.canCreateNewInstanceFromString(outer) && (c == 
'\'' || c == '"')) {
                        o = sType.newInstanceFromString(outer, 
parseString(session, r));
-               } else if (sType.canCreateNewInstanceFromNumber(outer) && 
StringUtils.isFirstNumberChar((char)c)) {
+               } else if (sType.canCreateNewInstanceFromNumber(outer) && 
isFirstNumberChar((char)c)) {
                        o = sType.newInstanceFromNumber(session, outer, 
parseNumber(session, r, sType.getNewInstanceFromNumberClass()));
                } else if (sType.isArray() || sType.isArgs()) {
                        if (c == '{') {
@@ -242,7 +243,7 @@ public class JsonParser extends ReaderParser {
                int c = r.peek();
                if (c == '\'' || c == '"')
                        return parseNumber(session, parseString(session, r), 
type);
-               return parseNumber(session, StringUtils.parseNumberString(r), 
type);
+               return parseNumber(session, parseNumberString(r), type);
        }
 
        private static Number parseNumber(JsonParserSession session, String s, 
Class<? extends Number> type) throws Exception {

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackInputStream.java
----------------------------------------------------------------------
diff --git 
a/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackInputStream.java 
b/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackInputStream.java
index 64fe9d9..a9896dd 100644
--- 
a/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackInputStream.java
+++ 
b/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackInputStream.java
@@ -13,11 +13,10 @@
 package org.apache.juneau.msgpack;
 
 import static org.apache.juneau.msgpack.DataType.*;
+import static org.apache.juneau.internal.IOUtils.*;
 
 import java.io.*;
 
-import org.apache.juneau.internal.*;
-
 /**
  * Specialized input stream for parsing MessagePack streams.
  * <p>
@@ -395,7 +394,7 @@ public final class MsgPackInputStream extends InputStream {
         * Read a string from the stream.
         */
        String readString() throws IOException {
-               return new String(readBinary(), IOUtils.UTF8);
+               return new String(readBinary(), UTF8);
        }
 
        /**

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/parser/Parser.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/parser/Parser.java 
b/juneau-core/src/main/java/org/apache/juneau/parser/Parser.java
index 38c6d16..231665a 100644
--- a/juneau-core/src/main/java/org/apache/juneau/parser/Parser.java
+++ b/juneau-core/src/main/java/org/apache/juneau/parser/Parser.java
@@ -13,6 +13,7 @@
 package org.apache.juneau.parser;
 
 import static org.apache.juneau.internal.StringUtils.*;
+import static org.apache.juneau.internal.ReflectionUtils.*;
 
 import java.io.*;
 import java.lang.reflect.*;
@@ -22,7 +23,6 @@ import java.util.*;
 import org.apache.juneau.*;
 import org.apache.juneau.annotation.*;
 import org.apache.juneau.http.*;
-import org.apache.juneau.internal.*;
 import org.apache.juneau.transform.*;
 import org.apache.juneau.transforms.*;
 import org.apache.juneau.utils.*;
@@ -142,11 +142,11 @@ public abstract class Parser extends CoreObject {
                super(propertyStore);
                this.ctx = createContext(ParserContext.class);
 
-               Consumes c = ReflectionUtils.getAnnotation(Consumes.class, 
getClass());
+               Consumes c = getAnnotation(Consumes.class, getClass());
                if (c == null)
                        throw new RuntimeException(MessageFormat.format("Class 
''{0}'' is missing the @Consumes annotation", getClass().getName()));
 
-               String[] mt = StringUtils.split(c.value(), ',');
+               String[] mt = split(c.value(), ',');
                this.mediaTypes = new MediaType[mt.length];
                for (int i = 0; i < mt.length; i++) {
                        mediaTypes[i] = MediaType.forString(mt[i]);

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/parser/ParserGroupBuilder.java
----------------------------------------------------------------------
diff --git 
a/juneau-core/src/main/java/org/apache/juneau/parser/ParserGroupBuilder.java 
b/juneau-core/src/main/java/org/apache/juneau/parser/ParserGroupBuilder.java
index f9dc3f3..0eb2e92 100644
--- a/juneau-core/src/main/java/org/apache/juneau/parser/ParserGroupBuilder.java
+++ b/juneau-core/src/main/java/org/apache/juneau/parser/ParserGroupBuilder.java
@@ -14,6 +14,7 @@ package org.apache.juneau.parser;
 
 import static org.apache.juneau.BeanContext.*;
 import static org.apache.juneau.internal.CollectionUtils.*;
+import static org.apache.juneau.internal.ClassUtils.*;
 import static org.apache.juneau.parser.ParserContext.*;
 
 import java.util.*;
@@ -99,14 +100,13 @@ public class ParserGroupBuilder {
         *
         * @return A new {@link ParserGroup} object.
         */
-       @SuppressWarnings("unchecked")
        public ParserGroup build() {
                List<Parser> l = new ArrayList<Parser>();
                for (Object p : parsers) {
-                       Class<? extends Parser> c = null;
+                       Class<?> c = null;
                        PropertyStore ps = propertyStore;
                        if (p instanceof Class) {
-                               c = (Class<? extends Parser>)p;
+                               c = (Class<?>)p;
                        } else {
                                // Note that if we added a serializer instance, 
we want a new instance with this builder's properties
                                // on top of the previous serializer's 
properties.
@@ -114,11 +114,7 @@ public class ParserGroupBuilder {
                                ps = 
p2.createPropertyStore().copyFrom(propertyStore);
                                c = p2.getClass();
                        }
-                       try {
-                               
l.add(c.getConstructor(PropertyStore.class).newInstance(ps));
-                       } catch (Exception e) {
-                               throw new RuntimeException("Could not 
instantiate parser " + c.getName(), e);
-                       }
+                       l.add(newInstance(Parser.class, c, ps));
                }
                Collections.reverse(l);
                return new ParserGroup(propertyStore, l.toArray(new 
Parser[l.size()]));

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/parser/ParserSession.java
----------------------------------------------------------------------
diff --git 
a/juneau-core/src/main/java/org/apache/juneau/parser/ParserSession.java 
b/juneau-core/src/main/java/org/apache/juneau/parser/ParserSession.java
index 0b28ce6..05f2f8b 100644
--- a/juneau-core/src/main/java/org/apache/juneau/parser/ParserSession.java
+++ b/juneau-core/src/main/java/org/apache/juneau/parser/ParserSession.java
@@ -13,6 +13,9 @@
 package org.apache.juneau.parser;
 
 import static org.apache.juneau.parser.ParserContext.*;
+import static org.apache.juneau.internal.ClassUtils.*;
+import static org.apache.juneau.internal.IOUtils.*;
+import static org.apache.juneau.internal.StringUtils.*;
 
 import java.io.*;
 import java.lang.reflect.*;
@@ -21,7 +24,6 @@ import java.util.*;
 
 import org.apache.juneau.*;
 import org.apache.juneau.http.*;
-import org.apache.juneau.internal.*;
 
 /**
  * Session object that lives for the duration of a single use of {@link 
Parser}.
@@ -75,10 +77,9 @@ public class ParserSession extends BeanSession {
         * If <jk>null</jk>, then the timezone defined on the context is used.
         * @param mediaType The session media type (e.g. 
<js>"application/json"</js>).
         */
-       @SuppressWarnings("unchecked")
        public ParserSession(ParserContext ctx, ObjectMap op, Object input, 
Method javaMethod, Object outer, Locale locale, TimeZone timeZone, MediaType 
mediaType) {
                super(ctx, op, locale, timeZone, mediaType);
-               Class<? extends ParserListener> listenerClass;
+               Class<?> listenerClass;
                if (op == null || op.isEmpty()) {
                        trimStrings = ctx.trimStrings;
                        strict = ctx.strict;
@@ -95,11 +96,7 @@ public class ParserSession extends BeanSession {
                this.input = input;
                this.javaMethod = javaMethod;
                this.outer = outer;
-               try {
-                       this.listener = listenerClass == null ? null : 
listenerClass.newInstance();
-               } catch (Exception e) {
-                       throw new RuntimeException(e);
-               }
+               this.listener = newInstance(ParserListener.class, 
listenerClass);
        }
 
        /**
@@ -115,25 +112,25 @@ public class ParserSession extends BeanSession {
                                return null;
                        if (input instanceof InputStream) {
                                if (isDebug()) {
-                                       byte[] b = 
IOUtils.readBytes((InputStream)input, 1024);
-                                       inputString = StringUtils.toHex(b);
+                                       byte[] b = 
readBytes((InputStream)input, 1024);
+                                       inputString = toHex(b);
                                        return new ByteArrayInputStream(b);
                                }
                                return (InputStream)input;
                        }
                        if (input instanceof byte[]) {
                                if (isDebug())
-                                       inputString = 
StringUtils.toHex((byte[])input);
+                                       inputString = toHex((byte[])input);
                                return new ByteArrayInputStream((byte[])input);
                        }
                        if (input instanceof String) {
                                inputString = (String)input;
-                               return new 
ByteArrayInputStream(StringUtils.fromHex((String)input));
+                               return new 
ByteArrayInputStream(fromHex((String)input));
                        }
                        if (input instanceof File) {
                                if (isDebug()) {
-                                       byte[] b = 
IOUtils.readBytes((File)input);
-                                       inputString = StringUtils.toHex(b);
+                                       byte[] b = readBytes((File)input);
+                                       inputString = toHex(b);
                                        return new ByteArrayInputStream(b);
                                }
                                inputStream = new FileInputStream((File)input);
@@ -158,7 +155,7 @@ public class ParserSession extends BeanSession {
                        return null;
                if (input instanceof Reader) {
                        if (isDebug()) {
-                               inputString = IOUtils.read((Reader)input);
+                               inputString = read((Reader)input);
                                return new StringReader(inputString);
                        }
                        return (Reader)input;
@@ -183,7 +180,7 @@ public class ParserSession extends BeanSession {
                                noCloseReader = new InputStreamReader(is, cd);
                        }
                        if (isDebug()) {
-                               inputString = IOUtils.read(noCloseReader);
+                               inputString = read(noCloseReader);
                                return new StringReader(inputString);
                        }
                        return noCloseReader;
@@ -201,7 +198,7 @@ public class ParserSession extends BeanSession {
                                reader = new InputStreamReader(new 
FileInputStream((File)input), cd);
                        }
                        if (isDebug()) {
-                               inputString = IOUtils.read(reader);
+                               inputString = read(reader);
                                return new StringReader(inputString);
                        }
                        return reader;

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/plaintext/PlainTextParser.java
----------------------------------------------------------------------
diff --git 
a/juneau-core/src/main/java/org/apache/juneau/plaintext/PlainTextParser.java 
b/juneau-core/src/main/java/org/apache/juneau/plaintext/PlainTextParser.java
index 922b8b5..850d320 100644
--- a/juneau-core/src/main/java/org/apache/juneau/plaintext/PlainTextParser.java
+++ b/juneau-core/src/main/java/org/apache/juneau/plaintext/PlainTextParser.java
@@ -12,9 +12,10 @@
 // 
***************************************************************************************************************************
 package org.apache.juneau.plaintext;
 
+import static org.apache.juneau.internal.IOUtils.*;
+
 import org.apache.juneau.*;
 import org.apache.juneau.annotation.*;
-import org.apache.juneau.internal.*;
 import org.apache.juneau.parser.*;
 import org.apache.juneau.transform.*;
 
@@ -68,6 +69,6 @@ public class PlainTextParser extends ReaderParser {
 
        @Override /* Parser */
        protected <T> T doParse(ParserSession session, ClassMeta<T> type) 
throws Exception {
-               return session.convertToType(IOUtils.read(session.getReader()), 
type);
+               return session.convertToType(read(session.getReader()), type);
        }
 }

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/remoteable/RemoteMethodArg.java
----------------------------------------------------------------------
diff --git 
a/juneau-core/src/main/java/org/apache/juneau/remoteable/RemoteMethodArg.java 
b/juneau-core/src/main/java/org/apache/juneau/remoteable/RemoteMethodArg.java
index 6293d2b..cf2326b 100644
--- 
a/juneau-core/src/main/java/org/apache/juneau/remoteable/RemoteMethodArg.java
+++ 
b/juneau-core/src/main/java/org/apache/juneau/remoteable/RemoteMethodArg.java
@@ -12,6 +12,8 @@
 // 
***************************************************************************************************************************
 package org.apache.juneau.remoteable;
 
+import static org.apache.juneau.internal.ClassUtils.*;
+
 import org.apache.juneau.serializer.*;
 import org.apache.juneau.urlencoding.*;
 
@@ -53,10 +55,6 @@ public class RemoteMethodArg {
                this.name = name.isEmpty() ? name2 : name;
                this.index = index;
                this.skipIfNE = skipIfNE;
-               try {
-                       this.serializer = (serializer == PartSerializer.class ? 
null : serializer.newInstance());
-               } catch (Exception e) {
-                       throw new RuntimeException(e);
-               }
+               this.serializer = (serializer == PartSerializer.class ? null : 
newInstance(PartSerializer.class, serializer));
        }
 }

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/remoteable/RemoteableMeta.java
----------------------------------------------------------------------
diff --git 
a/juneau-core/src/main/java/org/apache/juneau/remoteable/RemoteableMeta.java 
b/juneau-core/src/main/java/org/apache/juneau/remoteable/RemoteableMeta.java
index 0fb31b2..60da20a 100644
--- a/juneau-core/src/main/java/org/apache/juneau/remoteable/RemoteableMeta.java
+++ b/juneau-core/src/main/java/org/apache/juneau/remoteable/RemoteableMeta.java
@@ -14,12 +14,11 @@ package org.apache.juneau.remoteable;
 
 import static org.apache.juneau.internal.ClassUtils.*;
 import static org.apache.juneau.internal.StringUtils.*;
+import static org.apache.juneau.internal.ReflectionUtils.*;
 
 import java.lang.reflect.*;
 import java.util.*;
 
-import org.apache.juneau.internal.*;
-
 /**
  * Contains the meta-data about a remoteable interface.
  * <p>
@@ -43,7 +42,7 @@ public class RemoteableMeta {
         * @param restUrl The absolute URL of the remote REST interface that 
implements this proxy interface.
         */
        public RemoteableMeta(Class<?> c, String restUrl) {
-               Remoteable r = ReflectionUtils.getAnnotation(Remoteable.class, 
c);
+               Remoteable r = getAnnotation(Remoteable.class, c);
 
                String expose = r == null ? "DECLARED" : r.expose();
                if (! isOneOf(expose, "ALL", "DECLARED", "ANNOTATED"))

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/remoteable/RemoteableMethodMeta.java
----------------------------------------------------------------------
diff --git 
a/juneau-core/src/main/java/org/apache/juneau/remoteable/RemoteableMethodMeta.java
 
b/juneau-core/src/main/java/org/apache/juneau/remoteable/RemoteableMethodMeta.java
index 9bf4907..78340b7 100644
--- 
a/juneau-core/src/main/java/org/apache/juneau/remoteable/RemoteableMethodMeta.java
+++ 
b/juneau-core/src/main/java/org/apache/juneau/remoteable/RemoteableMethodMeta.java
@@ -13,13 +13,12 @@
 package org.apache.juneau.remoteable;
 
 import static org.apache.juneau.internal.StringUtils.*;
+import static org.apache.juneau.internal.ClassUtils.*;
 
 import java.lang.annotation.*;
 import java.lang.reflect.*;
 import java.util.*;
 
-import org.apache.juneau.internal.*;
-
 /**
  * Contains the meta-data about a Java method on a remoteable interface.
  * <p>
@@ -87,7 +86,7 @@ public class RemoteableMethodMeta {
                        url =
                                trimSlashes(restUrl)
                                + '/'
-                               + (path != null ? trimSlashes(path) : 
urlEncode("NAME".equals(methodPaths) ? m.getName() : 
ClassUtils.getMethodSignature(m)));
+                               + (path != null ? trimSlashes(path) : 
urlEncode("NAME".equals(methodPaths) ? m.getName() : getMethodSignature(m)));
 
                        int index = 0;
                        for (Annotation[] aa : m.getParameterAnnotations()) {

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/serializer/OutputStreamSerializer.java
----------------------------------------------------------------------
diff --git 
a/juneau-core/src/main/java/org/apache/juneau/serializer/OutputStreamSerializer.java
 
b/juneau-core/src/main/java/org/apache/juneau/serializer/OutputStreamSerializer.java
index bbfcfb2..d751fdc 100644
--- 
a/juneau-core/src/main/java/org/apache/juneau/serializer/OutputStreamSerializer.java
+++ 
b/juneau-core/src/main/java/org/apache/juneau/serializer/OutputStreamSerializer.java
@@ -12,11 +12,12 @@
 // 
***************************************************************************************************************************
 package org.apache.juneau.serializer;
 
+import static org.apache.juneau.internal.StringUtils.*;
+
 import java.io.*;
 
 import org.apache.juneau.*;
 import org.apache.juneau.annotation.*;
-import org.apache.juneau.internal.*;
 
 /**
  * Subclass of {@link Serializer} for byte-based serializers.
@@ -80,6 +81,6 @@ public abstract class OutputStreamSerializer extends 
Serializer {
        public final String serializeToHex(Object o) throws SerializeException {
                ByteArrayOutputStream baos = new ByteArrayOutputStream();
                serialize(createSession(baos), o);
-               return StringUtils.toHex(baos.toByteArray());
+               return toHex(baos.toByteArray());
        }
 }

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/serializer/Serializer.java
----------------------------------------------------------------------
diff --git 
a/juneau-core/src/main/java/org/apache/juneau/serializer/Serializer.java 
b/juneau-core/src/main/java/org/apache/juneau/serializer/Serializer.java
index d5af30a..8350093 100644
--- a/juneau-core/src/main/java/org/apache/juneau/serializer/Serializer.java
+++ b/juneau-core/src/main/java/org/apache/juneau/serializer/Serializer.java
@@ -12,6 +12,9 @@
 // 
***************************************************************************************************************************
 package org.apache.juneau.serializer;
 
+import static org.apache.juneau.internal.StringUtils.*;
+import static org.apache.juneau.internal.ReflectionUtils.*;
+
 import java.io.*;
 import java.lang.reflect.*;
 import java.text.*;
@@ -20,7 +23,6 @@ import java.util.*;
 import org.apache.juneau.*;
 import org.apache.juneau.annotation.*;
 import org.apache.juneau.http.*;
-import org.apache.juneau.internal.*;
 import org.apache.juneau.soap.*;
 
 /**
@@ -50,11 +52,11 @@ public abstract class Serializer extends CoreObject {
                super(propertyStore);
                this.ctx = createContext(SerializerContext.class);
 
-               Produces p = ReflectionUtils.getAnnotation(Produces.class, 
getClass());
+               Produces p = getAnnotation(Produces.class, getClass());
                if (p == null)
                        throw new RuntimeException(MessageFormat.format("Class 
''{0}'' is missing the @Produces annotation", getClass().getName()));
 
-               String[] mt = StringUtils.split(p.value(), ',');
+               String[] mt = split(p.value(), ',');
                this.mediaTypes = new MediaType[mt.length];
                for (int i = 0; i < mt.length; i++) {
                        mediaTypes[i] = MediaType.forString(mt[i]);

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/serializer/SerializerGroupBuilder.java
----------------------------------------------------------------------
diff --git 
a/juneau-core/src/main/java/org/apache/juneau/serializer/SerializerGroupBuilder.java
 
b/juneau-core/src/main/java/org/apache/juneau/serializer/SerializerGroupBuilder.java
index d34b07f..74f923a 100644
--- 
a/juneau-core/src/main/java/org/apache/juneau/serializer/SerializerGroupBuilder.java
+++ 
b/juneau-core/src/main/java/org/apache/juneau/serializer/SerializerGroupBuilder.java
@@ -14,6 +14,7 @@ package org.apache.juneau.serializer;
 
 import static org.apache.juneau.BeanContext.*;
 import static org.apache.juneau.internal.CollectionUtils.*;
+import static org.apache.juneau.internal.ClassUtils.*;
 import static org.apache.juneau.serializer.SerializerContext.*;
 
 import java.util.*;
@@ -99,14 +100,13 @@ public class SerializerGroupBuilder {
         *
         * @return A new {@link SerializerGroup} object.
         */
-       @SuppressWarnings("unchecked")
        public SerializerGroup build() {
                List<Serializer> l = new ArrayList<Serializer>();
                for (Object s : serializers) {
-                       Class<? extends Serializer> c = null;
+                       Class<?> c = null;
                        PropertyStore ps = propertyStore;
                        if (s instanceof Class) {
-                               c = ((Class<? extends Serializer>)s);
+                               c = (Class<?>)s;
                        } else {
                                // Note that if we added a serializer instance, 
we want a new instance with this builder's properties
                                // on top of the previous serializer's 
properties.
@@ -114,11 +114,7 @@ public class SerializerGroupBuilder {
                                ps = 
s2.createPropertyStore().copyFrom(propertyStore);
                                c = s2.getClass();
                        }
-                       try {
-                               
l.add(c.getConstructor(PropertyStore.class).newInstance(ps));
-                       } catch (Exception e) {
-                               throw new RuntimeException("Could not 
instantiate serializer " + c.getName(), e);
-                       }
+                       l.add(newInstance(Serializer.class, c, ps));
                }
                Collections.reverse(l);
                return new SerializerGroup(propertyStore, l.toArray(new 
Serializer[l.size()]));

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/serializer/SerializerSession.java
----------------------------------------------------------------------
diff --git 
a/juneau-core/src/main/java/org/apache/juneau/serializer/SerializerSession.java 
b/juneau-core/src/main/java/org/apache/juneau/serializer/SerializerSession.java
index a52314a..b8371ac 100644
--- 
a/juneau-core/src/main/java/org/apache/juneau/serializer/SerializerSession.java
+++ 
b/juneau-core/src/main/java/org/apache/juneau/serializer/SerializerSession.java
@@ -13,6 +13,8 @@
 package org.apache.juneau.serializer;
 
 import static org.apache.juneau.internal.ClassUtils.*;
+import static org.apache.juneau.internal.IOUtils.*;
+import static org.apache.juneau.internal.StringUtils.*;
 import static org.apache.juneau.serializer.SerializerContext.*;
 
 import java.io.*;
@@ -22,7 +24,6 @@ import java.util.*;
 
 import org.apache.juneau.*;
 import org.apache.juneau.http.*;
-import org.apache.juneau.internal.*;
 import org.apache.juneau.transform.*;
 
 /**
@@ -99,14 +100,13 @@ public class SerializerSession extends BeanSession {
         * @param uriContext The URI context.
         *      Identifies the current request URI used for resolution of URIs 
to absolute or root-relative form.
         */
-       @SuppressWarnings("unchecked")
        public SerializerSession(SerializerContext ctx, ObjectMap op, Object 
output, Method javaMethod, Locale locale, TimeZone timeZone, MediaType 
mediaType, UriContext uriContext) {
                super(ctx, op, locale, timeZone, mediaType);
                this.javaMethod = javaMethod;
                this.output = output;
                UriResolution uriResolution;
                UriRelativity uriRelativity;
-               Class<? extends SerializerListener> listenerClass;
+               Class<?> listenerClass;
                if (op == null || op.isEmpty()) {
                        maxDepth = ctx.maxDepth;
                        initialDepth = ctx.initialDepth;
@@ -147,7 +147,7 @@ public class SerializerSession extends BeanSession {
 
                uriResolver = new UriResolver(uriResolution, uriRelativity, 
uriContext == null ? ctx.uriContext : uriContext);
 
-               listener = ClassUtils.newInstance(listenerClass);
+               listener = newInstance(SerializerListener.class, listenerClass);
 
                this.indent = initialDepth;
                if (detectRecursions || isDebug()) {
@@ -205,7 +205,7 @@ public class SerializerSession extends BeanSession {
                        return (Writer)output;
                if (output instanceof OutputStream) {
                        if (flushOnlyWriter == null)
-                               flushOnlyWriter = new 
OutputStreamWriter((OutputStream)output, IOUtils.UTF8);
+                               flushOnlyWriter = new 
OutputStreamWriter((OutputStream)output, UTF8);
                        return flushOnlyWriter;
                }
                if (output instanceof File) {
@@ -658,7 +658,7 @@ public class SerializerSession extends BeanSession {
                if (o == null)
                        return null;
                if (o.getClass() == Class.class)
-                       return ClassUtils.getReadableClassName((Class<?>)o);
+                       return getReadableClassName((Class<?>)o);
                String s = o.toString();
                if (trimStrings)
                        s = s.trim();
@@ -698,7 +698,7 @@ public class SerializerSession extends BeanSession {
 
                private String toString(boolean simple) {
                        StringBuilder sb = new 
StringBuilder().append('[').append(depth).append(']');
-                       sb.append(StringUtils.isEmpty(name) ? "<noname>" : 
name).append(':');
+                       sb.append(isEmpty(name) ? "<noname>" : 
name).append(':');
                        sb.append(aType.toString(simple));
                        if (aType != aType.getSerializedClassMeta())
                                
sb.append('/').append(aType.getSerializedClassMeta().toString(simple));

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/svl/DefaultingVar.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/svl/DefaultingVar.java 
b/juneau-core/src/main/java/org/apache/juneau/svl/DefaultingVar.java
index 914c8c0..3d5d6da 100644
--- a/juneau-core/src/main/java/org/apache/juneau/svl/DefaultingVar.java
+++ b/juneau-core/src/main/java/org/apache/juneau/svl/DefaultingVar.java
@@ -12,7 +12,7 @@
 // 
***************************************************************************************************************************
 package org.apache.juneau.svl;
 
-import org.apache.juneau.internal.*;
+import static org.apache.juneau.internal.StringUtils.*;
 
 /**
  * Interface for the resolution of vars with a default value if the 
<code>resolve()</code> method returns <jk>null</jk>.
@@ -40,7 +40,7 @@ public abstract class DefaultingVar extends SimpleVar {
                int i = s.indexOf(',');
                if (i == -1)
                        return resolve(session, s.trim());
-               String[] s2 = StringUtils.split(s, ',');
+               String[] s2 = split(s, ',');
                String v = resolve(session, s2[0]);
                if (v == null)
                        v = s2[1];

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/svl/MultipartVar.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/svl/MultipartVar.java 
b/juneau-core/src/main/java/org/apache/juneau/svl/MultipartVar.java
index a777aa7..c360eb9 100644
--- a/juneau-core/src/main/java/org/apache/juneau/svl/MultipartVar.java
+++ b/juneau-core/src/main/java/org/apache/juneau/svl/MultipartVar.java
@@ -12,7 +12,7 @@
 // 
***************************************************************************************************************************
 package org.apache.juneau.svl;
 
-import org.apache.juneau.internal.*;
+import static org.apache.juneau.internal.StringUtils.*;
 
 /**
  * Interface for the resolution of vars that consist of a comma-delimited list.
@@ -43,7 +43,7 @@ public abstract class MultipartVar extends SimpleVar {
 
        @Override /* Var */
        public String resolve(VarResolverSession session, String s) {
-               String[] s2 = s.indexOf(',') == -1 ? new String[]{s.trim()} : 
StringUtils.split(s, ',');
+               String[] s2 = s.indexOf(',') == -1 ? new String[]{s.trim()} : 
split(s, ',');
                return resolve(session, s2);
        }
 }

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/svl/VarResolverBuilder.java
----------------------------------------------------------------------
diff --git 
a/juneau-core/src/main/java/org/apache/juneau/svl/VarResolverBuilder.java 
b/juneau-core/src/main/java/org/apache/juneau/svl/VarResolverBuilder.java
index 9d6428a..d6df847 100644
--- a/juneau-core/src/main/java/org/apache/juneau/svl/VarResolverBuilder.java
+++ b/juneau-core/src/main/java/org/apache/juneau/svl/VarResolverBuilder.java
@@ -12,7 +12,7 @@
 // 
***************************************************************************************************************************
 package org.apache.juneau.svl;
 
-import static java.text.MessageFormat.*;
+import static org.apache.juneau.internal.ClassUtils.*;
 
 import java.util.*;
 
@@ -47,15 +47,7 @@ public class VarResolverBuilder {
        @SuppressWarnings("unchecked")
        public VarResolverBuilder vars(Class<?>...vars) {
                for (Class<?> v : vars) {
-                       try {
-                               v.newInstance();
-                       } catch (InstantiationException e) {
-                               throw new 
UnsupportedOperationException(format("Cannot instantiate variable class {0}.  
Must have a public no-arg constructor.", v.getName()));
-                       } catch (RuntimeException e) {
-                               throw e;
-                       } catch (Exception e) {
-                               throw new RuntimeException(e);
-                       }
+                       newInstance(Var.class, v);
                        this.vars.add((Class<? extends Var>)v);
                }
                return this;

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/svl/VarResolverContext.java
----------------------------------------------------------------------
diff --git 
a/juneau-core/src/main/java/org/apache/juneau/svl/VarResolverContext.java 
b/juneau-core/src/main/java/org/apache/juneau/svl/VarResolverContext.java
index b3d0e18..416ee57 100644
--- a/juneau-core/src/main/java/org/apache/juneau/svl/VarResolverContext.java
+++ b/juneau-core/src/main/java/org/apache/juneau/svl/VarResolverContext.java
@@ -12,11 +12,11 @@
 // 
***************************************************************************************************************************
 package org.apache.juneau.svl;
 
+import static org.apache.juneau.internal.ClassUtils.*;
+
 import java.util.*;
 import java.util.concurrent.*;
 
-import org.apache.juneau.internal.*;
-
 /**
  * Configurable properties on the {@link VarResolver} class.
  * <p>
@@ -41,14 +41,10 @@ public class VarResolverContext {
 
                Map<String,Var> m = new ConcurrentSkipListMap<String,Var>();
                for (Class<?> c : vars) {
-                       if (! ClassUtils.isParentClass(Var.class, c))
+                       if (! isParentClass(Var.class, c))
                                throw new RuntimeException("Invalid variable 
class.  Must extend from Var");
-                       try {
-                               Var v = (Var)c.newInstance();
-                               m.put(v.getName(), v);
-                       } catch (Exception e) {
-                               throw new RuntimeException(e);
-                       }
+                       Var v = newInstance(Var.class, c);
+                       m.put(v.getName(), v);
                }
 
                this.varMap = Collections.unmodifiableMap(m);

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/transform/AnnotationBeanFilterBuilder.java
----------------------------------------------------------------------
diff --git 
a/juneau-core/src/main/java/org/apache/juneau/transform/AnnotationBeanFilterBuilder.java
 
b/juneau-core/src/main/java/org/apache/juneau/transform/AnnotationBeanFilterBuilder.java
index 10fc8be..4c1956e 100644
--- 
a/juneau-core/src/main/java/org/apache/juneau/transform/AnnotationBeanFilterBuilder.java
+++ 
b/juneau-core/src/main/java/org/apache/juneau/transform/AnnotationBeanFilterBuilder.java
@@ -12,11 +12,12 @@
 // 
***************************************************************************************************************************
 package org.apache.juneau.transform;
 
+import static org.apache.juneau.internal.StringUtils.*;
+
 import java.util.*;
 
 import org.apache.juneau.*;
 import org.apache.juneau.annotation.*;
-import org.apache.juneau.internal.*;
 
 /**
  * Bean filter builder initialized from the contents of a {@link Bean @Bean} 
annotation found on a class.
@@ -40,7 +41,7 @@ public final class AnnotationBeanFilterBuilder extends 
BeanFilterBuilder {
                        Bean b = li.previous();
 
                        if (! b.properties().isEmpty())
-                               properties(StringUtils.split(b.properties(), 
','));
+                               properties(split(b.properties(), ','));
 
                        if (! b.typeName().isEmpty())
                                typeName(b.typeName());
@@ -49,7 +50,7 @@ public final class AnnotationBeanFilterBuilder extends 
BeanFilterBuilder {
                                sortProperties(true);
 
                        if (! b.excludeProperties().isEmpty())
-                               
excludeProperties(StringUtils.split(b.excludeProperties(), ','));
+                               excludeProperties(split(b.excludeProperties(), 
','));
 
                        if (b.propertyNamer() != PropertyNamerDefault.class)
                                propertyNamer(b.propertyNamer());

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/transform/BeanFilter.java
----------------------------------------------------------------------
diff --git 
a/juneau-core/src/main/java/org/apache/juneau/transform/BeanFilter.java 
b/juneau-core/src/main/java/org/apache/juneau/transform/BeanFilter.java
index 91ad7b1..931e701 100644
--- a/juneau-core/src/main/java/org/apache/juneau/transform/BeanFilter.java
+++ b/juneau-core/src/main/java/org/apache/juneau/transform/BeanFilter.java
@@ -12,9 +12,10 @@
 // 
***************************************************************************************************************************
 package org.apache.juneau.transform;
 
+import static org.apache.juneau.internal.StringUtils.*;
+
 import org.apache.juneau.*;
 import org.apache.juneau.annotation.*;
-import org.apache.juneau.internal.*;
 
 /**
  * Parent class for all bean filters.
@@ -41,8 +42,8 @@ public class BeanFilter {
        BeanFilter(BeanFilterBuilder builder) {
                this.beanClass = builder.beanClass;
                this.typeName = builder.typeName;
-               this.properties = StringUtils.split(builder.properties, ',');
-               this.excludeProperties = 
StringUtils.split(builder.excludeProperties, ',');
+               this.properties = split(builder.properties, ',');
+               this.excludeProperties = split(builder.excludeProperties, ',');
                this.interfaceClass = builder.interfaceClass;
                this.stopClass = builder.stopClass;
                this.sortProperties = builder.sortProperties;

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/transform/BeanFilterBuilder.java
----------------------------------------------------------------------
diff --git 
a/juneau-core/src/main/java/org/apache/juneau/transform/BeanFilterBuilder.java 
b/juneau-core/src/main/java/org/apache/juneau/transform/BeanFilterBuilder.java
index bf30f3f..c166407 100644
--- 
a/juneau-core/src/main/java/org/apache/juneau/transform/BeanFilterBuilder.java
+++ 
b/juneau-core/src/main/java/org/apache/juneau/transform/BeanFilterBuilder.java
@@ -12,6 +12,8 @@
 // 
***************************************************************************************************************************
 package org.apache.juneau.transform;
 
+import static org.apache.juneau.internal.ClassUtils.*;
+
 import java.beans.*;
 import java.util.*;
 
@@ -200,7 +202,7 @@ public abstract class BeanFilterBuilder {
         * @throws Exception Thrown from constructor method.
         */
        public BeanFilterBuilder propertyNamer(Class<? extends PropertyNamer> 
c) throws Exception {
-               this.propertyNamer = c.newInstance();
+               this.propertyNamer = newInstance(PropertyNamer.class, c);
                return this;
        }
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/transform/PojoSwap.java
----------------------------------------------------------------------
diff --git 
a/juneau-core/src/main/java/org/apache/juneau/transform/PojoSwap.java 
b/juneau-core/src/main/java/org/apache/juneau/transform/PojoSwap.java
index 477a37a..2986aaf 100644
--- a/juneau-core/src/main/java/org/apache/juneau/transform/PojoSwap.java
+++ b/juneau-core/src/main/java/org/apache/juneau/transform/PojoSwap.java
@@ -12,10 +12,11 @@
 // 
***************************************************************************************************************************
 package org.apache.juneau.transform;
 
+import static org.apache.juneau.internal.ClassUtils.*;
+
 import java.util.*;
 
 import org.apache.juneau.*;
-import org.apache.juneau.internal.*;
 import org.apache.juneau.parser.*;
 import org.apache.juneau.serializer.*;
 
@@ -113,8 +114,8 @@ public abstract class PojoSwap<T,S> {
         */
        @SuppressWarnings("unchecked")
        protected PojoSwap() {
-               normalClass = 
(Class<T>)ClassUtils.resolveParameterType(PojoSwap.class, 0, this.getClass());
-               swapClass = ClassUtils.resolveParameterType(PojoSwap.class, 1, 
this.getClass());
+               normalClass = (Class<T>)resolveParameterType(PojoSwap.class, 0, 
this.getClass());
+               swapClass = resolveParameterType(PojoSwap.class, 1, 
this.getClass());
        }
 
        /**
@@ -213,7 +214,7 @@ public abstract class PojoSwap<T,S> {
        public boolean isNormalObject(Object o) {
                if (o == null)
                        return false;
-               return ClassUtils.isParentClass(normalClass, o.getClass());
+               return isParentClass(normalClass, o.getClass());
        }
 
        /**
@@ -226,7 +227,7 @@ public abstract class PojoSwap<T,S> {
        public boolean isSwappedObject(Object o) {
                if (o == null)
                        return false;
-               return ClassUtils.isParentClass(swapClass, o.getClass());
+               return isParentClass(swapClass, o.getClass());
        }
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/transforms/ByteArrayBase64Swap.java
----------------------------------------------------------------------
diff --git 
a/juneau-core/src/main/java/org/apache/juneau/transforms/ByteArrayBase64Swap.java
 
b/juneau-core/src/main/java/org/apache/juneau/transforms/ByteArrayBase64Swap.java
index 2eea048..5183c5b 100644
--- 
a/juneau-core/src/main/java/org/apache/juneau/transforms/ByteArrayBase64Swap.java
+++ 
b/juneau-core/src/main/java/org/apache/juneau/transforms/ByteArrayBase64Swap.java
@@ -12,8 +12,9 @@
 // 
***************************************************************************************************************************
 package org.apache.juneau.transforms;
 
+import static org.apache.juneau.internal.StringUtils.*;
+
 import org.apache.juneau.*;
-import org.apache.juneau.internal.*;
 import org.apache.juneau.parser.*;
 import org.apache.juneau.serializer.*;
 import org.apache.juneau.transform.*;
@@ -29,7 +30,7 @@ public class ByteArrayBase64Swap extends StringSwap<byte[]> {
        @Override /* PojoSwap */
        public String swap(BeanSession session, byte[] b) throws 
SerializeException {
                try {
-                       return StringUtils.base64Encode(b);
+                       return base64Encode(b);
                } catch (Exception e) {
                        throw new SerializeException(e);
                }
@@ -41,7 +42,7 @@ public class ByteArrayBase64Swap extends StringSwap<byte[]> {
        @Override /* PojoSwap */
        public byte[] unswap(BeanSession session, String s, ClassMeta<?> hint) 
throws ParseException {
                try {
-                       return StringUtils.base64Decode(s);
+                       return base64Decode(s);
                } catch (Exception e) {
                        throw new ParseException(e);
                }

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/transforms/CalendarSwap.java
----------------------------------------------------------------------
diff --git 
a/juneau-core/src/main/java/org/apache/juneau/transforms/CalendarSwap.java 
b/juneau-core/src/main/java/org/apache/juneau/transforms/CalendarSwap.java
index 2b180c2..2490c99 100644
--- a/juneau-core/src/main/java/org/apache/juneau/transforms/CalendarSwap.java
+++ b/juneau-core/src/main/java/org/apache/juneau/transforms/CalendarSwap.java
@@ -12,13 +12,14 @@
 // 
***************************************************************************************************************************
 package org.apache.juneau.transforms;
 
+import static org.apache.juneau.internal.StringUtils.*;
+
 import java.text.*;
 import java.util.*;
 
 import javax.xml.bind.*;
 
 import org.apache.juneau.*;
-import org.apache.juneau.internal.*;
 import org.apache.juneau.parser.ParseException;
 import org.apache.juneau.transform.*;
 
@@ -130,7 +131,7 @@ public class CalendarSwap extends StringSwap<Calendar> {
                @Override /* PojoSwap */
                public Calendar unswap(BeanSession session, String o, 
ClassMeta<?> hint) throws ParseException {
                        try {
-                               if (StringUtils.isEmpty(o))
+                               if (isEmpty(o))
                                        return null;
                                return 
convert(DatatypeConverter.parseDateTime(o), hint);
                        } catch (Exception e) {
@@ -161,7 +162,7 @@ public class CalendarSwap extends StringSwap<Calendar> {
                @Override /* PojoSwap */
                public Calendar unswap(BeanSession session, String o, 
ClassMeta<?> hint) throws ParseException {
                        try {
-                               if (StringUtils.isEmpty(o))
+                               if (isEmpty(o))
                                        return null;
                                return 
convert(DatatypeConverter.parseDateTime(o), hint);
                        } catch (Exception e) {
@@ -559,7 +560,7 @@ public class CalendarSwap extends StringSwap<Calendar> {
        @Override /* PojoSwap */
        public Calendar unswap(BeanSession session, String o, ClassMeta<?> 
hint) throws ParseException {
                try {
-                       if (StringUtils.isEmpty(o))
+                       if (isEmpty(o))
                                return null;
                        return convert(getDateFormat(session, null).parse(o), 
hint, session);
                } catch (Exception e) {

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/transforms/DateSwap.java
----------------------------------------------------------------------
diff --git 
a/juneau-core/src/main/java/org/apache/juneau/transforms/DateSwap.java 
b/juneau-core/src/main/java/org/apache/juneau/transforms/DateSwap.java
index 913f649..642ba1b 100644
--- a/juneau-core/src/main/java/org/apache/juneau/transforms/DateSwap.java
+++ b/juneau-core/src/main/java/org/apache/juneau/transforms/DateSwap.java
@@ -12,13 +12,14 @@
 // 
***************************************************************************************************************************
 package org.apache.juneau.transforms;
 
+import static org.apache.juneau.internal.StringUtils.*;
+
 import java.text.*;
 import java.util.*;
 
 import javax.xml.bind.*;
 
 import org.apache.juneau.*;
-import org.apache.juneau.internal.*;
 import org.apache.juneau.parser.ParseException;
 import org.apache.juneau.transform.*;
 
@@ -129,7 +130,7 @@ public class DateSwap extends StringSwap<Date> {
                @Override /* PojoSwap */
                public Date unswap(BeanSession session, String o, ClassMeta<?> 
hint) throws ParseException {
                        try {
-                               if (StringUtils.isEmpty(o))
+                               if (isEmpty(o))
                                        return null;
                                return 
convert(DatatypeConverter.parseDateTime(o).getTime(), hint);
                        } catch (Exception e) {
@@ -162,7 +163,7 @@ public class DateSwap extends StringSwap<Date> {
                @Override /* PojoSwap */
                public Date unswap(BeanSession session, String o, ClassMeta<?> 
hint) throws ParseException {
                        try {
-                               if (StringUtils.isEmpty(o))
+                               if (isEmpty(o))
                                        return null;
                                return 
convert(DatatypeConverter.parseDateTime(o).getTime(), hint);
                        } catch (Exception e) {
@@ -560,7 +561,7 @@ public class DateSwap extends StringSwap<Date> {
        @Override /* PojoSwap */
        public Date unswap(BeanSession session, String o, ClassMeta<?> hint) 
throws ParseException {
                try {
-                       if (StringUtils.isEmpty(o))
+                       if (isEmpty(o))
                                return null;
                        return convert(new 
Date(getDateFormat(session).parse(o).getTime()), hint);
                } catch (Exception e) {

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/transforms/ReaderSwap.java
----------------------------------------------------------------------
diff --git 
a/juneau-core/src/main/java/org/apache/juneau/transforms/ReaderSwap.java 
b/juneau-core/src/main/java/org/apache/juneau/transforms/ReaderSwap.java
index 5722e04..cbca731 100644
--- a/juneau-core/src/main/java/org/apache/juneau/transforms/ReaderSwap.java
+++ b/juneau-core/src/main/java/org/apache/juneau/transforms/ReaderSwap.java
@@ -12,11 +12,12 @@
 // 
***************************************************************************************************************************
 package org.apache.juneau.transforms;
 
+import static org.apache.juneau.internal.IOUtils.*;
+
 import java.io.*;
 
 import org.apache.juneau.*;
 import org.apache.juneau.html.*;
-import org.apache.juneau.internal.*;
 import org.apache.juneau.json.*;
 import org.apache.juneau.parser.*;
 import org.apache.juneau.serializer.*;
@@ -97,7 +98,7 @@ public class ReaderSwap extends PojoSwap<Reader,Object> {
        public Object swap(BeanSession session, Reader o) throws 
SerializeException {
                try {
                        if (parser == null)
-                               return IOUtils.read(o);
+                               return read(o);
                        return parser.parse(o, Object.class);
                } catch (IOException e) {
                        return e.getLocalizedMessage();

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/transforms/XMLGregorianCalendarSwap.java
----------------------------------------------------------------------
diff --git 
a/juneau-core/src/main/java/org/apache/juneau/transforms/XMLGregorianCalendarSwap.java
 
b/juneau-core/src/main/java/org/apache/juneau/transforms/XMLGregorianCalendarSwap.java
index 9808bcf..31f26d3 100644
--- 
a/juneau-core/src/main/java/org/apache/juneau/transforms/XMLGregorianCalendarSwap.java
+++ 
b/juneau-core/src/main/java/org/apache/juneau/transforms/XMLGregorianCalendarSwap.java
@@ -12,10 +12,11 @@
 // 
***************************************************************************************************************************
 package org.apache.juneau.transforms;
 
+import static org.apache.juneau.internal.StringUtils.*;
+
 import javax.xml.datatype.*;
 
 import org.apache.juneau.*;
-import org.apache.juneau.internal.*;
 import org.apache.juneau.parser.*;
 import org.apache.juneau.serializer.*;
 import org.apache.juneau.transform.*;
@@ -55,7 +56,7 @@ public class XMLGregorianCalendarSwap extends 
StringSwap<XMLGregorianCalendar> {
         */
        @Override /* PojoSwap */
        public XMLGregorianCalendar unswap(BeanSession session, String s, 
ClassMeta<?> hint) throws ParseException {
-               if (StringUtils.isEmpty(s))
+               if (isEmpty(s))
                        return null;
                return dtf.newXMLGregorianCalendar(s);
        }

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/uon/UonParser.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/uon/UonParser.java 
b/juneau-core/src/main/java/org/apache/juneau/uon/UonParser.java
index 32ea7b4..a455178 100644
--- a/juneau-core/src/main/java/org/apache/juneau/uon/UonParser.java
+++ b/juneau-core/src/main/java/org/apache/juneau/uon/UonParser.java
@@ -13,6 +13,7 @@
 package org.apache.juneau.uon;
 
 import static org.apache.juneau.uon.UonParserContext.*;
+import static org.apache.juneau.internal.StringUtils.*;
 
 import java.lang.reflect.*;
 import java.util.*;
@@ -144,7 +145,7 @@ public class UonParser extends ReaderParser {
                                        if ("true".equals(s) || 
"false".equals(s))
                                                o = Boolean.valueOf(s);
                                        else if (! "null".equals(s)) {
-                                               if (StringUtils.isNumeric(s))
+                                               if (isNumeric(s))
                                                        o = 
StringUtils.parseNumber(s, Number.class);
                                                else
                                                        o = s;
@@ -647,7 +648,7 @@ public class UonParser extends ReaderParser {
                }
 
                if (isUrlParamValue)
-                       s = StringUtils.trim(s);
+                       s = trim(s);
 
                return ("null".equals(s) ? null : session.trim(s));
        }

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/uon/UonUtils.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/uon/UonUtils.java 
b/juneau-core/src/main/java/org/apache/juneau/uon/UonUtils.java
index 0f68a77..1e22b25 100644
--- a/juneau-core/src/main/java/org/apache/juneau/uon/UonUtils.java
+++ b/juneau-core/src/main/java/org/apache/juneau/uon/UonUtils.java
@@ -12,6 +12,8 @@
 // 
***************************************************************************************************************************
 package org.apache.juneau.uon;
 
+import static org.apache.juneau.internal.StringUtils.*;
+
 import org.apache.juneau.internal.*;
 
 /**
@@ -44,7 +46,7 @@ public final class UonUtils {
                                        "true".equals(s)
                                        || "false".equals(s)
                                        || "null".equals(s)
-                                       || StringUtils.isNumeric(s)
+                                       || isNumeric(s)
                                )
                        )
                );

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParser.java
----------------------------------------------------------------------
diff --git 
a/juneau-core/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParser.java
 
b/juneau-core/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParser.java
index 800129f..b19c1a6 100644
--- 
a/juneau-core/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParser.java
+++ 
b/juneau-core/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParser.java
@@ -13,6 +13,8 @@
 package org.apache.juneau.urlencoding;
 
 import static org.apache.juneau.uon.UonParserContext.*;
+import static org.apache.juneau.internal.ArrayUtils.*;
+import static org.apache.juneau.internal.StringUtils.*;
 
 import java.lang.reflect.*;
 import java.util.*;
@@ -20,7 +22,6 @@ import java.util.*;
 import org.apache.juneau.*;
 import org.apache.juneau.annotation.*;
 import org.apache.juneau.http.*;
-import org.apache.juneau.internal.*;
 import org.apache.juneau.parser.*;
 import org.apache.juneau.transform.*;
 import org.apache.juneau.uon.*;
@@ -111,7 +112,7 @@ public class UrlEncodingParser extends UonParser {
                        parseIntoMap(session, r, m, sType, c2);
                        c2.addAll(m.values());
                        if (sType.isArray())
-                               o = ArrayUtils.toArray(c2, 
sType.getElementType().getInnerClass());
+                               o = toArray(c2, 
sType.getElementType().getInnerClass());
                        else if (sType.isArgs())
                                o = c2.toArray(new Object[c2.size()]);
                        else
@@ -341,7 +342,7 @@ public class UrlEncodingParser extends UonParser {
 
                Map<String,String[]> m = map == null ? new 
TreeMap<String,String[]>() : map;
 
-               if (StringUtils.isEmpty(qs))
+               if (isEmpty(qs))
                        return m;
 
                UonReader r = new UonReader(qs, true);
@@ -410,7 +411,7 @@ public class UrlEncodingParser extends UonParser {
                        if (! b)
                                m.put(key, null);
                } else if (b && m.get(key) != null) {
-                       m.put(key, ArrayUtils.append(m.get(key), val));
+                       m.put(key, append(m.get(key), val));
                } else {
                        m.put(key, new String[]{val});
                }
@@ -464,7 +465,7 @@ public class UrlEncodingParser extends UonParser {
                        // Shortcut - If we're returning a string and the value 
doesn't start with "'" or is "null", then
                        // just return the string since it's a plain value.
                        // This allows us to bypass the creation of a 
UonParserSession object.
-                       char x = StringUtils.firstNonWhitespaceChar(in);
+                       char x = firstNonWhitespaceChar(in);
                        if (x != '\'' && x != 'n' && in.indexOf('~') == -1)
                                return (T)in;
                        if (x == 'n' && "null".equals(in))

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializer.java
----------------------------------------------------------------------
diff --git 
a/juneau-core/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializer.java
 
b/juneau-core/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializer.java
index db65a96..4db9313 100644
--- 
a/juneau-core/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializer.java
+++ 
b/juneau-core/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializer.java
@@ -14,6 +14,8 @@ package org.apache.juneau.urlencoding;
 
 import static org.apache.juneau.serializer.SerializerContext.*;
 import static org.apache.juneau.uon.UonSerializerContext.*;
+import static org.apache.juneau.internal.ArrayUtils.*;
+import static org.apache.juneau.internal.StringUtils.*;
 
 import java.io.*;
 import java.lang.reflect.*;
@@ -23,7 +25,6 @@ import java.util.*;
 import org.apache.juneau.*;
 import org.apache.juneau.annotation.*;
 import org.apache.juneau.http.*;
-import org.apache.juneau.internal.*;
 import org.apache.juneau.serializer.*;
 import org.apache.juneau.transform.*;
 import org.apache.juneau.uon.*;
@@ -311,7 +312,7 @@ public class UrlEncodingSerializer extends UonSerializer 
implements PartSerializ
                        Object value = e.getValue();
 
                        if (session.shouldUseExpandedParams(value)) {
-                               Iterator i = value instanceof Collection ? 
((Collection)value).iterator() : ArrayUtils.iterator(value);
+                               Iterator i = value instanceof Collection ? 
((Collection)value).iterator() : iterator(value);
                                while (i.hasNext()) {
                                        if (addAmp)
                                                out.cr(depth).append('&');
@@ -372,7 +373,7 @@ public class UrlEncodingSerializer extends UonSerializer 
implements PartSerializ
                        if (value != null && 
session.shouldUseExpandedParams(pMeta)) {
                                // Transformed object array bean properties may 
be transformed resulting in ArrayLists,
                                // so we need to check type if we think it's an 
array.
-                               Iterator i = (cMeta.isCollection() || value 
instanceof Collection) ? ((Collection)value).iterator() : 
ArrayUtils.iterator(value);
+                               Iterator i = (cMeta.isCollection() || value 
instanceof Collection) ? ((Collection)value).iterator() : iterator(value);
                                while (i.hasNext()) {
                                        if (addAmp)
                                                out.cr(depth).append('&');
@@ -426,7 +427,7 @@ public class UrlEncodingSerializer extends UonSerializer 
implements PartSerializ
                                        String s = o.toString();
                                        boolean ptt = (plainTextParams != null 
? plainTextParams : ctx.plainTextParams());
                                        if (ptt || s.isEmpty() || ! 
UonUtils.needsQuotes(s))
-                                               return (urlEncode ? 
StringUtils.urlEncode(s) : s);
+                                               return (urlEncode ? 
urlEncode(s) : s);
                                }
                        }
 
@@ -462,7 +463,7 @@ public class UrlEncodingSerializer extends UonSerializer 
implements PartSerializ
                        case FORM_DATA: return serializePart(value, false, 
null);
                        case PATH: return serializePart(value, false, null);
                        case QUERY: return serializePart(value, false, null);
-                       default: return StringUtils.toString(value);
+                       default: return toString(value);
                }
        }
 }

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/utils/Args.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/utils/Args.java 
b/juneau-core/src/main/java/org/apache/juneau/utils/Args.java
index 0399c39..8768d25 100644
--- a/juneau-core/src/main/java/org/apache/juneau/utils/Args.java
+++ b/juneau-core/src/main/java/org/apache/juneau/utils/Args.java
@@ -12,10 +12,11 @@
 // 
***************************************************************************************************************************
 package org.apache.juneau.utils;
 
+import static org.apache.juneau.internal.StringUtils.*;
+
 import java.util.*;
 
 import org.apache.juneau.*;
-import org.apache.juneau.internal.*;
 
 /**
  * Utility class to make it easier to work with command-line arguments pass in 
through a <code>main(String[] args)</code> method.
@@ -109,7 +110,7 @@ public final class Args extends ObjectMap {
                Integer i = 0;
                while (! argList.isEmpty()) {
                        String s = argList.get(0);
-                       if (StringUtils.startsWith(s,'-'))
+                       if (startsWith(s,'-'))
                                break;
                        put(i.toString(), argList.remove(0));
                        i++;
@@ -119,7 +120,7 @@ public final class Args extends ObjectMap {
                String key = null;
                while (! argList.isEmpty()) {
                        String s = argList.remove(0);
-                       if (StringUtils.startsWith(s, '-')) {
+                       if (startsWith(s, '-')) {
                                key = s.substring(1);
                                if (key.matches("\\d*"))
                                        throw new RuntimeException("Invalid 
optional key name '"+key+"'");

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/utils/IOPipe.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/utils/IOPipe.java 
b/juneau-core/src/main/java/org/apache/juneau/utils/IOPipe.java
index 743f7ae..86a4d68 100644
--- a/juneau-core/src/main/java/org/apache/juneau/utils/IOPipe.java
+++ b/juneau-core/src/main/java/org/apache/juneau/utils/IOPipe.java
@@ -13,6 +13,8 @@
 package org.apache.juneau.utils;
 
 import static org.apache.juneau.internal.ThrowableUtils.*;
+import static org.apache.juneau.internal.IOUtils.*;
+
 
 import java.io.*;
 import java.util.*;
@@ -161,18 +163,18 @@ public class IOPipe {
                int c = 0;
 
                try {
-               if (input instanceof InputStream && output instanceof 
OutputStream && lineProcessor == null) {
-                       InputStream in = (InputStream)input;
-                       OutputStream out = (OutputStream)output;
-                       byte[] b = new byte[buffSize];
-                       int i;
+                       if (input instanceof InputStream && output instanceof 
OutputStream && lineProcessor == null) {
+                               InputStream in = (InputStream)input;
+                               OutputStream out = (OutputStream)output;
+                               byte[] b = new byte[buffSize];
+                               int i;
                                while ((i = in.read(b)) > 0) {
                                        c += i;
                                        out.write(b, 0, i);
                                }
-               } else {
-                               Reader in = (input instanceof Reader ? 
(Reader)input : new InputStreamReader((InputStream)input, IOUtils.UTF8));
-                               Writer out = (output instanceof Writer ? 
(Writer)output : new OutputStreamWriter((OutputStream)output, IOUtils.UTF8));
+                       } else {
+                               Reader in = (input instanceof Reader ? 
(Reader)input : new InputStreamReader((InputStream)input, UTF8));
+                               Writer out = (output instanceof Writer ? 
(Writer)output : new OutputStreamWriter((OutputStream)output, UTF8));
                                output = out;
                                input = in;
                                if (byLines || lineProcessor != null) {
@@ -201,16 +203,16 @@ public class IOPipe {
                                        }
                                }
                        }
-                       } finally {
+               } finally {
                        closeQuietly(input, output);
                }
                return c;
        }
 
        private void closeQuietly(Object input, Object output) {
-                                       if (closeIn)
+               if (closeIn)
                        IOUtils.closeQuietly(input);
-                                       if (closeOut)
+               if (closeOut)
                        IOUtils.closeQuietly(output);
        }
 }

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/utils/ManifestFile.java
----------------------------------------------------------------------
diff --git 
a/juneau-core/src/main/java/org/apache/juneau/utils/ManifestFile.java 
b/juneau-core/src/main/java/org/apache/juneau/utils/ManifestFile.java
index 3f4d9a4..dbca516 100644
--- a/juneau-core/src/main/java/org/apache/juneau/utils/ManifestFile.java
+++ b/juneau-core/src/main/java/org/apache/juneau/utils/ManifestFile.java
@@ -12,13 +12,14 @@
 // 
***************************************************************************************************************************
 package org.apache.juneau.utils;
 
+import static org.apache.juneau.internal.IOUtils.*;
+
 import java.io.*;
 import java.net.*;
 import java.util.*;
 import java.util.jar.*;
 
 import org.apache.juneau.*;
-import org.apache.juneau.internal.*;
 
 /**
  * Utility class for working with Jar manifest files.
@@ -43,9 +44,9 @@ public class ManifestFile extends ObjectMap {
                        mf.read(fis);
                        load(mf);
                } catch (IOException e) {
-                       throw new IOException("Problem detected in MANIFEST.MF. 
 Contents below:\n" + IOUtils.read(f), e);
+                       throw new IOException("Problem detected in MANIFEST.MF. 
 Contents below:\n" + read(f), e);
                } finally {
-                       IOUtils.closeQuietly(fis);
+                       closeQuietly(fis);
                }
        }
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/utils/MessageBundle.java
----------------------------------------------------------------------
diff --git 
a/juneau-core/src/main/java/org/apache/juneau/utils/MessageBundle.java 
b/juneau-core/src/main/java/org/apache/juneau/utils/MessageBundle.java
index cb6dd18..2feef38 100644
--- a/juneau-core/src/main/java/org/apache/juneau/utils/MessageBundle.java
+++ b/juneau-core/src/main/java/org/apache/juneau/utils/MessageBundle.java
@@ -12,13 +12,14 @@
 // 
***************************************************************************************************************************
 package org.apache.juneau.utils;
 
+import static org.apache.juneau.internal.ThrowableUtils.*;
+
 import java.text.*;
 import java.util.*;
 import java.util.concurrent.*;
 
 import org.apache.juneau.*;
 import org.apache.juneau.annotation.*;
-import org.apache.juneau.internal.*;
 
 /**
  * Wraps a {@link ResourceBundle} to provide some useful additional 
functionality.
@@ -136,7 +137,7 @@ public class MessageBundle extends ResourceBundle {
         */
        @SuppressWarnings("hiding")
        public MessageBundle addSearchPath(Class<?> forClass, String 
bundlePath) {
-               ThrowableUtils.assertSameThread(creationThreadId, "This method 
can only be called from the same thread that created the object.");
+               assertSameThread(creationThreadId, "This method can only be 
called from the same thread that created the object.");
                MessageBundle srb = new MessageBundle(forClass, bundlePath);
                if (srb.rb != null) {
                        allKeys.addAll(srb.keySet());

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/utils/MetadataMap.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/utils/MetadataMap.java 
b/juneau-core/src/main/java/org/apache/juneau/utils/MetadataMap.java
index 62d4623..ab03730 100644
--- a/juneau-core/src/main/java/org/apache/juneau/utils/MetadataMap.java
+++ b/juneau-core/src/main/java/org/apache/juneau/utils/MetadataMap.java
@@ -12,10 +12,11 @@
 // 
***************************************************************************************************************************
 package org.apache.juneau.utils;
 
+import static org.apache.juneau.internal.ClassUtils.*;
+
 import java.lang.reflect.*;
 
 import org.apache.juneau.*;
-import org.apache.juneau.internal.*;
 
 /**
  * Utility class for quick lookup of class metadata instances.
@@ -56,7 +57,7 @@ public class MetadataMap {
                        try {
                                for (Constructor<?> con : c.getConstructors()) {
                                        Class<?>[] params = 
con.getParameterTypes();
-                                       if (params.length == 1 && 
ClassUtils.isParentClass(params[0], constructorArg.getClass())) {
+                                       if (params.length == 1 && 
isParentClass(params[0], constructorArg.getClass())) {
                                                o = 
con.newInstance(constructorArg);
                                                break;
                                        }

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/utils/PojoQuery.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/utils/PojoQuery.java 
b/juneau-core/src/main/java/org/apache/juneau/utils/PojoQuery.java
index 4f76b5a..e93f989 100644
--- a/juneau-core/src/main/java/org/apache/juneau/utils/PojoQuery.java
+++ b/juneau-core/src/main/java/org/apache/juneau/utils/PojoQuery.java
@@ -13,6 +13,7 @@
 package org.apache.juneau.utils;
 
 import static java.util.Calendar.*;
+import static org.apache.juneau.internal.StringUtils.*;
 
 import java.text.*;
 import java.util.*;
@@ -364,7 +365,7 @@ public final class PojoQuery {
                List<String> columns = new ArrayList<String>(sort.keySet());
                Collections.reverse(columns);
                for (final String c : columns) {
-                       final boolean isDesc = 
StringUtils.startsWith(sort.get(c).toString(), 'd');
+                       final boolean isDesc = 
startsWith(sort.get(c).toString(), 'd');
                        Comparator comp = new Comparator<Map>() {
                                @Override /* Comparator */
                                public int compare(Map m1, Map m2) {
@@ -638,7 +639,7 @@ public final class PojoQuery {
 
                        // Make all tokens 'ORed'.  There is no way to AND 
numeric tokens.
                        for (int i = 0; i < s2.length; i++)
-                               if (! StringUtils.startsWith(s2[i], '!'))
+                               if (! startsWith(s2[i], '!'))
                                        s2[i] = "^"+s2[i];
 
                        List<String> l = new LinkedList<String>();

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/utils/ProcBuilder.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/utils/ProcBuilder.java 
b/juneau-core/src/main/java/org/apache/juneau/utils/ProcBuilder.java
index 376317b..d44831f 100644
--- a/juneau-core/src/main/java/org/apache/juneau/utils/ProcBuilder.java
+++ b/juneau-core/src/main/java/org/apache/juneau/utils/ProcBuilder.java
@@ -12,6 +12,9 @@
 // 
***************************************************************************************************************************
 package org.apache.juneau.utils;
 
+import static org.apache.juneau.internal.StringUtils.*;
+import static org.apache.juneau.internal.IOUtils.*;
+
 import java.io.*;
 import java.lang.reflect.*;
 import java.util.*;
@@ -282,13 +285,13 @@ public class ProcBuilder {
                        throw new IOException("No command specified in 
ProcBuilder.");
                try {
                        logWriters.append(divider).append('\n').flush();
-                       logWriters.append(StringUtils.join(pb.command(), " 
")).append('\n').flush();
+                       logWriters.append(join(pb.command(), " 
")).append('\n').flush();
                        p = pb.start();
                        IOPipe.create(p.getInputStream(), 
outWriters).lineProcessor(lp).byLines(byLines).run();
                        int rc = p.waitFor();
                        logWriters.append("Exit: 
").append(String.valueOf(p.exitValue())).append('\n').flush();
                        if (rc > maxExitStatus)
-                               throw new IOException("Return code "+rc+" from 
command " + StringUtils.join(pb.command(), " "));
+                               throw new IOException("Return code "+rc+" from 
command " + join(pb.command(), " "));
                        return rc;
                } finally {
                        close();
@@ -327,7 +330,7 @@ public class ProcBuilder {
         * This method is only needed if the {@link #getScanner()} method was 
used.
         */
        private void close() {
-               IOUtils.closeQuietly(logWriters, outWriters);
+               closeQuietly(logWriters, outWriters);
                if (p != null)
                        p.destroy();
        }

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/xml/XmlClassMeta.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/xml/XmlClassMeta.java 
b/juneau-core/src/main/java/org/apache/juneau/xml/XmlClassMeta.java
index fb0a9c2..8624c43 100644
--- a/juneau-core/src/main/java/org/apache/juneau/xml/XmlClassMeta.java
+++ b/juneau-core/src/main/java/org/apache/juneau/xml/XmlClassMeta.java
@@ -12,6 +12,10 @@
 // 
***************************************************************************************************************************
 package org.apache.juneau.xml;
 
+import static org.apache.juneau.internal.StringUtils.*;
+import static org.apache.juneau.internal.ReflectionUtils.*;
+
+
 import java.util.*;
 
 import org.apache.juneau.*;
@@ -37,10 +41,10 @@ public class XmlClassMeta extends ClassMetaExtended {
                super(cm);
                Class<?> c = getInnerClass();
                this.namespace = findNamespace(c);
-               this.xml =  ReflectionUtils.getAnnotation(Xml.class, c);
+               this.xml = ReflectionUtils.getAnnotation(Xml.class, c);
                if (xml != null) {
                        this.format = xml.format();
-                       this.childName = 
StringUtils.nullIfEmpty(xml.childName());
+                       this.childName = nullIfEmpty(xml.childName());
 
                } else {
                        this.format = XmlFormat.DEFAULT;
@@ -99,8 +103,8 @@ public class XmlClassMeta extends ClassMetaExtended {
                if (c == null)
                        return null;
 
-               List<Xml> xmls = ReflectionUtils.findAnnotations(Xml.class, c);
-               List<XmlSchema> schemas = 
ReflectionUtils.findAnnotations(XmlSchema.class, c);
+               List<Xml> xmls = findAnnotations(Xml.class, c);
+               List<XmlSchema> schemas = findAnnotations(XmlSchema.class, c);
                return XmlUtils.findNamespace(xmls, schemas);
        }
 }

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/xml/XmlParserSession.java
----------------------------------------------------------------------
diff --git 
a/juneau-core/src/main/java/org/apache/juneau/xml/XmlParserSession.java 
b/juneau-core/src/main/java/org/apache/juneau/xml/XmlParserSession.java
index ff216bd..098c5ee 100644
--- a/juneau-core/src/main/java/org/apache/juneau/xml/XmlParserSession.java
+++ b/juneau-core/src/main/java/org/apache/juneau/xml/XmlParserSession.java
@@ -14,6 +14,7 @@ package org.apache.juneau.xml;
 
 import static javax.xml.stream.XMLStreamConstants.*;
 import static org.apache.juneau.xml.XmlParserContext.*;
+import static org.apache.juneau.internal.IOUtils.*;
 
 import java.io.*;
 import java.lang.reflect.*;
@@ -24,7 +25,6 @@ import javax.xml.stream.util.*;
 
 import org.apache.juneau.*;
 import org.apache.juneau.http.*;
-import org.apache.juneau.internal.*;
 import org.apache.juneau.parser.*;
 import org.apache.juneau.xml.annotation.*;
 
@@ -101,7 +101,7 @@ public class XmlParserSession extends ParserSession {
         */
        public final XMLStreamReader getXmlStreamReader() throws Exception {
                try {
-                       Reader r = IOUtils.getBufferedReader(getReader());
+                       Reader r = getBufferedReader(getReader());
                        XMLInputFactory factory = XMLInputFactory.newInstance();
                        factory.setProperty(XMLInputFactory.IS_VALIDATING, 
validating);
                        factory.setProperty(XMLInputFactory.IS_COALESCING, 
true);

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/xml/XmlSchemaSerializer.java
----------------------------------------------------------------------
diff --git 
a/juneau-core/src/main/java/org/apache/juneau/xml/XmlSchemaSerializer.java 
b/juneau-core/src/main/java/org/apache/juneau/xml/XmlSchemaSerializer.java
index 9a499d2..aeb5fc2 100644
--- a/juneau-core/src/main/java/org/apache/juneau/xml/XmlSchemaSerializer.java
+++ b/juneau-core/src/main/java/org/apache/juneau/xml/XmlSchemaSerializer.java
@@ -13,6 +13,8 @@
 package org.apache.juneau.xml;
 
 import static org.apache.juneau.xml.annotation.XmlFormat.*;
+import static org.apache.juneau.internal.ArrayUtils.*;
+
 
 import java.io.*;
 import java.lang.reflect.*;
@@ -27,7 +29,6 @@ import javax.xml.validation.*;
 import org.apache.juneau.*;
 import org.apache.juneau.annotation.*;
 import org.apache.juneau.http.*;
-import org.apache.juneau.internal.*;
 import org.apache.juneau.serializer.*;
 import org.apache.juneau.xml.annotation.*;
 import org.w3c.dom.bootstrap.*;
@@ -85,7 +86,7 @@ public class XmlSchemaSerializer extends XmlSerializer {
                        findNsfMappings(s, o);
 
                Namespace xs = s.getXsNamespace();
-               Namespace[] allNs = ArrayUtils.append(new 
Namespace[]{s.getDefaultNamespace()}, s.getNamespaces());
+               Namespace[] allNs = append(new 
Namespace[]{s.getDefaultNamespace()}, s.getNamespaces());
 
                Schemas schemas = new Schemas(s, xs, s.getDefaultNamespace(), 
allNs);
                schemas.process(s, o);

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/xml/XmlSerializerSession.java
----------------------------------------------------------------------
diff --git 
a/juneau-core/src/main/java/org/apache/juneau/xml/XmlSerializerSession.java 
b/juneau-core/src/main/java/org/apache/juneau/xml/XmlSerializerSession.java
index bd99974..5ee1962 100644
--- a/juneau-core/src/main/java/org/apache/juneau/xml/XmlSerializerSession.java
+++ b/juneau-core/src/main/java/org/apache/juneau/xml/XmlSerializerSession.java
@@ -15,13 +15,14 @@ package org.apache.juneau.xml;
 import static org.apache.juneau.msgpack.MsgPackSerializerContext.*;
 import static org.apache.juneau.xml.NamespaceFactory.*;
 import static org.apache.juneau.xml.XmlSerializerContext.*;
+import static org.apache.juneau.internal.StringUtils.*;
+import static org.apache.juneau.internal.ArrayUtils.*;
 
 import java.lang.reflect.*;
 import java.util.*;
 
 import org.apache.juneau.*;
 import org.apache.juneau.http.*;
-import org.apache.juneau.internal.*;
 import org.apache.juneau.json.*;
 import org.apache.juneau.serializer.*;
 
@@ -87,7 +88,7 @@ public class XmlSerializerSession extends SerializerSession {
        private static Namespace findDefaultNamespace(String s) {
                if (s == null)
                        return null;
-               if (StringUtils.startsWith(s, '{'))
+               if (startsWith(s, '{'))
                        return parseNamespace(s);
                if (! s.startsWith("http://";))
                        return get(s, "http://unknown";);
@@ -115,7 +116,7 @@ public class XmlSerializerSession extends SerializerSession 
{
                if (defaultNamespace != null && 
(ns.uri.equals(defaultNamespace.uri) || ns.name.equals(defaultNamespace.name)))
                        defaultNamespace = ns;
                else
-                       namespaces = ArrayUtils.append(namespaces, ns);
+                       namespaces = append(namespaces, ns);
        }
 
        /**

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-core/src/main/java/org/apache/juneau/xml/XmlUtils.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/xml/XmlUtils.java 
b/juneau-core/src/main/java/org/apache/juneau/xml/XmlUtils.java
index 483e06d..5ffef5c 100644
--- a/juneau-core/src/main/java/org/apache/juneau/xml/XmlUtils.java
+++ b/juneau-core/src/main/java/org/apache/juneau/xml/XmlUtils.java
@@ -12,6 +12,8 @@
 // 
***************************************************************************************************************************
 package org.apache.juneau.xml;
 
+import static org.apache.juneau.internal.StringUtils.*;
+
 import java.io.*;
 import java.net.*;
 import java.util.*;
@@ -466,7 +468,7 @@ public final class XmlUtils {
        // Converts an integer to a hexadecimal string padded to 4 places.
        private static final Writer appendPaddedHexChar(Writer out, int num) 
throws IOException {
                out.append("_x");
-               for (char c : StringUtils.toHex(num))
+               for (char c : toHex(num))
                        out.append(c);
                return out.append('_');
        }

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/SqlQueryResource.java
----------------------------------------------------------------------
diff --git 
a/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/SqlQueryResource.java
 
b/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/SqlQueryResource.java
index 78ad06b..ea7c661 100644
--- 
a/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/SqlQueryResource.java
+++ 
b/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/SqlQueryResource.java
@@ -14,6 +14,7 @@ package org.apache.juneau.examples.rest;
 
 import static javax.servlet.http.HttpServletResponse.*;
 import static org.apache.juneau.dto.html5.HtmlBuilder.*;
+import static org.apache.juneau.internal.StringUtils.*;
 
 import java.sql.*;
 import java.util.*;
@@ -21,7 +22,6 @@ import java.util.*;
 import org.apache.juneau.dto.*;
 import org.apache.juneau.dto.html5.*;
 import org.apache.juneau.ini.*;
-import org.apache.juneau.internal.*;
 import org.apache.juneau.microservice.*;
 import org.apache.juneau.rest.*;
 import org.apache.juneau.rest.annotation.*;
@@ -111,7 +111,7 @@ public class SqlQueryResource extends Resource {
                List<Object> results = new LinkedList<Object>();
 
                // Don't try to submit empty input.
-               if (StringUtils.isEmpty(in.sql))
+               if (isEmpty(in.sql))
                        return results;
                
                System.err.println("SQL=["+in.sql+"]");

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-examples-rest/src/test/java/org/apache/juneau/examples/rest/TestMultiPartFormPostsTest.java
----------------------------------------------------------------------
diff --git 
a/juneau-examples-rest/src/test/java/org/apache/juneau/examples/rest/TestMultiPartFormPostsTest.java
 
b/juneau-examples-rest/src/test/java/org/apache/juneau/examples/rest/TestMultiPartFormPostsTest.java
index c070408..6c72dde 100644
--- 
a/juneau-examples-rest/src/test/java/org/apache/juneau/examples/rest/TestMultiPartFormPostsTest.java
+++ 
b/juneau-examples-rest/src/test/java/org/apache/juneau/examples/rest/TestMultiPartFormPostsTest.java
@@ -13,12 +13,12 @@
 package org.apache.juneau.examples.rest;
 
 import static org.junit.Assert.*;
+import static org.apache.juneau.internal.FileUtils.*;
 
 import java.io.*;
 
 import org.apache.http.*;
 import org.apache.http.entity.mime.*;
-import org.apache.juneau.internal.*;
 import org.apache.juneau.rest.client.*;
 import org.apache.juneau.utils.*;
 import org.junit.*;
@@ -34,7 +34,7 @@ public class TestMultiPartFormPostsTest extends RestTestcase {
        @Test
        public void testUpload() throws Exception {
                RestClient client = SamplesMicroservice.DEFAULT_CLIENT;
-               File f = FileUtils.createTempFile("testMultiPartFormPosts.txt");
+               File f = createTempFile("testMultiPartFormPosts.txt");
                IOPipe.create(new StringReader("test!"), new 
FileWriter(f)).closeOut().run();
                HttpEntity entity = 
MultipartEntityBuilder.create().addBinaryBody(f.getName(), f).build();
                client.doPost(URL + "/upload", entity);

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-examples-rest/src/test/java/org/apache/juneau/examples/rest/TestUtils.java
----------------------------------------------------------------------
diff --git 
a/juneau-examples-rest/src/test/java/org/apache/juneau/examples/rest/TestUtils.java
 
b/juneau-examples-rest/src/test/java/org/apache/juneau/examples/rest/TestUtils.java
index b61fc53..8c79cf7 100644
--- 
a/juneau-examples-rest/src/test/java/org/apache/juneau/examples/rest/TestUtils.java
+++ 
b/juneau-examples-rest/src/test/java/org/apache/juneau/examples/rest/TestUtils.java
@@ -13,6 +13,8 @@
 package org.apache.juneau.examples.rest;
 
 import static org.junit.Assert.*;
+import static org.apache.juneau.internal.StringUtils.*;
+import static org.apache.juneau.internal.IOUtils.*;
 
 import java.io.*;
 import java.text.*;
@@ -26,7 +28,6 @@ import javax.xml.transform.dom.*;
 import javax.xml.transform.stream.*;
 import javax.xml.validation.*;
 
-import org.apache.juneau.internal.*;
 import org.apache.juneau.json.*;
 import org.apache.juneau.serializer.*;
 import org.apache.juneau.transforms.*;
@@ -252,7 +253,7 @@ public class TestUtils {
                if (is == null) {
                        is = new FileInputStream(p);
                }
-               String e = IOUtils.read(is);
+               String e = read(is);
                e = e.replaceAll("\r", "");
                return e;
        }
@@ -268,7 +269,7 @@ public class TestUtils {
 
        public static void debugOut(Object o) {
                try {
-                       
System.err.println(StringUtils.decodeHex(JsonSerializer.DEFAULT_LAX.serialize(o)));
+                       
System.err.println(decodeHex(JsonSerializer.DEFAULT_LAX.serialize(o)));
                } catch (SerializeException e) {
                        e.printStackTrace();
                }

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-microservice/src/main/java/org/apache/juneau/microservice/Microservice.java
----------------------------------------------------------------------
diff --git 
a/juneau-microservice/src/main/java/org/apache/juneau/microservice/Microservice.java
 
b/juneau-microservice/src/main/java/org/apache/juneau/microservice/Microservice.java
index b96f01b..4ca8551 100755
--- 
a/juneau-microservice/src/main/java/org/apache/juneau/microservice/Microservice.java
+++ 
b/juneau-microservice/src/main/java/org/apache/juneau/microservice/Microservice.java
@@ -12,6 +12,8 @@
 // 
***************************************************************************************************************************
 package org.apache.juneau.microservice;
 
+import static org.apache.juneau.internal.IOUtils.*;
+
 import java.io.*;
 import java.net.*;
 import java.util.*;
@@ -416,7 +418,7 @@ public abstract class Microservice {
                                try {
                                        m.read(new FileInputStream(f));
                                } catch (IOException e) {
-                                       System.err.println("Problem detected in 
MANIFEST.MF.  Contents below:\n" + IOUtils.read(f));
+                                       System.err.println("Problem detected in 
MANIFEST.MF.  Contents below:\n" + read(f));
                                        throw e;
                                }
                        } else {
@@ -427,7 +429,7 @@ public abstract class Microservice {
                                        try {
                                                m.read(url.openStream());
                                        } catch (IOException e) {
-                                               System.err.println("Problem 
detected in MANIFEST.MF.  Contents below:\n" + IOUtils.read(url.openStream()));
+                                               System.err.println("Problem 
detected in MANIFEST.MF.  Contents below:\n" + read(url.openStream()));
                                                throw e;
                                        }
                                }

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-microservice/src/main/java/org/apache/juneau/microservice/RestMicroservice.java
----------------------------------------------------------------------
diff --git 
a/juneau-microservice/src/main/java/org/apache/juneau/microservice/RestMicroservice.java
 
b/juneau-microservice/src/main/java/org/apache/juneau/microservice/RestMicroservice.java
index 9c05035..a4e4953 100755
--- 
a/juneau-microservice/src/main/java/org/apache/juneau/microservice/RestMicroservice.java
+++ 
b/juneau-microservice/src/main/java/org/apache/juneau/microservice/RestMicroservice.java
@@ -12,6 +12,11 @@
 // 
***************************************************************************************************************************
 package org.apache.juneau.microservice;
 
+import static org.apache.juneau.internal.StringUtils.*;
+import static org.apache.juneau.internal.FileUtils.*;
+import static org.apache.juneau.internal.ArrayUtils.*;
+import static org.apache.juneau.internal.ClassUtils.*;
+
 import java.io.*;
 import java.net.*;
 import java.util.*;
@@ -22,7 +27,6 @@ import javax.servlet.*;
 
 import org.apache.juneau.*;
 import org.apache.juneau.ini.*;
-import org.apache.juneau.internal.*;
 import org.apache.juneau.json.*;
 import org.apache.juneau.microservice.resources.*;
 import org.apache.juneau.parser.*;
@@ -249,10 +253,10 @@ public class RestMicroservice extends Microservice {
                ConfigFile cf = getConfig();
                logger = Logger.getLogger("");
                String logFile = cf.getString("Logging/logFile");
-               if (! StringUtils.isEmpty(logFile)) {
+               if (! isEmpty(logFile)) {
                        LogManager.getLogManager().reset();
                        String logDir = cf.getString("Logging/logDir", ".");
-                       FileUtils.mkdirs(new File(logDir), false);
+                       mkdirs(new File(logDir), false);
                        boolean append = cf.getBoolean("Logging/append");
                        int limit = cf.getInt("Logging/limit", 1024*1024);
                        int count = cf.getInt("Logging/count", 1);
@@ -361,8 +365,8 @@ public class RestMicroservice extends Microservice {
 
                        // We're using Jetty 8 that doesn't allow regular 
expression matching in SslContextFactory.setExcludeCipherSuites(),
                        // so to prevent having the config file list all old 
cipher suites, exclude the known bad ones.
-                       String[] excludeCipherSuites = ArrayUtils.combine(
-                               
StringUtils.split("SSL_RSA_WITH_DES_CBC_SHA,SSL_DHE_RSA_WITH_DES_CBC_SHA,SSL_DHE_DSS_WITH_DES_CBC_SHA,SSL_RSA_EXPORT_WITH_RC4_40_MD5,SSL_RSA_EXPORT_WITH_DES40_CBC_SHA,SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA,SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA,SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA256,TLS_DHE_DSS_WITH_AES_256_CBC_SHA256,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_DSS_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA256,TLS_DHE_DSS_WITH_AES_128_CBC_SHA256,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_DSS_WITH_AES_128_CBC_SHA",
 ','),
+                       String[] excludeCipherSuites = combine(
+                               
split("SSL_RSA_WITH_DES_CBC_SHA,SSL_DHE_RSA_WITH_DES_CBC_SHA,SSL_DHE_DSS_WITH_DES_CBC_SHA,SSL_RSA_EXPORT_WITH_RC4_40_MD5,SSL_RSA_EXPORT_WITH_DES40_CBC_SHA,SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA,SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA,SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA256,TLS_DHE_DSS_WITH_AES_256_CBC_SHA256,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_DSS_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA256,TLS_DHE_DSS_WITH_AES_128_CBC_SHA256,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_DSS_WITH_AES_128_CBC_SHA",
 ','),
                                sslContextFactory.getExcludeCipherSuites()
                        );
                        
sslContextFactory.setExcludeCipherSuites(excludeCipherSuites);
@@ -480,14 +484,14 @@ public class RestMicroservice extends Microservice {
                if (resourceMap != null && ! resourceMap.isEmpty()) {
                        for (Map.Entry<String,Object> e : 
resourceMap.entrySet()) {
                                Class<?> c = 
Class.forName(e.getValue().toString());
-                               if (! ClassUtils.isParentClass(Servlet.class, 
c))
+                               if (! isParentClass(Servlet.class, c))
                                        throw new 
ClassNotFoundException("Invalid class specified as resource.  Must be a 
Servlet.  Class='"+c.getName()+"'");
                                rm.put(e.getKey(), (Class<? extends Servlet>)c);
                        }
                } else if (resources.length > 0) {
                        for (String resource : resources) {
                                Class<?> c = Class.forName(resource);
-                               if (! ClassUtils.isParentClass(Servlet.class, 
c))
+                               if (! isParentClass(Servlet.class, c))
                                        throw new 
ClassNotFoundException("Invalid class specified as resource.  Must be a 
Servlet.  Class='"+c.getName()+"'");
                                RestResource rr = 
c.getAnnotation(RestResource.class);
                                String path = rr == null ? "/*" : rr.path();

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-microservice/src/main/java/org/apache/juneau/microservice/resources/LogEntryFormatter.java
----------------------------------------------------------------------
diff --git 
a/juneau-microservice/src/main/java/org/apache/juneau/microservice/resources/LogEntryFormatter.java
 
b/juneau-microservice/src/main/java/org/apache/juneau/microservice/resources/LogEntryFormatter.java
index 312dff1..8731183 100644
--- 
a/juneau-microservice/src/main/java/org/apache/juneau/microservice/resources/LogEntryFormatter.java
+++ 
b/juneau-microservice/src/main/java/org/apache/juneau/microservice/resources/LogEntryFormatter.java
@@ -12,6 +12,8 @@
 // 
***************************************************************************************************************************
 package org.apache.juneau.microservice.resources;
 
+import static org.apache.juneau.internal.StringUtils.*;
+
 import java.text.*;
 import java.util.*;
 import java.util.concurrent.*;
@@ -20,8 +22,6 @@ import java.util.logging.*;
 import java.util.logging.Formatter;
 import java.util.regex.*;
 
-import org.apache.juneau.internal.*;
-
 /**
  * Log entry formatter.
  * <p>
@@ -239,7 +239,7 @@ public class LogEntryFormatter extends Formatter {
                        r.getThreadID(),
                        r.getThrown() == null ? "" : 
r.getThrown().getMessage());
                if (t != null)
-                       s += String.format("%n%s", 
StringUtils.getStackTrace(r.getThrown()));
+                       s += String.format("%n%s", 
getStackTrace(r.getThrown()));
                return s;
        }
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/3bdc0d85/juneau-microservice/src/main/java/org/apache/juneau/microservice/resources/LogsResource.java
----------------------------------------------------------------------
diff --git 
a/juneau-microservice/src/main/java/org/apache/juneau/microservice/resources/LogsResource.java
 
b/juneau-microservice/src/main/java/org/apache/juneau/microservice/resources/LogsResource.java
index e39aa7a..865c35c 100755
--- 
a/juneau-microservice/src/main/java/org/apache/juneau/microservice/resources/LogsResource.java
+++ 
b/juneau-microservice/src/main/java/org/apache/juneau/microservice/resources/LogsResource.java
@@ -15,6 +15,7 @@ package org.apache.juneau.microservice.resources;
 import static javax.servlet.http.HttpServletResponse.*;
 import static org.apache.juneau.html.HtmlDocSerializerContext.*;
 import static org.apache.juneau.rest.RestContext.*;
+import static org.apache.juneau.internal.StringUtils.*;
 
 import java.io.*;
 import java.net.*;
@@ -25,7 +26,6 @@ import org.apache.juneau.*;
 import org.apache.juneau.annotation.*;
 import org.apache.juneau.dto.*;
 import org.apache.juneau.ini.*;
-import org.apache.juneau.internal.*;
 import org.apache.juneau.microservice.*;
 import org.apache.juneau.rest.*;
 import org.apache.juneau.rest.annotation.*;
@@ -133,7 +133,7 @@ public class LogsResource extends Resource {
                if (f.isDirectory())
                        throw new RestException(SC_METHOD_NOT_ALLOWED, "View 
not available on directories");
 
-               Date startDate = StringUtils.parseISO8601Date(start), endDate = 
StringUtils.parseISO8601Date(end);
+               Date startDate = parseISO8601Date(start), endDate = 
parseISO8601Date(end);
 
                if (! highlight) {
                        Object o = getReader(f, startDate, endDate, thread, 
loggers, severity);
@@ -202,7 +202,7 @@ public class LogsResource extends Resource {
        public LogParser viewParsedEntries(RestRequest req, @PathRemainder 
String path, @Query("start") String start, @Query("end") String end, 
@Query("thread") String thread, @Query("loggers") String[] loggers, 
@Query("severity") String[] severity) throws Exception {
 
                File f = getFile(path);
-               Date startDate = StringUtils.parseISO8601Date(start), endDate = 
StringUtils.parseISO8601Date(end);
+               Date startDate = parseISO8601Date(start), endDate = 
parseISO8601Date(end);
 
                if (f.isDirectory())
                        throw new RestException(SC_METHOD_NOT_ALLOWED, "View 
not available on directories");


Reply via email to