You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ode.apache.org by ms...@apache.org on 2006/12/21 20:41:15 UTC

svn commit: r489447 - /incubator/ode/trunk/bpel-store/src/main/java/org/apache/ode/store/DeploymentUnitDir.java

Author: mszefler
Date: Thu Dec 21 11:41:14 2006
New Revision: 489447

URL: http://svn.apache.org/viewvc?view=rev&rev=489447
Log:
Use the DefaultResourceFinder class to load WSDLs/XSDs at runtime.

Modified:
    incubator/ode/trunk/bpel-store/src/main/java/org/apache/ode/store/DeploymentUnitDir.java

Modified: incubator/ode/trunk/bpel-store/src/main/java/org/apache/ode/store/DeploymentUnitDir.java
URL: http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-store/src/main/java/org/apache/ode/store/DeploymentUnitDir.java?view=diff&rev=489447&r1=489446&r2=489447
==============================================================================
--- incubator/ode/trunk/bpel-store/src/main/java/org/apache/ode/store/DeploymentUnitDir.java (original)
+++ incubator/ode/trunk/bpel-store/src/main/java/org/apache/ode/store/DeploymentUnitDir.java Thu Dec 21 11:41:14 2006
@@ -3,6 +3,8 @@
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.ode.bpel.compiler.BpelC;
+import org.apache.ode.bpel.compiler.DefaultResourceFinder;
+import org.apache.ode.bpel.compiler.WSDLLocatorImpl;
 import org.apache.ode.bpel.compiler.wsdl.Definition4BPEL;
 import org.apache.ode.bpel.compiler.wsdl.WSDLFactory4BPEL;
 import org.apache.ode.bpel.compiler.wsdl.WSDLFactoryBPEL20;
@@ -18,6 +20,7 @@
 import javax.wsdl.xml.WSDLReader;
 import javax.xml.namespace.QName;
 import java.io.*;
+import java.net.URI;
 import java.util.*;
 
 /**
@@ -185,13 +188,15 @@
 
             WSDLFactory4BPEL wsdlFactory = (WSDLFactory4BPEL) WSDLFactoryBPEL20.newInstance();
             WSDLReader r = wsdlFactory.newWSDLReader();
-
+            DefaultResourceFinder rf = new DefaultResourceFinder(_duDirectory);
+            URI basedir = _duDirectory.toURI();
             ArrayList<File> wsdls = listFilesRecursively(_duDirectory, DeploymentUnitDir._wsdlFilter);
             for (File file : wsdls) {
+                URI uri = basedir.relativize(file.toURI());
                 try {
-                    _docRegistry.addDefinition((Definition4BPEL) r.readWSDL(file.toURI().toString()));
+                    _docRegistry.addDefinition((Definition4BPEL) r.readWSDL(new WSDLLocatorImpl(rf, uri)));
                 } catch (WSDLException e) {
-                    throw new ContextException("Couldn't read WSDL document " + file.getAbsolutePath(), e);
+                    throw new ContextException("Couldn't read WSDL document at " +  uri, e);
                 }
             }
         }