YOKO-436 fix the tests after requiring use of yoko-rmi-impl since sun orb is too broken

git-svn-id: https://svn.apache.org/repos/asf/geronimo/yoko/trunk@1156403 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/yoko-core/pom.xml b/yoko-core/pom.xml
index ed79292..46e6be9 100644
--- a/yoko-core/pom.xml
+++ b/yoko-core/pom.xml
@@ -42,6 +42,11 @@
         </dependency>
         <dependency>
             <groupId>org.apache.yoko</groupId>
+            <artifactId>yoko-rmi-impl</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.yoko</groupId>
             <artifactId>yoko-osgi</artifactId>
         </dependency>
         <dependency>
@@ -72,6 +77,13 @@
                                     <overWrite>true</overWrite>
                                     <outputDirectory>${project.build.directory}/endorsed</outputDirectory>
                                 </artifactItem>
+                                <artifactItem>
+                                    <groupId>org.apache.yoko</groupId>
+                                    <artifactId>yoko-rmi-spec</artifactId>
+                                    <type>jar</type>
+                                    <overWrite>true</overWrite>
+                                    <outputDirectory>${project.build.directory}/endorsed</outputDirectory>
+                                </artifactItem>
                             </artifactItems>
                         </configuration>
                     </execution>
diff --git a/yoko-core/src/test/java/org/apache/yoko/AbstractOrbTestBase.java b/yoko-core/src/test/java/org/apache/yoko/AbstractOrbTestBase.java
index 6acae42..b0f652d 100644
--- a/yoko-core/src/test/java/org/apache/yoko/AbstractOrbTestBase.java
+++ b/yoko-core/src/test/java/org/apache/yoko/AbstractOrbTestBase.java
@@ -94,7 +94,7 @@
         // and is somewhat non-robust.
         Thread.sleep(1000);
         client.invokeMain(clientClass, clientArgs);
-        serverThread.join();
+        serverThread.join(10000);
         server.exit(0);
                 
     }
diff --git a/yoko-rmi-spec/src/main/java/org/apache/yoko/rmispec/util/UtilLoader.java b/yoko-rmi-spec/src/main/java/org/apache/yoko/rmispec/util/UtilLoader.java
index c7e3945..1bbcb5c 100644
--- a/yoko-rmi-spec/src/main/java/org/apache/yoko/rmispec/util/UtilLoader.java
+++ b/yoko-rmi-spec/src/main/java/org/apache/yoko/rmispec/util/UtilLoader.java
@@ -40,7 +40,10 @@
     static public Class<?> loadServiceClass(String delegateName, String delegateKey) throws ClassNotFoundException {
     	
     	try {
-    		return ProviderLocator.getServiceClass(delegateKey, null, null);
+    		Class<?> cls = ProviderLocator.getServiceClass(delegateKey, null, null);
+            if (cls != null) {
+                return cls;
+            }
     	} catch (ClassNotFoundException e){
     		// skip
     	}