本文整理汇总了Java中com.fasterxml.jackson.databind.util.ClassUtil.findClass方法的典型用法代码示例。如果您正苦于以下问题:Java ClassUtil.findClass方法的具体用法?Java ClassUtil.findClass怎么用?Java ClassUtil.findClass使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.fasterxml.jackson.databind.util.ClassUtil
的用法示例。
在下文中一共展示了ClassUtil.findClass方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: makeValue
import com.fasterxml.jackson.databind.util.ClassUtil; //导入方法依赖的package包/类
public ObjBase makeValue(ObjectId id, DBObject rawData, Class<? extends ObjBase> c){
if (Modifier.isAbstract(c.getModifiers()) || Modifier.isInterface(c.getModifiers())) {
//extract declared schema from result, use that class
Object schemaId = rawData.get(ReservedFieldNames.SCHEMA);
try {
c = (Class<ObjBase>) ClassUtil.findClass(schemaId.toString());
} catch (ClassNotFoundException ex) {
log.warn("Could not find fallback schema {}", schemaId);
return null;
}
}
ObjBase value = makeStub(id, c, rawData);
// update stub with the rest of the data,
if (value != null && !(value instanceof Swappable))
try {
unmarshaller.unmarshall(Bson.createDocument(rawData), value, this);
} catch (MarshallingException me){
log.warn(me.getMessage(), me);
}
return value;
}
示例2: typeFromId
import com.fasterxml.jackson.databind.util.ClassUtil; //导入方法依赖的package包/类
@Override
public JavaType typeFromId(String id) {
try{
return super.typeFromId(id);
} catch (IllegalArgumentException iae){
try {
//try the widening type construction instead
Class<?> cls = ClassUtil.findClass(id);
if (cls.isAssignableFrom(_baseType.getRawClass()) || _baseType.getRawClass().equals(JSONFilter.class)) return _baseType;
//TODO: make this message not suck
else throw new IllegalArgumentException("Invalid type id '"+id+"' (for id type 'Id.class'): ");
} catch (ClassNotFoundException cnfe){
throw new IllegalArgumentException("Invalid type id '"+id+"' (for id type 'Id.class'): no such class found");
}
catch (Exception e){
//could neither narrow or widen that type combination
throw new IllegalArgumentException("Invalid type id '"+id+"' (for id type 'Id.class'): "+e.getMessage(), e);
}
}
}
示例3: typeFromId
import com.fasterxml.jackson.databind.util.ClassUtil; //导入方法依赖的package包/类
@Override
public JavaType typeFromId(String id)
{
/* 30-Jan-2010, tatu: Most ids are basic class names; so let's first
* check if any generics info is added; and only then ask factory
* to do translation when necessary
*/
if (id.indexOf('<') > 0) {
JavaType t = typeFactory.constructFromCanonical(id);
// note: may want to try combining with specialization (esp for EnumMap)?
return t;
}
try {
Class<?> cls = ClassUtil.findClass(id);
return typeFactory.constructSpecializedType(baseType, cls);
} catch (ClassNotFoundException ignored) {
throw new IllegalArgumentException("Invalid type id '"+id+"' (for id type 'Id.class'): no such class found");
} catch (Exception e) {
throw new IllegalArgumentException("Invalid type id '"+id+"' (for id type 'Id.class'): "+e.getMessage(), e);
}
}
示例4: findClass
import com.fasterxml.jackson.databind.util.ClassUtil; //导入方法依赖的package包/类
protected Class<?> findClass(String paramString, MyTokenizer paramMyTokenizer)
{
try
{
Class localClass = ClassUtil.findClass(paramString);
return localClass;
}
catch (Exception localException)
{
if ((localException instanceof RuntimeException))
throw ((RuntimeException)localException);
throw _problem(paramMyTokenizer, "Can not locate class '" + paramString + "', problem: " + localException.getMessage());
}
}
示例5: findClass
import com.fasterxml.jackson.databind.util.ClassUtil; //导入方法依赖的package包/类
protected Class<?> findClass(String className, MyTokenizer tokens)
{
try {
return ClassUtil.findClass(className);
} catch (Exception e) {
if (e instanceof RuntimeException) {
throw (RuntimeException) e;
}
throw _problem(tokens, "Can not locate class '"+className+"', problem: "+e.getMessage());
}
}
示例6: findClass
import com.fasterxml.jackson.databind.util.ClassUtil; //导入方法依赖的package包/类
public Class<?> findClass(String paramString)
{
return ClassUtil.findClass(paramString);
}