// Resolve the Java interface
javaInterface = resolver.resolveModel(JavaInterface.class, javaInterface, context);
if (javaInterface.isUnresolved()) {
// If the Java interface has never been resolved yet, do it now
ClassReference classReference = new ClassReference(javaInterface.getName());
classReference = resolver.resolveModel(ClassReference.class, classReference, context);
Class<?> javaClass = classReference.getJavaClass();
if (javaClass == null) {
error(monitor, "ClassNotFoundException", resolver, javaInterface.getName());
return javaInterface;
//throw new ContributionResolveException(new ClassNotFoundException(javaInterface.getName()));
}
try {
// Introspect the Java interface and populate the interface and
// operations
javaFactory.createJavaInterface(javaInterface, javaClass);
// cache the contribution that was used to resolve the Java interface
// in case we need it to reolve a referenced WSDL file
javaInterface.setContributionContainingClass(classReference.getContributionContainingClass());
} catch (InvalidInterfaceException e) {
ContributionResolveException ce = new ContributionResolveException("Resolving Java interface " + javaInterface.getName(), e);
//error("ContributionResolveException", javaFactory, ce);
error(monitor, "InvalidInterfaceException", javaFactory, e);