From: fcarrion Date: Wed, 11 Apr 2007 21:51:57 +0000 (+0000) Subject: Send back error code and Initialise jaxrpcmapping path X-Git-Url: https://git.internetallee.de/?a=commitdiff_plain;h=cc42ce824e440c1f663f49252a4bf721f8cac2d5;p=tomcat7.0 Send back error code and Initialise jaxrpcmapping path git-svn-id: https://svn.apache.org/repos/asf/tomcat/tc6.0.x/trunk@527693 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/java/org/apache/catalina/core/NamingContextListener.java b/java/org/apache/catalina/core/NamingContextListener.java index e81930b5b..f75ededec 100644 --- a/java/org/apache/catalina/core/NamingContextListener.java +++ b/java/org/apache/catalina/core/NamingContextListener.java @@ -899,6 +899,40 @@ public class NamingContextListener service.setWsdlfile(wsdlURL.toString()); } + if (service.getJaxrpcmappingfile() != null) { + URL jaxrpcURL = null; + + try { + jaxrpcURL = new URL(service.getJaxrpcmappingfile()); + } catch (MalformedURLException e) { + jaxrpcURL = null; + } + if (jaxrpcURL == null) { + try { + jaxrpcURL = ((Context) container). + getServletContext(). + getResource(service.getJaxrpcmappingfile()); + } catch (MalformedURLException e) { + jaxrpcURL = null; + } + } + if (jaxrpcURL == null) { + try { + jaxrpcURL = ((Context) container). + getServletContext(). + getResource("/" + service.getJaxrpcmappingfile()); + logger.debug(" Changing service ref jaxrpc file for /" + + service.getJaxrpcmappingfile()); + } catch (MalformedURLException e) { + logger.error(sm.getString("naming.wsdlFailed", e)); + } + } + if (jaxrpcURL == null) + service.setJaxrpcmappingfile(null); + else + service.setJaxrpcmappingfile(jaxrpcURL.toString()); + } + // Create a reference to the resource. Reference ref = new ServiceRef (service.getName(), service.getType(), service.getServiceqname(), diff --git a/java/org/apache/naming/factory/webservices/ServiceRefFactory.java b/java/org/apache/naming/factory/webservices/ServiceRefFactory.java index ab839e08a..0a1af79df 100644 --- a/java/org/apache/naming/factory/webservices/ServiceRefFactory.java +++ b/java/org/apache/naming/factory/webservices/ServiceRefFactory.java @@ -209,7 +209,10 @@ public class ServiceRefFactory portComponentRef.put(endpoint, new QName(port.getName())); } } catch (Throwable t) { - // Wsdl File not available + NamingException ex = new NamingException + ("Error while reading Wsdl File"); + ex.initCause(t); + throw ex; } }